Americans Shocked to Find Their Rights Literally Vanish at U.S. Airports - <AUTHOR> https://www.theamericanconservative.com/articles/americans-rights-are-literally-vanishing-at-the-airport/ <comment><USER2> I fear that within another 10 years it won't just be airports. I wouldn't be surprised to see this type of "security" at train/bus stations, stadiums, movie theaters, churches, etc.

<comment><USER3> My understanding is that the definition of 'border zone' that CBP and others use includes anywhere within 100 miles of the border, which covers roughly two thirds of the US population.[0]

So you mightn't even have to wait 10 years!

[0]: [https://www.aclu.org/other/constitution-100-mile-border- zone](https://www.aclu.org/other/constitution-100-mile-border-zone)

<comment><USER4> And if you include all international airports as "borders" it's even worse.

</comment></comment></comment><comment><USER5> Fascism starts at the borders/ports of entry for a couple of reasons. First, these measures aren't meant to protect you, they are meant to keep you from leaving. See no fly lists, the Soviet Union, Berlin Wall vs Trump's wall.

Second, it's an experiment to test practices that are later implemented on American soil against every citizen. The public is acclimated slowly over time to the point that they will be completely apathetic once the same policies are officially dictated at a national level.

</comment><comment><USER6> Literally

</comment><comment><USER7> Title is misleading; this is taking about border control at airports. Electronic searches way up.

<comment><USER8> How is this misleading?

<comment><USER7> The headline implies it's about the TSA, or about airports.

</comment></comment></comment><comment><USER9> Welcome to Fascism, ladies and gentlemen.

No rights, no respect for due process, nobody to call for help.

"Papers, please" was an invasion back in WWII, and here we are being scrutinized in every modern-conceivable way. Nobody bats an eye?

<comment><USER10> Security/safety trade-off. You read a lot here about rights, intrusion etc but this site doesn't cater for people who are representative of most people. Most people aren't the least bit concerned about the authorities checking their id, scanning their bags etc at the airport.

<comment><USER11> It's not a trade-off because there isn't a shred of proof that it makes things safer. We have a term called "security theater" for a reason, and that reason is this.

<comment><USER10> X-raying belongings and scanning for guns/knives and swabbing luggage for explosives is absolutely not security theatre and provides a non-zero chance of detecting bad actors.

<comment><USER12> I have kept a cheap pocket knife in my backpack for the last three years of traveling and TSA has yet to find it. I don't do anything special, it's just sitting my my bag, and I fly maybe 10-20 times a year, domestic and international. It's definitely theater to a certain extent. Is there a nonzero chance of catching a bad actor? Sure, but it's not much higher than zero. They did find and confiscate a 3/8" driver socket wrench though because it was longer than 6". Thank God they kept that off the plane...

<comment><USER13> Funny to read that, I forgot my folding knife which has a reasonably big blade inside my backpack. Went through the security of 3 different countries, no one found it, was mortified myself to find that huge blade when I arrived.

</comment></comment></comment></comment></comment></comment><comment><USER14> There is a rant/comedy clip where George Carlin explains why nobody has rights.

</comment><comment><USER15> If needing to walk through a scanning device, having all of my items go through x-ray, have a dog sniff my crotch, having someone wipe down my stuff for explosive residue, so I can get on an airplane and reasonably expect to not have someone hijack it with a gun, bomb or box knife to hold me hostage for a year or slam me into a skyscraper, then so be it.

I'll walk through the entire airport naked as the day I was born if it deters even one would-be hijacker or finds one mentally disturbed individual that wishes to do us harm (example Federal Express Flight 705 where an employee facing termination flew jump, entered the cockpit with a guitar case containing hammers and a speargun with the intent to kill the flight crew and suicide with the plane so his family would get the insurance payout, fortunately the flight crew managed to subdue him despite suffering serious injury and safely land the plane).

An airport isn't a place where I expect privacy, or generous freedoms. I'm getting in a manned missile with tens to hundreds of strangers. Flying on an airplane is not a constitutional right, it is a privilege. If I have to show photo ID and go through all the above to be able to get anywhere in the country in hours, I'm wholly fine with that. If you don't like it, you're more than welcome to drive hours or days across the country or get on a boat and spend days and days travelling across the ocean and more days travelling across a continent by car or train to get to your destination without most of the security measures.

<comment><USER16> You can reasonably expect that without any of this nonsense since it is so rare that things like that happen.

<comment><USER15> Last year alone TSA discovered 4,239 firearms, 3,656 of which were loaded.

[https://www.tsa.gov/blog/2019/02/07/tsa-year-review- record-s...](https://www.tsa.gov/blog/2019/02/07/tsa-year-review-record- setting-2018)

<comment><USER17> What's your point? Keep in mind the TSA's own internal testing has found them to be largely ineffective.[1][2]

[1][https://www.forbes.com/sites/michaelgoldstein/2017/11/09/tsa...](https://www.forbes.com/sites/michaelgoldstein/2017/11/09/tsa- misses-70-of-fake-weapons-but-thats-an-improvement/)

[2][https://www.nbcnews.com/news/us-news/investigation- breaches-...](https://www.nbcnews.com/news/us-news/investigation-breaches-us- airports-allowed-weapons-through-n367851)

<comment><USER15> My point? My point is there were 3,656 less loaded firearms in airplanes last year in the United States than there would have been without TSA, and 20-something thousand 'dangerous devices' total kept off the flights.

That's 3,656 less chances of a hijacking, or accidental discharges depressurizing a cabin and causing an emergency landing. Really, the number of chances is likely higher than that considering many of those instances likely came with one or more connecting flights.

<comment><USER18> You can still catch those firearms with a simple metal detector. You don't need device searches or indefinite detention.</comment></comment></comment></comment></comment></comment>


Some Tips On How To Be Less Quiet In Conversations - <AUTHOR> http://www.succeedsocially.com/quiet <comment><USER2> Learning rules and remembering them is difficult.

If I prefer to keep quiet, it might be better simply to socialise less. Then I'll have more to say on the occasions when I do socialise.

I don't know why it's important to succeed socially. Wouldn't that mean turning into a celebrity? Their lives suck from what I can tell.</comment>


Reform ECPA: Tell the (US) Government to Get a Warrant - <AUTHOR> https://petitions.whitehouse.gov/petition/reform-ecpa-tell-government-get-warrant/nq258dxk?1

<comment><AUTHOR> Reposting because time is almost up and very close to 100k.</comment>


Ask:HN  a strong argument for privacy - <AUTHOR> I often have conversations where I have to defend reasons why I find privacy important.  Eventually many of those conversations got to a point where someone pointed out "I have nothing to hide"  which has been frustrating.  I have heard a lot of people point towards a quote by edward snowden [0] ""Arguing that you don't care about the right to privacy because you have nothing to hide is no different than saying you don't care about free speech because you have nothing to say,".
I think a stronger argument is needed that also provides security... the inherent tradeoff.  I am also concerned if the argument is not strong enough, privacy's and freedoms will continue to be infringed on.
with that said, I am looking for others experiences in this realm and open debate on fine-tuning a strong argument.
[0] https://mic.com/articles/119602/in-one-quote-edward-snowden-summed-up-why-our-privacy-is-worth-fighting-for [ads - sorry!] <comment><USER2> Do they have drapes in their windows and doors on their bathrooms? Do they mind if you film them the next time they use the toilet or take a shower? How about the next time they make love to their partner? No? Why not?

A lot of people seem to equate "privacy" with "hiding illegal/immoral stuff"... the biggest part of privacy is simply about decency and dignity and not having to share stuff you'd rather not. Personal hygiene and intimacy are two domains where even if "we have nothing to hide", we generally prefer not to share.

</comment><comment><USER3> In a nutshell, lack of privacy undermines the democratic process and the rule of law. Suppose someone wants to put a toxic waste dump in your neighborhood. You go around collecting signatures for a petition against it, but nobody will sign it. It seems they've all been informed that a friend or relative will lose his job if his prior drug conviction is disclosed, or will get sued into oblivion for having downloaded some copyright infringing material, unless of course the neighbor in question withdraws his opposition. You gather a few signatures nevertheless from people like you who have nothing to hide, but none of the politicians will touch it for similar reasons. In the end, policies get made for reasons unrelated to their legality or public interest at the behest of whoever controls the most personal information.

Further examples are left as an exercise. Suppose the police want to conduct an investigation in a way that's technically illegal but they have an asset in the field who would be damaged by the disclosure of certain information. Suppose an ex-convict who has paid his debt to society according to the rule of law has his current whereabouts and the nature of his crime available as a matter of public record.

</comment><comment><USER4> Give me your porn history and I'll post on your Facebook wall. What do you mean you don't want to because it's private ? See, you have something to hide !</comment>


Microsoft PM Explains Why Chromium Edge Can't Run Google Earth (PNaCl) - <AUTHOR> https://www.bleepingcomputer.com/news/microsoft/microsoft-pm-explains-why-chromium-edge-can-t-run-google-earth/ <comment><USER2> Is it not similar to how YouTube killed IE6 and Chrome is killing Mozilla Firefox?</comment>


A short introduction to the x86 instruction set encoding - <AUTHOR> http://penberg.blogspot.com/2010/04/short-introduction-to-x86-instruction.html

<comment><USER2> Great article. I've "known" x86 asm since I was a teenager, but waded into the actual encoding just a couple years back, fearing the worst based on reputation. It's not that hard at all. Understanding how register and memory addressing works takes you a long way towards understanding the whole encoding model.

Here's a Ruby library I wrote 3 years ago, which we used to bootstrap a cross- platform debugger for reversing work:

[http://github.com/tduehr/ragweed/blob/master/lib/ragweed/ras...](http://github.com/tduehr/ragweed/blob/master/lib/ragweed/rasm/isa.rb)

I think Zed Shaw pointed this out last year, and I second it: pulling assembly into a scripting language is (a) not very hard and (b) incredibly powerful.

</comment><comment><USER3> " _What's interesting about this format is that it's identical all the way from 8086 to x86-64 with the exception of SIB byte and REX prefix.... Intel, AMD, and other vendors have added more instructions but the above encoding has survived over the years. Pretty neat, huh?_ "

Indeed.

</comment><comment><USER4> It took me a few days of reading the x86 (586) instruction set guide, to make a Lisp function called 'get-opcode-byte-count' which, given a few bytes (eg, 20 bytes), calculates the MOD/RM stuff, to give the number of bytes in the next opcode. It's part of the pre-processing of my decompiler - finding all the code and branching into branches, subroutines, etc, is crucial when decompiling an x86 binary (but it doesn't do this as well as IDA, the disassembler, which uses tons of tricks to find code).

</comment><comment><USER5> A few years ago I had just a passing familiarity with assembler. Nowadays I write C++ that integrates with a closed source application, deals with its data structures, classes, and function calls, and adds functionality, as a hobby. Too bad I can't find a job doing something like that...

</comment><comment><USER6> I really think the same could be said for any architecture. Imagine a 65864 :-).</comment>


Rare Spanish Shipwreck from 17th Century Uncovered Off Panama - <AUTHOR> http://news.nationalgeographic.com/2015/05/150512-shipwreck-panama-spain-merchant-ship-encarnacion-ocean-archaeology <comment><USER2> The underwater search for MH370 has just found a shipwreck, too:

[http://www.abc.net.au/news/2015-05-13/search-for-missing- mh3...](http://www.abc.net.au/news/2015-05-13/search-for-missing-mh370-plane- discovers-shipwreck/6467624)

(but this one is in 4000m of water, not 32ft!)

<comment><USER3> I had no idea that sonar could give images that sharp. I wonder at what distance the images are taken from. I mean, you could certainly make a sonar with a huge virtual aperture, so maybe you could do this from near the surface?

<comment><USER4> I think the images are from the camera they sent down after detecting a debris field with the sonar.</comment></comment></comment>


Assembly Is Too High Level: SIB Doubles - <AUTHOR> http://xlogicx.net/?p=456 <comment><USER2> The cool thing about the address calculation is that there is a LEA instruction (load effective address), which gives you the resulting address. I.e. instead of actually loading the value from the calculated address in memory, it gives you the address itself without accessing memory. This allows you to do "complex" calculations in just one instruction. This doesn't really help performance-wise in modern CPUs, but it used to in the old 386 days.

<comment><USER3> Yes, a lot of these let's call them `assembler hacks' were true at one time in the x86 32 bit era but are probably not true now. Also, the x86 processor market is quite big now from Pentiums and Core Ms and Core Is and AMD and god knows who else. There used to be assembler books that could teach you all this in the 32 bit era, do these exist for the 64 bit era. It's been a while since I did any low-level bit twiddling.

<comment><USER4> Agner Fog's PDFs are the closest thing I know of

</comment></comment></comment><comment><USER5> I would say you cannot deduce much from that micro-benchmark. On x86, loops depend on the alignment of the labels and branch instructions due to the branch prediction logic. You can actually make some loops faster by inserting nops inside the loop.

Since the result of the xor is never read and immediately overwritten by the following mov, I wonder if clever register renaming could actually detect that and discard the instruction.

<comment><USER6> Yes, I'm also suspicious about his claims of "this is faster than that." He doesn't demonstrate that the actually know how something like this should be correctly measured.

</comment></comment><comment><USER7> My first thought was: is this a caching / instruction-fetch artifact? The two instruction sequences generate blocks of 8 bytes (for the eax+eax version) vs 11 bytes (for the 2*eax +0 version).

<comment><USER8> That's just about the only possibility, I think -- both forms should generate the same sequence of uops.

</comment></comment><comment><USER3> Could someone inform an old fogey if "super ignorant" (down at the end of the article) means that something is actually very good?

Oh, and cool article btw. I think I have a hazy recollection from a long long time ago Microsoft assembler would do the same -- as in pick the smallest machine opcode in the case of multiple assembler possibilities.

<comment><USER9> A lot of assemblers did that. Which is why in self-modifying code you inserted an instruction to load a large integer constant (e.g. 0xDEADBEEF) that the assembler could not optimize into a smaller instruction. Then at runtime you would replace that integer constant with whatever value, without the risk of overwriting part of the next instruction.

Those were the days...

<comment><USER10> Indeed. The bubbles virus really confused me the first time I stepped through a self modifying section using dos's debug program.

</comment></comment></comment><comment><USER11> This guy needs an ontology.</comment>


iPhone 6S Teardown - <AUTHOR> https://www.ifixit.com/Teardown/iPhone+6s+Teardown/48170 <comment><USER2> I honestly expected the battery to be bigger. What are the other components, and how can we minimize/obviate those so batteries can use more space?</comment>


CUDA and CuBLAS GPU Matrices in Clojure - <AUTHOR> http://dragan.rocks/articles/17/CUDA-and-cuBLAS-GPU-matrices-in-Clojure <comment><USER2> Source code: [https://github.com/uncomplicate/neanderthal](https://github.com/uncomplicate/neanderthal)

<comment><USER3> Sadly, last I checked, it only had bindings for Linux which was probably the right thing to do but made it hard to try on my Mac workstation. Looks really cool though, like part of Clojure's answer to Julia, which is also pretty cool.

<comment><USER2> It has bindings for OSX, Windows, and Linux. Works fine on my Mac.

</comment></comment></comment><comment><USER4> When Neanderthal was first announced, I was very much in the "why isn't it core.matrix compatible?" camp (nobody wants fragmentation, and conoatibility is a good thing!), but after watching Dragan's talk at last years EuroClojure, I changed my mind because I love what non-compatibility made possible. I've yet to actually use Neanderthal (I just don't currently have those workloads, but I do have some projects in mind), but I love what I see and it seems to be getting better and better. Thanks Dragan!

</comment><comment><USER5> Someone in this thread might have the answer:

What is currently the best bang-for-buck CUDA card in mid-2017? 1080 Ti?

I need an upgrade for Premiere, which has become increasingly demanding on my GTX 960 in the last few CC updates.

</comment><comment><USER6> Several years ago I took CUDA course on Udacity and I thought how interesting it would be to write the same exercises in Lisp. Now this is possible, great!</comment>


Ask HN: Money or Quality of Life? - <AUTHOR> I am a Backend Developer (Java/Spring ecosystem) working as a Tech Lead in Bangalore, India with 14+ years of experience. I have a salary of around 6M INR before tax (~76K EURO) which is in the higher bracket considering salaries in Bangalore.
I have an offer in a startup in Berlin, Germany as a Sr. Developer. The salary is 76K EURO + 5K EURO joining bonus, before tax which is above average considering salaries in Berlin. The company is ready to take care of relocation and visa.
I have a wife and 2 yr old daughter.
As you can see, if I move to Germany I will have to take a huge cut on my monthly savings. I am not a rich person however I am debt free with strong savings - so I can take this hit for a couple of years if not more. The key motivation for moving out of India is to get PR, settle in better city/country in Europe, get international experience, a better quality of life, good education and future opportunities for my daughter, good health care.
Is it worth it? How can I make it worth? I am doing something wrong or missing some other options? <comment><USER2> What's the opionion of your wife? Will she be happy there? Do you have family members or friends already living there?

Otherwise: prepare for some difficult months after arrival until you have built up network of friends. However finding new friends should be doable as you have a little daughter. Going to the Kindergarten or public play grounds is a good opportunity to meet new people and to find new friends.

Be prepared for: a) bad weather in the winter months. b) high taxes + health insurance + social security payments. c) (maybe) the requirement to downsize your life style. You can have a decent life on 75k. However ~10% of all Germans will earn more money than you.

Edit: You want to enhance the quality of life by moving to another location. May I ask what's your personal preferences regarding quality of life? What limits the quality of life in Bangalore?

<comment><AUTHOR> Thank you for the reply frnkng. By quality of life I mean:

1\. Better education and future for my daughter. Lesser gender discriminaition.

2\. Better infrastructure and government facilities for the tax paid (30% in Bangalore)

3\. Free and good health care

4\. Better career growth and opportunities in terms of moving to freelancing/consulting, attending conferences/meetups, working with international and bright minds

5\. Less pollution

6\. Less crime and relatively less corruption

</comment></comment><comment><USER3> It is very hard to compare Berlin with Bangalore, the climate, culture, vibe, etc are very different. I have been to both cities many years ago, they are polar opposites in so many ways.

I have family who have studied and worked in Berlin. Their biggest stumbling block was learning German well enough for everyday life. Granted that in tech circles English is widely spoken, but you need good German fluency to handle everyday interactions and the bureaucracy. The laws are very strict, especially with regards to traffic.

Knowing English allows you to pick up rudimentary German quickly, but it progressively becomes very difficult. I have studied German to matriculation level and still find it difficult to carry on fluid conversations with native speakers. Reading documents takes a long time, especially unpacking the compound words.

Often people make friends among expats of their ethnicity which in turn hampers the longer term integration into German community / society. Your wife might have more difficulty in this area as she would not have a network of contacts built from work colleagues.

Echoing @frnkng, you might find the purported quality of life hampered by the limited disposable income.</comment>


Gemnasium: Ruby gem notifications, now free - <AUTHOR> https://gemnasium.com/changes

<comment><USER2> Seems interesting. But gemfresh[1] is a good enough gem for me at the moment.

[1] <https://github.com/jonathannen/gemfresh>

<comment><USER3> A big advantage of Gemnasium is its push nature, rather than pull. You could use bundlers outdated command as well, but when you have multiple projects keeping up with that becomes burdensome.

Check out <https://gemnasium.com/questions> for some more details.

<comment><USER2> Don't get me wrong. It seems wonderful for those who have many projects. If you start supporting things other than gems (sbt for scala, maven for java, lein for clojure, etc), it can be a valualbe tool for many enterprises. Specially if you highlight which updates have security updates.

Nevertheless, at the moment, gemfresh is enough for my personal projects.</comment></comment></comment>


Show HN: Colors Used by Popular Sites - <AUTHOR> http://paulhebertdesigns.com/web_colors/ <comment><USER3> I think the idea is extremely interesting but after seeing 2 of the caveats at the end, I didn't have nearly as much confidence in the data.

"3\. If a color is found inside of a website's text it counts as being used. For example if the phrase "tan leather" is in a website's text, this scraper would say that the site uses tan. Additionally if the phrase "I understand" is in the text, it would still count as tan.

4\. Colors added by external javascript are not included."

<comment><AUTHOR> Hey thekevan,

Thanks for the feedback. I agree that these are pretty major caveats. Hopefully you still found it interesting or useful.

This is my first public release of this visualization and I plan to keep improving it over time. If it were a traditional software project I would probably categorize it as 'beta.'

I've been spending a lot of time working on this in my free time and was curious whether it was something people would even be interested in.

Seeing the positive feedback on HN and other sites has inspired me to put a larger focus on solving these problems as well as adding new features. (Analytics are showing about 1500 people have viewed it since I began sharing it a couple hours ago. Thanks everyone!)

EDIT: up to around 4,500 hits as of 12:50 PST

<comment><USER4> A different approach, if you wanted to do something more accurate (this is also a reasonable choice in my opinion, given that you have a fixed number of sites you're looking at) would be to use a headless browser like PhantomJS and traverse the rendered DOM checking the computed style with `window.getComputedStyle(el)`.

<comment><AUTHOR> That's a good idea. That would be a much more accurate way to see which colors were actually _used_. A few other people in the comments also mentioned Selenium. I'll have to do some research.

Stayed tuned for version 2.0!

</comment></comment></comment></comment><comment><USER5> Paul, I made something similar - [http://bardagjy.com/?p=1639](http://bardagjy.com/?p=1639)

I had the same problem with Javascript so I used I used Selenium to drive Chrome to take a screencap of the page. Then I used K-Means clustering with EM to convert the pages to their constituent colors.

I scraped 100 and 1000 of the Alexa top 1M. Cool to see another approach, great work!

<comment><USER5> Replying to myself a quote from my article

"It's easy to notice a bug when examining the colors for Google (note, this is normal google.com not a doodle). Notice how the three colors are light gray, dark gray, and white – not the typical red, green, blue, yellow color scheme. Why? Well, when the image screenshot is resized to 320 x 240 pixels for processing, the colors are dithered. The number of pixels in the new image that lie _between_ red, green, blue, yellow and white – the dominant background color – is much larger than the number of pixels that are colored. Because of dithering, those between pixels are closer to shades of gray, than colors, and thus the k-means clustering (with EM) finds shades of gray and white to be the "color of Google". I'm not sure if this is a bug.. what do you think?"

<comment><AUTHOR> Hey Andy,

That's awesome! I figured someone else must have had the same idea before me. :)

I think your screenshot scraping technique is probably more accurate than my text parsing. I also like that you used a larger sample size. I plan to experiment with groups of 100 and 1000.

Thanks for sharing! It's always interesting to see how different people achieve similar goals.

I'd like to begin scraping the images on the sites soon too. When I've got a good chunk of time I'll look through your source code for inspiration. Mind if I reach out with questions when I do?

EDIT: I also really enjoy those woodblock prints! Now I want to somehow print my data for the top ten sites onto canvas.

<comment><USER5> Sure - I think the git repo is dead, I'll resurrect it if you're interested.

<comment><AUTHOR> Yeah, that would be great. Thanks!

</comment></comment></comment></comment></comment><comment><AUTHOR> Hey Hacker News,

Hopefully this is the right place for this.

I made an interactive visualization showing the colors used by the ten most popular sites. The page also explains different color models and how to convert between them using math and javascript.

In the future I plan to use the tools I built here to do more interesting comparisons of color trends over time and between different cultures.

Any feedback is welcome. Thanks for looking!

EDIT: Here's the github link by the way: [https://github.com/Paul- Hebert/web_colors](https://github.com/Paul-Hebert/web_colors)

</comment><comment><USER6> I had a similar idea recently, originally I intended to try and identify "fashionable" color palettes, which worked pretty well: [https://idle.nprescott.com/2016/scraping-color- palettes.html](https://idle.nprescott.com/2016/scraping-color-palettes.html)

and only later tried branching out to the 100 most popular sites: [https://idle.nprescott.com/2016/image-capture- crawler.html](https://idle.nprescott.com/2016/image-capture-crawler.html)

I tried ImageMagick's histogram functionality and a K-Means but wasn't happy with the results. I didn't finish doing a meaningful color extraction from the most popular sites because of difficulty getting (in my mind) representative samples from more complex images (like the linked GitHub homepage screenshot). I still intend on circling back at some point and trying a color quantization.

I hadn't thought to scrape the CSS colors directly, that's an interesting approach. I'd like to see the colors sorted in some way, to get a better sense of the range for each site.

<comment><AUTHOR> Hey Nolan,

Those are really cool. I think your palettes are a more useful representation than my 'data dump' strategy.

Another commenter used Selenium to get screenshots. I'll have to look into that as I update this.

Thanks for sharing!

</comment></comment><comment><USER7> I think the pictures would be prettier if similar colours were together. Even straight Euclidean in RGB and then sorting will probably be good enough for this purpose, though you could probably get something fancy by using an actual colour difference metric.

The Google logo is missing, though. The green, certainly.

<comment><AUTHOR> Hey arjie,

Further down there are a few visualizations where colors are sorted by hue and saturation.

I'm debating whether or not to sort the initial visualizations in the same way.

Unfortunately my script doesn't currently pull colors from images, only CSS color codes. A couple people have been confused by this so I'll add more info about that at the top.

Thanks for the feedback!

</comment></comment><comment><USER8> * Spectrum - Chrome Web Store || [https://chrome.google.com/webstore/detail/spectrum/ofclemegk...](https://chrome.google.com/webstore/detail/spectrum/ofclemegkcmilinpcimpjkfhjfgmhieb)

> Instantly test your web page with different types of color vision > deficiency. Color Vision Deficiency (CVD) affects people's ability to > distinguish certain colors. Estimates indicate that approximately 200 > million people worldwide are affected by some kind of CVD. Individuals of > Northern European ancestry, as many as 8 percent of men and 0.5 percent of > women experience the common form of red-green color blindness.

> This extension helps you to test web pages for people with different types > of CVD. It's particularly useful for websites with data visualisations, > because some colors may not be distinguishable from other colors in the > charts.

> Flash enabled websites are also supported!

<comment><AUTHOR> This is really interesting thanks!

It's interesting to see how the visualizations would render to the colorblind.

I also had no idea that 8% of Northern European men had red-green colorblindness. I assumed it was a lot lower than that.

Thanks for sharing! I'll definitely be incorporating this extension into my design process in the future.

</comment></comment><comment><USER9> This reminds me of the article 'Why Every Movie Looks Sort of Orange and Blue' [1]. Even though the reasons behind movies and websites looking similar are different, it's interesting that both are heavy on blue and reddish-orange.

[1] [https://priceonomics.com/why-every-movie-looks-sort-of- orang...](https://priceonomics.com/why-every-movie-looks-sort-of-orange-and- blue/)

<comment><AUTHOR> Thanks for sharing! That was really interesting.

It kind of makes sense, at least for movies. Complementary color schemes with contrasting colors connect with humans on an intrinsic level. Since the sky is already blue and humans are slightly orange. (at least caucasians, who tend to be over-represented in Hollywood)

If blue and orange are already present in most scenes I understand the impulse to up that contrast.

</comment></comment><comment><USER10> Site doesn't work for me. There's a blank rectangle below the "Sites" title and to the right of the site URLs.

Mousing over that area raises some white tool tips/pop-ups displaying color names/codes.

I found this an ironic coincidence with another recent post on HN:

"Ask HN: Is web programming a series of hacks on hacks?"

[https://news.ycombinator.com/item?id=12477190](https://news.ycombinator.com/item?id=12477190)

<comment><AUTHOR> Hey Elrac,

Sorry to hear that. If you try reloading the page are you still having that issue?

Mind letting me know what browser/OS you're using?

Do you have javascript deactivated or any browser extensions running?

I read that article as well and enjoyed it.

In the future I'd like to move more of the visualization code server-side and rely on the end user's browser less.

<comment><USER10> Hi Paul,

Sorry 'bout the late answer; I don't get emails on responses.

My browser is Firefox 45.3.0 running on Windows 7. I use Privacy Badger - <USER2> blocks sites that do too much cookie tracing but it didn't object to your page.

What may be more significant is that I browse through a corporate firewall - it sometimes fails to connect to the same host I connected through earlier, and sites which rely on consistent conversations sometimes fall victim to this.

All that said, frustratingly, today I see colorful splotches. Whatever the problem was, it seems to have gone away.

I think that your idea to do more server-side rendering is praiseworthy. I'm very tired of the many Web sites whose authors seem to think they own my CPU.

</comment></comment></comment><comment><USER11> Looks like Internet is mostly blue.

<comment><AUTHOR> Yeah, it's interesting to see the color groupings that take place.

Next I want to do cultural comparisons. E.G. the ten most popular sites in China vs. the ten most popular in the U.S.A.

It would be interesting to see if it would still be all blue.

</comment></comment><comment><USER12> Not sure if I'm missing something, but the main Google logo colors aren't reflected in the Google section. Is this just HTML color codes rather than images. I guess the challenge in an image is that most aren't solid blocked text.

<comment><AUTHOR> Hey thanks for checking this out!

Right now my scraping script only pulls the HTML color codes and doesn't attempt to pull colors from images. Additionally, a color code could be present in the stylesheet but not actually used on the site.

I have some information about this and other caveats at the bottom, but I'll put an explanation closer to the top to avoid confusion.

Thanks!

</comment></comment><comment><USER13> Kind of off topic, but didn't anyone notice that FastMail pretty much copied Facebook's colors. I too remember using Facebook's colors when I first started learning how to do HTML, but didn't go forward with it.

</comment><comment><USER14> I would like to see the colors sorted by hue

<comment><AUTHOR> Hey eekfuh,

If you scroll down a little further you'll see there are a few sections where they're organized by hue; once in a bar chart and once around a circle.

Let me know if you still can't find it and I'll try to explain more thoroughly or send you a screenshot.

Someone else mentioned they'd like to see the colors sorted by hue in the area where they're broken out by site. Maybe I'll update that section to be less random.

</comment></comment><comment><USER15> But how does Alexa determine the most popular sites to begin with? I've never asked myself that.</comment>


Using HAProxy as an API Gateway, Part 1 - <AUTHOR> https://www.haproxy.com/blog/using-haproxy-as-an-api-gateway-part-1/ <comment><USER3> This is a great article and I love HAproxy. Even so much that I wrote a REST- like wrapper for it a couple of years ago to turn HAproxy into an API gateway. It touched many of the points in the article. Maybe useful for people in the field [https://github.com/magneticio/vamp- router](https://github.com/magneticio/vamp-router)

<comment><USER4> Am I wrong, or is there still nothing that handles security in the API Gateway?

For example, suppose you want to do OAuth in the gateway instead of building it into every API. I couldn't see anything to handle a use case like that. The best I see is that it can probably handle one-way SSL, but I'm not clear on how it would handle mutual authentication or verification of client certs (pinning, CRLs, or OCSP).

It's a lot of work to build that into APIs separately and a lot of people who use API Gateways prefer to have the gateway itself handle security.

<comment><USER5> Kong does handle security in that layer: [https://docs.konghq.com/0.14.x/auth/](https://docs.konghq.com/0.14.x/auth/)

<comment><USER6> im not sure Kong supports mtls or cert pinning. [https://github.com/Kong/kong/issues/2048](https://github.com/Kong/kong/issues/2048)

i dont think it's able to hash your secret tokens either - rather stores them in plaintext. [https://github.com/Kong/kong/issues/1237](https://github.com/Kong/kong/issues/1237)

this kind of rules Kong out for any serious applications AFAIK - <USER2> considering that an API Gateway is supposed to be a security product.

istio, tyk, traefik support that out of box.

<comment><USER7> Marco, CTO of Kong here. Static mTLS has been supported since 3 years almost, while dynamic mTLS is being supported with Kong 1.0 (required for Service Mesh). Kong itself has been used in highly regulated industries, including financial, healthcare and governmental (including military branches) institutions.

When it comes to enforcing strong security OpenID Connect or JWT authentications are almost always better options. Since Kong is built on top of NGINX, anything NGINX supports by extension Kong also supports + Kong Plugins.

<comment><USER8> > Kong itself has been used in highly regulated industries,

Was it used in any application that actually was covered by any regulation enforcing authentication and authorization to the point that kong could directly determine if an implementation does or does not comply with the regulation?

Or was it simply used in highly regulated industries like car stickers are used in the highly regulated auto industry?

<comment><USER7> > Was it used in any application that actually was covered by any regulation > enforcing authentication and authorization to the point that kong could > directly determine if an implementation does or does not comply with the > regulation?

Yes. Kong Enterprise running on the execution path of in-flight information across distributed and open systems must be audited in the context of enforced regulations, especially banking and healthcare. We do work regularly with our customers to make sure Kong is compliant within their specific use-case and make those audits successful.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Just how pluggable is HAProxy, or is there anything else out there which allows higher async control over the routing?

My need is some rather customized request routing, currently done by Python (fast enough to do thousands of RPS in just Python with PyPy) but it'd nice to use a standard product.

For every incoming request, I want to decide where it gets routed on a per- request basis to but not necessarily immediately (so some callback / event based / out of process interface is needed) and I want to be notified when the request finishes or fails.

Basically the request for /foo/bar may need to spawn a new foo-bar management process which can take a while to warm up, and appear at some unknown future destination.

I had a look at e.g. Traefik, Kong, Envoy but they didn't seem like quite the right fit.

Using e.g. Proxygen seems like overkill.

<comment><USER10> You can use the `auth_request` module in NGINX to create a subrequest to an HTTP service that does authentication and/or dynamic routing.

The subrequest can return response headers that are available in `$upstream_http_*` variables, which can br used to dynamically route the original request.

[http://nginx.org/en/docs/http/ngx_http_auth_request_module.h...](http://nginx.org/en/docs/http/ngx_http_auth_request_module.html)

<comment><USER9> Thanks, nginx looks promising, either through this lighter weight integration, or by writing something similar with LUA and OpenResty/Kong.

</comment></comment></comment><comment><USER11> Hi,

I did write this blog post. Feel free to ask if you have any questions.

<comment><USER12> An honest question: why HAProxy should be prefered over EnvoyProxy[1] for building API Gateways?

[1] [https://www.envoyproxy.io/](https://www.envoyproxy.io/)

<comment><USER13> Not the OP, but a young greybeard with opinions :)

I've set up a couple of API Gateways. One was a hand-rolled Go server; this could have probably been done using an existing off-the-shelf server, but there were some odd-ball requirements and it was pretty straightforward to just build the functionality. It did service discovery through Consul, applied some routing rules and the "special" logic, and that was about it.

Every other time I've just use nginx. Why? Most of the API Gateway projects out in the wild are bloody complicated! I just looked at the docs for EnvoyProxy and the "Architecture Overview" pane is taller than my 1080p monitor! Yes, at massive scale with thousands of services, something like this is probably the right solution. When you've got a handful of services, an automated rolling deploy across a small cluster of nginx servers is A-OK.

I've looked at a bunch of different packages, and every time my conclusion is that they introduce a massive amount of complexity that could be beneficial in the large, but will likely require a dedicated team to understand all of the intricacies of the whole system. KISS.

<comment><USER14> Envoy Proxy is pretty complex. It is really designed for machine configuration. This is one reason projects like Ambassador API Gateway ([https://www.getambassador.io](https://www.getambassador.io)) exist -- it translates decentralized declarative Kube config into Envoy configuration (non-trivial exercise).

That said, Envoy has some great features such as distributed tracing, a robust runtime API for dynamic configuration, gRPC load balancing, etc.

Disclosure: I work on Ambassador.

<comment><USER11> All of this is on it's way. depending on what you mean by distributed tracing, it may already be doable

</comment></comment></comment></comment></comment><comment><USER15> Can the open source version of HAProxy also be used to achieve what is described in this tutorial?

<comment><USER16> Yes, I use all of those features and more. The built in stats are not as pretty as those shown and you don't get graphs but you can obviously do your own (and I do - the logs are very good)

<comment><USER11> I could not have answered in a better way.

Just adding we love and do open source.

</comment></comment></comment><comment><USER17> I found it easier to create a centralized graphql server that stitches together all of my rest services with resolvers. I define all of the types, resolvers, and mutations for each of the services in the central graphql gateway and it clients don't need to know where they get data from. Why wouldn't you just use this approach?

<comment><USER18> The biggest problem with GraphQL in this regard is that it is a single endpoint. API gateways often define authorization rules, throttling rates, and caching times differently for each route. Consequently, you may need to write authorization, throttling, and caching logic in a separate layer or perhaps even in your microservices themselves.

</comment></comment><comment><USER19> Piggybacking on this thread, what would currently be the most secure frontend proxy? Preferably something that is implemented in a memory-safe language, and has some credibile story about focus on security and being battle tested.

<comment><USER20> [Caveat emptor: I'm the CEO of Tyk] Tyk is an open source API gateway written in Go, it's been battle tested in production PCI compliant environments and offers a large selection of security features.

It's also customisable in other languages other than Lua (Python, JS, and anything gRPC) ;-)

<comment><USER21> How does Tyk compare with Kong and other "API gateway" implementations?

<comment><USER20> Tyk and Kong are similar in terms of what they do, though with a Tyk we bake a lot of key functionality into the core instead of asking the community to build them for us.

We also don't have the concept of proprietary plugins, so where Kong is "Open Core" (for example if you want to use openID connect you need to buy enterprise, with us it's just par for the course), we bake everything gateway- related into the open source version and don't hide the ball. Our "value add" is in our dashboard GUI (proprietary) and multi-cloud/multi-DC server (also proprietary).

Also, in Tyk you can model your api routing as a file, with Kong you need to specify all routes as API calls to the gateway, so backing up/version controlling your APIs is difficult without using a community-provided solution. (Though don't get me wrong, both Tyk Gateway and Dashboard are entirely API driven, so you can do everything programmatically or declaratively).

Lastly - we have a compatability promise of "no breaking changes within major versions". It's harder to do, but makes our users happy :-)

Ah, and in terms of extensibility, we provide middleware and event hooks that can be hooked into with any gRPC compatible language and offer native binary (FFI) Support in Python and Lua, we also have a baked in ECMAScript interpreter which is fast (it's written in Go), but being an interpreter doesn't have the expressiveness of some of the other extension options)

In terms of other implementations, in open source there's not many thst have quite the breadth of functionality we offer.

To be fair though, the other solutions out there (especially coming out of the Go/K8s/CNCF communities are very impressive.

</comment></comment></comment></comment><comment><USER22> Anyone have any idea how using HAProxy compares to say Kong?

<comment><USER23> I had to muck around a lot more to get HAProxy (2-3 days) do what I could do with Kong out of the box (1-2 hours) and Kong was easier to scale for me (simple terraform scripts).

</comment></comment><comment><USER21> Has HAProxy cleaned up their dynamic reload issues? I am a pretty big fan having used HAProxy in production, but compared to the relative simplicity of "nginx -s reload" the restart complexity of HAProxy always gives me pause.

<comment><USER24> Hello, HAProxy 1.8 brought hitless reloads and has solved all of these issues. You can find information on this here [1][2]

[1] [https://www.haproxy.com/blog/truly-seamless-reloads-with- hap...](https://www.haproxy.com/blog/truly-seamless-reloads-with-haproxy-no- more-hacks/)

[2] [https://www.haproxy.com/blog/hitless-reloads-with-haproxy- ho...](https://www.haproxy.com/blog/hitless-reloads-with-haproxy-howto/)

<comment><USER21> This is an improvement but it still seems like HAProxy is offloading a small (but annoying) amount of responsibility to users when handling restart requests. You still have to track the existing process' PID and give it to the new process, give the new process the same "-x [socket_file]" argument, and make sure the new process comes up before making any subsequent changes to the HAProxy config file.

Does HAProxy have any plans to wrap this process juggling to make things as stupidly easy as nginx's reload behavior?

<comment><USER24> The current method integrates with both init scripts and systemd. You shouldn't need to manually pass any of that information. Also, the -x option is not required if you are running HAProxy in master/worker mode in which case sending a SIGUSR2 to the master process would be sufficient. With that said, we do have further improvements planned for an upcoming release. Stay tuned :)

</comment></comment></comment></comment><comment><USER25> Why not just use Kong</comment>


Ask HN: How do you collect delinquent payment for contract work? - <AUTHOR>

I'm wondering if any of you have any experience pursuing legal action (small claims court? higher courts?) against clients that haven't paid for work. What is your strategy? What did you learn? <comment><USER4> No advice here, but an interesting story.

A friend of mine was owed about $10K on a contract. He had been working for the company for a couple of months and they had already paid him $15,000 more or less on time, so when a month finished and he was owed another 5K and it didn't come right away he didn't really sweat it.

Things went down hill in the middle of the next month when the employer said that they were retroactively reducing his rate because they really thought that they weren't paying him hourly, but rather a full time salary (though his contract specified an hourly rate) and they expected him to be working at least 50 hours a week for that salary.

He promptly quit, though the employer begged him to stay on for one more week as a "professional courtesy". Being the kind of guy that he is he stayed for the following week. The day after he quit the company (really just two people and a couple of other contract developers) got TechCrunched (they have been multiple times since) to announce a rather large round of funding they had received. I remember him joking that night that at least he was sure he would get paid now.

Fast-forward a three months and a check has still not arrived despite his boss saying that it had been mailed several times. Then it changed to "I'm putting it in the mail on Monday." Eventually he sent a polite email saying how he was really hoping to get the check soon because he was planning on using that money to support his family new family (his wife was 9 months pregnant at the time). A check finally came but only for 9K instead of 10K. I think he was just incredibly happy to have finally gotten something after all those months.

It turned out that other developers/designers were in the same boat as my friend and never got paid, or were only paid part of what they were owed. This all happened at the same time that the company was getting press and raising more money.

I remember just being shocked whenever I would see this company written up in tech blogs while thinking "But, these are the same people who are totally screwing my friend and at least three other people they hired. How can they actually be getting positive press, they're total scumbags."

<comment><USER5> Why don't the people telling these horror stories ever reveal the company names? Keeping silent only allows these scumbags to swindle more people.

<comment><USER4> I really don't feel like it is my place to mention the name. I wasn't involved. I know one of the other developers who didn't get paid took it to the investors (he happened to be friends with one of the better known ones). What the outcome was I do not know.

<comment><USER6> So don't tell the story in the first place IMO. Go all and prevent these guys from doing wrong by the next developer and all the community to decide on a COA re: company's actions or...don't. We all know that we can get screwed for doing business.

</comment></comment></comment></comment><comment><USER7> I used to do a lot of contract work and you need to have a good no nonsense contract. I always had a payment schedule in the contracts: 50% upfront and 50% payable immediately on delivery with milestones so they can check the progress of the work. Of course, when building Web sites or Web apps, it's easy to do. Sometimes, for larger contracts, we would have a 50%, 25%, 25% schedule. Of course, you either put the site/app in production with the last payment or advise it will be put offline if you don't receive it.

It just works. Worse that happened was a bad client who changed his mind at the last minute and we lost about 25% of paid work. If you profitability margin is within standards, you take your losses (which are almost none) home when you see they'll never pay unless you go to court (which they probably won't pay anyway because they're crooks in the first place). Not worth the stress or waste of time and money.

<comment><USER8> Hm, I thought the general advice was to bill by hour, not by project. Is this wrong?

<comment><USER9> Depends. You just need to make sure you get paid the proper amount in the end. Some clients want hourly, some want fixed cost. In either case, you _must_ invoice periodically, not all at the end.

If you work hourly, begin with an up-front retainer. If you bid fixed cost, get 50% or 25% or whatever up front. Don't start coding until you get a check.

Once someone has paid up front, the chances of them paying in the future go way up.

<comment><USER8> What about situations where a client wants you to "take a look at the code"? In my very very limited experience I've told them I'll spend an hour or two on spec going over the source to evaluate before giving an estimate. Is this too little, in your opinion?

<comment><USER9> Do whatever you have to do to get the sale, but realize it's on your dime. Once you have agreed to a contract, get paid and then start.

I usually meet with the client, look over their wireframes, and do a little research before signing a contract. Typically, that takes me an hour or two. Any more than that, I usually want to start getting paid. But do whatever works for you.

</comment></comment></comment></comment></comment><comment><USER10> Had this happen twice in the past 4 years. Three times in 10 years. First time was small amount, and they didn't really _stiff_ me completely, just said they were closing, and they 'paid' in some hardware. Wasn't all that useful to me, but better than nothing.

Second time - I drove up to NYC (from Raleigh) to file in court. It was for > $5k, so it couldn't be small claims court. That was Aug 2008 - it's now almost Aug 2011 - still on the docket last I looked. Court will take a _long_ time. Even if I 'win', I still have to collect, and if the guy won't pay when he's supposed to, collecting will suck. In retrospect, I wish I'd have told the client whose project I was working on for that guy - they'd have at least known what they were continuing to let themselves in for by dealing with him.

Last time was more recent, and it was just a bad project all around - sorry I took it, sorry the end client didn't get what they wanted, etc.

Lesson learned for me is to either never subcontract for someone else, or be very cautious. I'm doing it now for one other client, but I'd met them multiple times, they have a good reputation in their industry, and I was assured by another sub whose worked with them before that they pay (and pay pretty well). And they have - been one of the fastest payers I've worked with.

If you file a lawsuit - small claims might go faster than regular court - <USER2> file and forget. In my case, my suit was for $8700. It'd certainly be nice to get it, but I eeked by and moved on, and don't spend much time thinking about it now. It'll tear you up waiting - move on as best you can, even if you file a suit.

btw, are you on the lsc mailing list? bettermeans looks familiar.

</comment><comment><USER11> First, develop your "spidey sense" for detecting bad clients, and don't take those gigs. That's the most important thing to learn, as it will drastically cut your loss rate.

Second, check the statutory limit for small claims in your jurisdiction. If the amount in question is under the limit, file in small claims. It's easy; and generally, lawyers aren't allowed. If the defendant is outside the jurisdiction of your local small claims court, you may have to file by certified mail. You'll get a judgment against them, but collecting will be more difficult.

Finally, as others mentioned, get half up front. Those people who are inclined to rip you off will hem and haw and give you all kinds of excuses about why they can't or won't pay half in advance. When you hear that, walk away.

</comment><comment><USER9> Never let your receivables get to a point where you can't just write it off. Collect early and often.

</comment><comment><USER12> If it is at all possible, it is best to maintain enough control over the system so that you can deploy it to their production environment upon payment. No pay, no deploy.

<comment><USER13> Second this. I also request a 50% deposit before I begin work, and tend to price projects at a level where I won't be completely put out if they never complete the project.

</comment></comment><comment><USER14> You can generally include an arbitration term in contracts. Arbitration can be cheaper and faster than suing. In some cases, arbitration can be even more binding.

Point in case - you get a contract with a Chinese company, and state that the appropriate court for all claims is in your home town, in California. You sue the company, and win (as they don't even show up). Then you go to the Public Security Bureau (police) office in _their_ town, and ask them to help size assets. The Chinese police will ask for a Chinese court order, but when you go to a Chinese court they tell you that your contract explicitly states that you should be back in California, and they have no right to intervene. On the other hand, if the contract is worded right, international arbitration treaties will kick in (so the Chinese courts should accept the arbitration decision), basically everyone worth speaking of has signed them. At least, that's my (unprofessional) impression from reading the China Law Blog (i.e. [http://www.chinalawblog.com/2010/02/arbitration_in_your_chin...](http://www.chinalawblog.com/2010/02/arbitration_in_your_china_cont.html))

But I am not a lawyer, and this is not advice.

<comment><USER15> Arbitration can be a bitch.

The Arbitration company has a tendency to rule in favor of whoever is going to bring them the most repeat business.

<comment><USER14> Can you expand, a bit?

Arbitration can be of a lower standard. The arbitrator will probably be a lawyer, but not a judge. And standards of evidence can be much lower.

I doubt that there are many arbitration companies siding with someone just to get repeat business. That might depend on the scale of business though. For two small businesses, I can't see how it would be a big deal. If a company the size of IBM nominates an arbitrator, I might be suspicious.

<comment><USER15> Expand I will.

>I doubt that there are many arbitration companies siding with someone just to get repeat business.

<http://en.wikipedia.org/wiki/Jamie_Leigh_Jones>

ctrl-F arbitration

<comment><USER14> Arbitration has its place. Maybe it shouldn't be legal to have mandatory arbitration clauses in employment contracts, or in other contracts without genuine negotiations of the terms.

A non-negotiable clause for a contractor going to Iraq is a whole world away from two companies negotiating a contract to construct a web site or something.

</comment></comment></comment></comment></comment><comment><USER16> The only time this happened to me, after being ignored for nearly a year I just threatenened with small claims court, and they paid with in days. I didn't even send anything official.

What I did do was research into late payment law and found that not only would they have to pay the court fees, but also a standard 8% interest on the debt. I think givin them that info helped encourage them to pay up.

Hope you get what you're owed.

<comment><USER17> Same here. Laid out the estimated added cost of enforcing payment via the court system besides interest to them, received payment soon after. Somehow the psychology of getting a "discount" from avoiding litigation seems to work.

</comment></comment><comment><USER18> Yes, I have sued a client in small claims court. I recommend it because of my experience. I wouldn't have if it hadn't been a case where I was obviously owed the money.

All through the period of trying to collect, I would just wrap myself up in knots over the nonpayment and feel like a rube.

Finally, decided to file the claim which cost me about $60 including having the papers served. Two days later, there was a court date set for mediation.

From then until the night before the court date, I didn't get worked up about it. We spent about three hours in mediation and I wound up getting paid - <USER3> course I told the mediator that they could stick their sixty cents on the dollar offer up their ass and I was ready to go to court two and a half hours into it - and I was.

Again, once I filed, I was greatly relieved.

Now, I generally have better contracts and require a retainer which is applied against the final invoice for clients with whom I do not have a long standing relationship or about whom I have concerns over payment.

Good luck.

</comment><comment><USER19> You haven't described the circumstances, but if you haven't been paid it most likely that the client is short on money, and that means there's probably a bunch of other people who haven't been paid either. The one to get paid first will be the one who is most annoying.

Be the most annoying.

</comment><comment><USER20> I've been in this situation maybe 3x in 10+years, curiously, including my very first web project.

My solution: Turn off their web site. Replace their home page with a message: 'Site down due to non-payment. If you are the owner of this website please contact the administrator immediately' And a link to your own site with your logo on it. (Make the logo BIG! lol)

Never took more than 36hrs to get payment using this method.

Of course this is last-ditch effort, after other options such as asking politely, have been exhausted. And after they pay, I promptly end the business relationship because it's not worth it to do business with customers who drive you to such lengths to get your hard-earned cash.

<comment><USER21> If you do that on their systems, you are not only liable for damages, you can also do some time in the slammer for computer intrusion and hacking, no matter how trivial you make it to disable the application. This is the worst advice I see on these how do I get them to pay threads. If you want to be able to withhold the product for non-payment it must remain on your systems at all times, it must not be allowed to "go live" if it does you can be liable for loss or revenue even if you own the code. It also has to be stipulated in the contract that ownership of the work only conveys after payment in full and that the work is not to be used in commercial capacity until after final delivery and the conveyance of license. Just going in and turning it of has gotten a lot off developers in a metric-ton of trouble. I have seen it happen to a developer first hand.

<comment><USER22> Would the DMCA be a relevant tool for things like website design work?

<comment><USER23> I can not tell if this is an awful joke or a huge misunderstanding of the DMCA?

<comment><USER22> It's not like I'm a copyright lawyer. If I'm misunderstanding something, enlighten me. If it's that huge and obvious, it won't take much of your time. "That's a stupid question" is a useless response.

If they don't pay up, why can't you assert copyright and block them from having the material hosted? I assume it wouldn't work in all cases, but why wouldn't it help in those where another party is doing the hosting?

<comment><USER23> IANAL But it seems like this is a straight forward example of contract law. Why try and muddy the waters with copyright law?

In order to claim that you are owed payment for the material the claimant would need to admit that it was a work for hire situation and the nonpaying entity was the actual owner of the intellectual property rights. How can they be in violation of intellectual property law if it is their property?

<comment><USER21> I have to agree here, contract law is going to be more straight forward than trying to deal with use of the DMCA. You could probably use it after the fact, but you would still be better to argue your case for a verbal contract. You can prove ownership, the business can prove payment if they have made any. The trick on a verbal contract will be proving the meeting of the minds that you had an agreed upon number and that that number was not paid to you. If you receive 50% up front the other party could argue that, that amount was the agreed to amount. In a situation like that it is almost better to not be paid at all, because you can prove that their was no consideration and therefore no meeting of the minds. Remember something in writing, no matter how crappy it is, is better than nothing in writing. Even if it is:

 _I am going to build an application for X and X will pay me Y the ownership of the software will transfer to X when Y is paid in full._

</comment></comment></comment></comment></comment></comment></comment><comment><USER24> Happened to me once (in 10 yrs), I just let it go.

<comment><USER25> Same here, happened 2 or 3 times in 10 years. You need to decide if the amount is worth the continued ongoing aggravation of trying to collect. A direct phone call is a good place to start if you haven't already, it's easier to ignore email and letters.

</comment></comment><comment><USER26> In some cases, paying an attorney $100 to draft a letter on law firm stationery, and mail it certified US Mail, will prod the client to pay you. I did this once.

</comment><comment><USER27> Start by telling us which legal jurisdiction?

Edit: Which two I guess, you and the client.

</comment><comment><USER28> Happened to me once in 10+ years. Had to let it go because I lost too much time chasing and paying lawyers.

Now I insist on monthly payments and promise to walk if unpaid in 15 days. Seems to work.

</comment><comment><USER29> Always sign a contract in conjunction with a statement of work. There are plenty of boilerplate docs out there for the sow, hire a specialized lawyer for contract docs. They can give you a blanket doc for short money. Even if the client tries not to pay, at least you have a binding agreement from which to negotiate or take them to court. Companies big and small renege on their contracts all the time, don't victimize yourself; it's how some business is done.

But if don't have a contract:

I'd have to evaluate the client first. If they're already a deadbeat, shame on you for doing business with them and like petervandijck says, just let it go. It's not worth the time and effort to chase them down as they have no means or intention of paying. Blackball them in the community is the worst you can do to them.

But, if they're a going concern and they've stolen your time and work and are making money from it, I'd have to engage the services of an attorney and send them a strongly worded letter indicating your intent to sue for unpaid services, a portion of the proceeds of your work corresponding to what you see as adequate (always over 50%) along with damages, legal fees and court costs. Usually that's enough to get them to write you a check, but make sure that you allow them 30 days to pay at first, remind them every week after that and at 60 days have the attorney send the letter. Just because they're not conducting themselves in a professional manner doesn't mean you don't have to. Always take the high road, be firm yet polite and document all communications.</comment>


Hackers Send Emails to Sony Employees - <AUTHOR> http://www.nytimes.com/2014/12/06/business/media/hackers-send-emails-to-sony-employees.html?ref=technology&_r=0

<comment><USER2> In case you missed it, the name of the group is Guardians of Peace, whose initials are G.O.P. These guys are comedians, too.

</comment><comment><USER3> I'm a bit disappointed -- surely there must be something juicier in this trove than bog-standard corporate bitching and admissions that their worst talent is, uh, the worst.

To be honest, these emails actually paint a fairly good picture of Sony: they know they're saddled with crap, they know they are not executing as well as they should, and they're even trying to increase their original output and reduce formulaic content. Some of the material even looks uninformed: MIB3 might not have made a profit but that's likely because of "hollywood accounting", most of that money probably ended up at Sony subsidiaries anyway; $600m revenue couldn't disappear even in Will Smith's deep pockets.

I'm actually more inclined to cut them some slack now, than I was when the silly North-Korean movie was announced.

</comment><comment><USER4> Does anyone have a link to a copy of this email?

</comment><comment><USER5> Given the revelations about the NSA,

Is it not possible to trace these emails to their source?

<comment><USER6> Sure, it was sent from a stolen laptop in a Starbucks via a rooted AWS box and a spam botnet.

<comment><USER7> In other words, the state surveillance in the US is only going to be effective at tracking and suppressing dissent, not at fighting actual crime.

<comment><USER8> I thought that was obvious.

The greatest utility of these programs though isn't in suppressing dissent _or_ busting crime or terrorism. It's in routing pork to government IT contractors.

</comment></comment></comment></comment><comment><USER9> _Hackers Send Emails to Sony Employees_

I think the title of the article needs to be less generic, as my first thought was "yes, and Sony's employees probably get a lot of other emails from non- hackers too..." A bit clickbaity.

And of all the things to leak I think these hackers chose the most mundane and boring info - perhaps this was deliberate? Supposing they had the access, I'd think all the proprietary format specifications, datasheets, and other IP would be far more interesting things to leak... to me it seems these hackers' only purpose was to intimidate, and not to "free information" per se.

<comment><USER3> "proprietary format specifications"? This is Sony Pictures, what sort of "proprietary format specification" would you get from Adam Sandler movies?

</comment></comment><comment><USER10> Any bets that this might be a competitor trying to shut SONY by causing people to quit en-masse?

<comment><USER11> The risks of doing that are astronomical if caught and given the unlikelihood of Sony being _shut down_ due to this you'd have to be a true idiot to attempt such a tactic.

</comment></comment><comment><USER12> Not hackers god damn it, it's crackers...

<comment><USER13> Let's agree that this semantic debate (previously on HN [1]) is pretty much unresolvable. A word can have multiple meanings, and the common media use is more ancient than ours. [2]

[1]: [https://news.ycombinator.com/item?id=7838663](https://news.ycombinator.com/item?id=7838663)

[2]: [http://imranontech.com/2008/04/01/the-origin-of- hacker/](http://imranontech.com/2008/04/01/the-origin-of-hacker/)

<comment><USER14> "the common media use is more ancient than ours"

^ That is by _no_ means a settled debate. Even in the comments section of the link you produce as evidence ( [http://imranontech.com/2008/04/01/the-origin- of-hacker/](http://imranontech.com/2008/04/01/the-origin-of-hacker/) ) there is plenty of debate on the conclusions.

You should have just ended after suggesting that hte debate is pretty much unresolvable. :-D

And just to be up front about the whole thing -- I prefer the non-malicious use of the term. Hollywood has a pernicious tendency to stereotype anything and everything, and the fact that that culture is mostly responsible for promoting the malicious use of the term means that in my book they shouldn't get to determine its meaning.

Again, unresolvable. :D

<comment><USER15> Around 1980, when the news media took notice of hackers, they fixated on one narrow aspect of real hacking: the security breaking which some hackers occasionally did. They ignored all the rest of hacking, and took the term to mean breaking security, no more and no less. The media have since spread that definition, disregarding our attempts to correct them. As a result, most people have a mistaken idea of what we hackers actually do and what we think.

[http://www.catb.org/jargon/html/H/hacker.html](http://www.catb.org/jargon/html/H/hacker.html)</comment></comment></comment></comment>


Better Code Review for lazy engineers - <AUTHOR> http://BetterCodeReview.org

<comment><USER2> Nice app. This is more like a 'Better Code Review for a newbie-to-the- codebase/language engineer'. I expect a senior/peer engineer to understand and correct my code. If he is not putting the effort to understand, then you are in the wrong team.</comment>


Open sourcing "Where's my bus" - <AUTHOR> http://www.fabernovel.com/en/blog/248-open-sourcing-where-s-my-bus

<comment><USER2> Now on Civic Commons. That was fast! --> <http://marketplace.civiccommons.org/apps/wheres-my-bus></comment>


A Millennial's Tiny Satellites Are Helping China Advance in the Space Race - <AUTHOR> https://www.bloomberg.com/news/features/2018-12-13/a-millennial-s-tiny-satellites-are-helping-china-advance-in-the-space-race <comment><USER2> I do feel like people need to stop putting the word "Millennial" in titles or treating that word as an actual definition of a group of people.

I feel grouping groups of 18 to 40 year olds (or any other arbitrary starting and ending age depending on the definition of millennial we're using) as one category called Millennial is one of the most confusing terms. You can't even use it as a scientific classification or categorization or even define a person properly using the word Millennial because definitions vary and the person could be 20, 30 or as in this article, 36.

<comment><USER3> Millennial typically covers people born from the early 80's through the 90's. The oldest millennials are about 36 right now.

<comment><USER4> TIL I'm one of those millennials people keep complaining about.

I thought it was people born after the turn of the millenium.

What happended to "gen Y"?

<comment><USER5> It's people who became adults around the turn of the millennium, not people born then.

<comment><USER6> Or at least people who were aware around the turn of the millennium; a 25 year old is a millennial, but an 18 year old probably isn't, for example.

</comment></comment></comment></comment></comment><comment><USER7> Western media reports tend to grossly exaggerate Chinese tech advances especially startups, those guys never shy away from any PR opportunity even if the only thing they have is a PPT in order to rake in juicy VC and government money. Don't believe what they are saying, let them show the thing.

In this article, the author seems to have mistaken Spacety with another startup LaserFleet when it comes to "offering to provide Wi-Fi service on airplanes", the latter explicitly cliams in their job listings to "have government backing", when a Chinese company says that, you set expectations low, coz they don't aim to be financially viable and usually don't have real advanced technology, maybe not even serious, let alone their grand plans.

The main subject "Spacety", all they did so far is building some concept-proof and experimental cubesats (which seems to be their real and only business model), offers 2 types of cubesat platform to do "space experiments", again, at 100K RMB price point, sounds just like yet another company caters to government policies.

Private space industry is a hot topic right now, with Spacex succeeding, former doubters(which abouds on Chinese Quora) are forced to come up with face-saving me-too policies and projects, personally I doubt any of the existing space startups in China is viable, partly because state enterprise's inherent desire and ability to eliminate competition.

Remember that Chinese guy who cliamed to actually build Nicaragua canal? His company is under stock suspension for 2 years now and no signs of resuming any time soon, that's after a daring news report questioning their glorious Cambodia telecom operation which the company claimed to have a whopping 60%+ net profit ratio and accouts for 90%+ of their revenue. Unsurprisingly, they too claim they have government backing and military ties and is "for the party and country".

</comment><comment><USER8> I have been looking in to nano satellite and while they are intriguing, I haven't seen any useful tasks that you can do. You also have options to subscribing/renting bigger satellite data. In less than 1.33kg form factor, sensors gets very limited and life in LEO orbit pretty short. It seems like they would be good for some school projects but are there any compelling applications?

<comment><USER9> In a hypothetical future war between major powers they would likely knock out each others' large satellites. So the combatants would have to make do with nano satellites for low resolution overhead imagery and low bandwidth communications. Nano satellites are small enough to be somewhat survivable, and losses can be easily replaced.

<comment><USER10> Do you mean knock out by kinetic weapons? So would some sort of EMP get them all instead, get past any shielding?

<comment><USER9> Could be kinetic weapons, directed energy, persistent jamming, maybe something else. It's hard to predict. EMP seems unlikely because emitting enough power to destroy satellites requires nuclear weapons and that would be a last resort, but anything is possible.</comment></comment></comment></comment>


Hunt and House: Depictions of Medieval Life in German Playing Cards (2016) - <AUTHOR> http://www.metmuseum.org/blogs/in-season/2016/hunt-and-house <comment><USER2> This article doesn't really talk about medieval life at all, save for a mention at the end:

"The cards' suit symbols differed, but as in The Courtly Household Cards, the pip cards are individuals of varying social ranks. These cards could not trump the face cards, but they could trump one another in a topsy-turvy order. Thus, the moneylender trumps the nobleman, the priest the moneylender, the bawd the priest, the pimp the bawd, the innkeeper the pimp, the wine merchant the innkeeper, and so on. This upturned order cannot have pleased the authorities. Such decks of cards based on social strata, nonetheless, may well have been common for German playing cards before suit symbols related to the hunt were adopted."

Most of the rest is talking about how great and well preserved the artistry of this particular deck of cards is (admittedly, it is pretty fantastic).

<comment><USER3> Pimps were higher status than innkeepers and wine merchants?

<comment><USER4> No, the pimp beats the bawd and the innkeeper beats the pimp.

<comment><USER5> Right, so for this order to be "topsy-turvy", the pimp would have to have higher status than the innkeeper outside of the game.

</comment></comment></comment></comment><comment><USER6> I expected the article would also mention illustrations of the standard German playing cards set, which is still quite popular: [https://en.m.wikipedia.org/wiki/German_playing_cards](https://en.m.wikipedia.org/wiki/German_playing_cards)

Also check out other regional sets: [https://en.m.wikipedia.org/wiki/Playing_card#Modern_deck_for...](https://en.m.wikipedia.org/wiki/Playing_card#Modern_deck_formats)</comment>


Facebook 0: no data fees for mobile Facebook, say goodbye to competition - <AUTHOR> http://techcrunch.com/2010/05/18/facebook-launches-0-facebook-com-a-mobile-site-that-incurs-zero-data-fees/

<comment><USER2> This is one of the ways the net can be non-neutral. I actually think it's not so clear that this particular way is bad, since there's no meddling with other site's traffic (which would include things like offering pay-for-QOS as this would require to not maintaining enough pipes to serve non-preferred traffic at decent quality).

</comment><comment><USER3> "If you're in the United States though, don't bother pulling out your phone to check out the site for yourself — none of the US carriers are on board."

Totally not surprised.

</comment><comment><USER4> Its not like Facebook uses that much bandwidth. As the price of mobile bandwidth continues to fall, this won't matter.

</comment><comment><USER5> It sounds similar to Microsoft making deals with computer companies to have their software installed on consumer machines.

</comment><comment><USER6> Can an admin please fix the title?

</comment><comment><AUTHOR> That's cool, take away choice in emerging markets so competing social networks don't stand a chance.

Let's let the CEOs of the Telcos and Marck Zuckerberg decide which social network everyone in emerging markets will use.

<comment><USER7> Making it free is actually providing an option where there wasn't one before. Many people around the world can't afford data.

Facebook hating is trendy lately but not everything they're doing is bad. Be real.

<comment><AUTHOR> Your first point is a good point and is good for HN. Can't say the same about your second point.</comment></comment></comment>


I suck at design - <AUTHOR> http://www.49sparks.com/?b=4

<comment><USER2> I find this blog post poorly written. Too informal to be informative, to me. Points made are overly general rather than insightful. Sounds like the author has interesting things to say (and relevant experience), but the presentation ruins it for me. E.g.:

"I guess I don't suck at design. I just suck in certain areas."

"It's impossible to be great at everything. You just can't do it all on your own."

<comment><AUTHOR> Hey, I really appreciate your comment. Yeah. You're probably right. I've never written stuff like this before, so it's probably not going to be pretty. At least in the beginning. I'm learning here. My blog (right now, at least) is more about thinking things through. For myself. And learning. From comments like this!

<comment><USER2> Your blog gets to be whatever you want, but if you want one that is HN submission quality, one thing to consider given that you're just starting out is to have a (or a few) friends edit your writing before you post it. You'll notice that all of pg's essays have a "thanks to x,y,z" at the bottom.

<comment><AUTHOR> Hmmm. Thanks... but why do I need someone to edit my stuff? I'm not scared of putting myself out there. Even with unfinished thoughts. I can handle the comments. How else is anybody going to learn and grow? What does HN submission quality mean? It says it right there in the news guidelines: "anything that gratifies one's intellectual curiosity". Sounds about right to me. HN is not the NYT. I'm just a hacker trying to figure stuff out.</comment></comment></comment></comment>


Tech firm fighting a federal order for data on visitors to anti-Trump website - <AUTHOR> https://www.washingtonpost.com/world/national-security/tech-company-is-fighting-a-federal-order-for-ip-addresses-to-find-visitors-to-an-anti-trump-website/2017/08/14/a65b7544-8152-11e7-b359-15a3617c767b_story.html?tid=sm_tw&utm_term=.655c7d7bc7bd <comment><USER2> Discussed previously:

[https://news.ycombinator.com/item?id=15011636](https://news.ycombinator.com/item?id=15011636)</comment>


38 Year Old Takes the SAT - <AUTHOR> http://www.wired.com/culture/education/magazine/16-03/ps_sat

<comment><USER2> 47, took the GRE last year. Scored kinda well.. but it also felt kind of empty. Like wow, I'm still good at high school math.</comment>


The End of Jobs – Why Entrepreneurship is less risky than traditional employment - <AUTHOR> http://www.amazon.com/End-Jobs-Meaning-9---5-ebook/dp/B010L8SYRG/

<comment><AUTHOR> I've been reading this book and really enjoying it! The author makes a really good case for the traditional career path being riskier than entrepreneurship, and why it is happening.

A common narrative is that not everyone can be an entrepreneur, but this assumption is also challenged.

Would love to hear counter arguments from anyone who is also reading this.</comment>


Ask HN: Need feedback on pivoting this abandoned project - <AUTHOR>

http://www.castbin.com/
It is a simple way to record your web browsing.
I have worked on that project for atleast 2-3 months. It does not look very good but it surely can be useful if put to right use.,
I have few options like
- Creating a reader through a browser extension specific to Wikipedia which will let users read long articles automatically
- Learning academy to let users create simple courses which will take subscribers of those courses through different online resources on the subject. For example Advanced Rails course which will take users through documentation and some blog posts relevant to advanced subjects in Rails
- Let website owners create Demos for their websites without a need to create video. They will be mute walk-through videos
What are your thoughts? What approach would be best? <comment><USER2> Mute walk through videos aren't super-helpful, though having a "common tasks" or "hidden tricks" area in your website with auto-walk through could be helpful for complex tasks. If you could at least give some descriptive text so there is _some_ narrative, I could see that being helpful for enterprise app support, where users are often required to move through dozens of screens to accomplish anything.

On the social side there are options, too. Allow people to share a browser tab and let others watch what they are doing (live, with chat [leverage Facebook!], would be best, but coming back to recorded sessions could be interesting, too). That could be used by companies doing remote training sessions (though FB probably isn't an option there [yet]).

<comment><AUTHOR> I think you are asking for annotations. I was working on it but I left it for something else.

On live streaming, I don't know if that is the path I want to take as there are other tools doing the same thing.

Thanks for your insights.

</comment></comment><comment><USER3> Also, quick question -- what's the difference between the two different play buttons in this screenshot?

[http://shadowcatcher.mindcast.com/clips/1327872538erq6k2sfdr...](http://shadowcatcher.mindcast.com/clips/1327872538erq6k2sfdr.png)

<comment><AUTHOR> One will play whole recording while other will play single page.

It is useless when there is only one page, and now I think it is useless for first page but for sake of uniformity it is there.

</comment></comment><comment><USER3> This app is a macro builder?

<comment><AUTHOR> No. It just records your browsing (i.e. mouse movements, scrolling and keyboard inputs to the page) without a need for any download. All that happens using JavaScript. So playback is also simple in the sense that only HTML need to be downloaded not the video.

<comment><USER3> Oh, that's sweet! Could this app be used to track what users are doing on (any) one of my webpages?</comment></comment></comment>


GitHub was down - <AUTHOR> https://status.github.com/messages

<comment><USER2> My favourite thing about Hacker News is seeing submissions like these. Partly because whenever a site is down, the submission is a link to the site itself and the traffic from people hitting the submission link might be making things worse. Why not just a title and some text without a link instead? Perhaps the title could say: "Tell HN: Github is down again" instead and perhaps the text could say something like, "I'm in New York and Github is down for me."

<comment><USER3> Or just link to the status page instead (<http://status.github.com>) which is separate from the main site.

</comment></comment><comment><USER4> Github status page. <https://status.github.com/>

</comment><comment><USER5> Yes, and? What's the point of this?

<comment><USER6> Well, for better or worse this was the first place I came to when requests to github.com were failing.

</comment></comment><comment><USER7> Which was hilarious because I put up some old C code of mine [1] and while looking to make sure its all there it hung on me. I immediately wondered if I had been the cause. Fortunately it came back fairly quickly.

[1] <https://github.com/ChuckM/Project3DC>

</comment><comment><USER8> I get that it's good to know these things, but is putting something at the top of a highly trafficked website, which will inevitably lead to a ton more traffic, gonna make getting it back up any easier?

I guess it depends on the problem, maybe the cleaning lady unplugged the servers while she was vacuuming...

</comment><comment><USER9> So let's all click on it immediately!

<comment><USER10> I totally did this.

</comment></comment><comment><USER11> HN's version of tabloid headlines

</comment><comment><USER12> It was down for 10 minutes about an hour ago too. Oh well, time to procrastinate!

edit: Damn, it's up again. Back to work everyone..

</comment><comment><USER4> That was quick. Good job github team!

</comment><comment><USER13> ...and it's back up. If only all downtime could be like this – that took under 10 minutes.

</comment><comment><USER14> unplanned outage reported on twitter - <https://twitter.com/github/status/329785895689535489>

</comment><comment><USER15> Second time in less than two days.

</comment><comment><USER16> No its not.

</comment><comment><USER17> It's back.</comment>


Bump - <AUTHOR> http://www.tbray.org/ongoing/When/201x/2010/04/21/Bump

<comment><USER2> The first time I ever used Bump, I "bumped" in the air (just moved the phone back and forth). It asked me if I wanted to exchange contact info with someone who I had never met; I tried it again and it asked me to accept contact exchange with another unknown person.

All of my attempts since had no effect. Granted, I haven't tried to bump _that_ many times.

My theory is that they use a GPS location to determine where you are. Then when the phone senses a particular type of motion, it considers that a "bump". The server looks to see if anyone else is "bumping" in that GPS location, and, if so, they connect and exchange contact info or whatever.

If this is true, it explains my original success with bumping into strangers: these two people were probably in a nearby house trying to bump! The server thought they were close to my GPS location, and connected me to the stranger.

</comment><comment><USER3> Second thoughts and notes: 1) Clearly, bluetooth has its place. But, Bump is for the rest of us who'd rather get things done quickly. Ask a random iPhone user how they'd share a file or contact with you using Bluetooth. But Bump is easier to explain and it works fine. The bump is a mere ritual for explanation sake and coordinating accelerometer data and is probably not meant to be phone shattering (And seriously, why did anyone pay $600 for a phone these days?)

2) No, the bumping together seems to be perhaps calculating two similar accelerometer signatures within a certain probability (of course location seems to be their secondary heuristic).

3) I don't see why this should this insecure. They are probably using Diffie- hellman for some pretty badass security measure - [http://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exch...](http://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange)

4) To those who don't think this is not going to make any money on the "business" side, maybe you should tell Sequoia, one of Bump's funders, that.

<comment><USER4> If you look at Apple's recent earnings report or listen to the conference call, you'll find that the ASP for the iPhone was exactly $600. This does not include any additional carrier payments.

<comment><USER3> True, but I mean at a consumer level :-)

</comment></comment></comment><comment><USER5> _This is the kind of technology I like; a simple effect, instantly understandable, that requires rocket science under the covers to pull off._

Historically, _most_ "rocket science" grade technical implementations in software/Web fail, except for stuff by NASA (and the likes). Keep it simple under the hood, but no simpler than what's absolutely required.

<comment><USER6> I think dropbox is an app that is instantly understandable and takes quite a bit of work to get functioning _seamlessly._

The big thing isn't the literal "rocket science" part, just the "easy" part where you don't realize that the problem might have been difficult at all.

</comment></comment><comment><USER7> Perhaps I'm old fashioned, but what's wrong with using Bluetooth? The last thing I want to do with a $600 phone is smack it into somebody else's $600 phone just to transfer some pictures.

<comment><USER8> Bluetooth doesn't work very well or reliably between two of the same phone (such as iPhone to iPhone). And lots of people have Bluetooth turned off to save battery (you can't turn it on programmatically, users have to leave your app and goto settings). And it definitely won't work well between any two different phones (such as iPhone to Android).

The official recommended bumping techniques is hold phones, and bump hands. Like a fist bump. That eliminates the risk of damaging your phone and actually works better.

The long-term goal is to bump more than contacts and pictures. For instance you can bump money using the new PayPal app on iPhone.

<comment><USER9> _you can't turn it on programmatically, users have to leave your app and goto settings_

Uh, on Android? False:

[http://developer.android.com/reference/android/bluetooth/Blu...](http://developer.android.com/reference/android/bluetooth/BluetoothAdapter.html#enable\(\))

<comment><USER8> Yes that statement was about iPhone OS devices which are used by the majority of our users.

</comment></comment></comment></comment><comment><USER10> Ah, exchange personal information with somebody in immediate proximity to you...oh, but through a central server. Wait, what?!

I'm sure the central server is and always will be benevolent and benign regarding the knowledge it gains about its users, their associates, and the information they convey.

</comment><comment><USER9> I like this idea a lot, though I'm not sure there is any possibility of making money on the business side.

I think I might have to code up an implementation of this to see how well the vibrations between phones match.</comment>


Ask HN: What should I know about India before moving to work for a startup? - <AUTHOR>

Will be moving to India (Bangalore) to run operations for a startup. Team will consist of developers, managers, and others filling various roles. What should I know about the business/startup culture and the best practices for managing employees before I take off? <comment><USER2> \- Things you take for granted here in the US are still dicey back there. Transportation, timings around food, general work hours, weekend relaxation etc. It's a different lifestyle so change as soon as possible.

\- Employee behavior is different due to the context there. For most survival is still the key vs. US. You will find very few engaged people who have laser like focus (blame the service industry for this) because of the sheer number of distractions.

\- Learn subtle gestures asap. No one ever says NO so be careful of your expectations when you get a yes.

\- Everyone there has a story and unlike in the US, its not always sexy or straight forward. Don't judge or figure everything out.

\- Be constantly amazed at the sense of humor!

</comment><comment><USER3> Startups and India (Bangalore) don't go hand in hand (together)...

If you have any other opportunity to stay where you are, Please take that.

Anyways Bangalore is super cool place to stay and have fun. The Weather is Awesome and the people are friendly and the FOOD is delicious.

<comment><USER4> "If you have any other opportunity to stay where you are, Please take that."

what do you mean by that???

<comment><USER3> I meant if coming to Bangalore is optional then Don't come.

<comment><USER4> Can you give a top 5 reasons NOT to move to Bangalore? I know if I was moving there I'd want some detail on what to be careful about.</comment></comment></comment></comment>


Ask HN: How do you follow people's submissions / comments on here? - <AUTHOR>

Increasingly finding myself wanting to "follow" certain people on here. I don't see it built into the system I am guessing you use RSS to do this? <comment><USER2> <http://news.ycombinator.com/threads?id=merrick33>

</comment><comment><USER3> I use <http://ycfeeds.com/> for this.</comment>


Ariane 6 User Manual (2018) [pdf] - <AUTHOR> https://www.arianespace.com/wp-content/uploads/2018/04/Mua-6_Issue-1_Revision-0_March-2018.pdf <comment><AUTHOR> Okay, I'm a sucker for a rocket with a user's manual. SpaceX, where is your user manual? (this is an old one: [https://www.spaceflightnow.com/falcon9/001/f9guide.pdf](https://www.spaceflightnow.com/falcon9/001/f9guide.pdf)) and is hosted off Spaceflight Now rather than the SpaceX site.</comment>


Ask HN: Why are many Techcrunch and Mashable submissions from the same users? - <AUTHOR>

There seems to be more and more techcrunch and mashable stories making it to the front page these days than ever before.
Sure, they're legitimate news sources but what happens is people vote up the a given submission because of the topic, not because TechCrunch or Mashable are the article of record. Conversation ends up clustering around them rather than perhaps a more in-depth blog post (perhaps the original source of a news story) which leaves the community less informed (I think anyway) and less distinct from other sites.
If I want TechCrunch and Mashable stories, I'll look at TechMeme. I always aspired that HN would be a place to discover blogs and more community-orientated links (individual's blog posts, startup's blog posts, etc).
I began to look at who was submitting TechCrunch and Mashable stories that made the front page, and it looks to me like quite often it is a collection of the same users.
To confirm I looked over:
http://searchyc.com/submissions/mashable?sort=by_date
http://searchyc.com/submissions/techcrunch?sort=by_date
(you need to page through the results set to get a clearer picture, obviously)
Particularly if you focus on submissions with >1 points, you can see the same names there.  I'm not going to name them here, but you can see for yourself.  In all the users I identified, all posted links from other sources too, but in a few cases they were mostly TechCrunch or Mashable.
I'm not sure if those accounts represent someone with an interest in the authors (many outlets make extra payments to authors for reaching traffic goals on a given story), users trying to be opportunistic with vote-bait stories to improve their karma or just users who only read mainstream blogs...
...but I wondered what the HN community thought. <comment><USER2> I'd just presume that the number of people submitting links is a relatively small part of the HN population, people who tend to submit tend to be serial submitters, and the current serial submitters have TC and Mashable at the top of their RSS feeds.

If I had to guess, I'd say that HN doesn't drive anywhere near the traffic that a Digg or Reddit front-pager does, so there's not nearly as much incentive to try to game it, but that may just be me being naively optimistic. :)

</comment><comment><USER3> And the TechCrunch posts always get upvoted and make it to the top. Isn't there a way to make these "worth less"?</comment>