Ask HN: Isn't human body someone's artificial intelligence project? - <AUTHOR> Human body is a complex system that learns by algorithms saved in its system in order to adapt to its environment. Human body makes decisions like "if given this input act like this." During its lifetime countless commands are triggered and the necessary actions are taken all automatically. The body fights intelligently with intruders. These and many other properties of the human body proves that human body is what we humans call an "artificial intelligence" project. Of course not only human body but all life forms are such intelligent organisms. It remains to find out whose project this is. <comment><USER2> You're jumping the gun and assuming it's artificial.

You may have a case for intelligent, but you haven't established that it's artificial, so you can't claim it's a project, either.

<comment><AUTHOR> You have a point. But "artificial" has many meanings. This one, "contrived by art rather than nature" seems to fit. But this implies that nature is stupid. But we know that nature is intelligent. "By art" implies "by intelligence". "By nature" implies "without intelligence."

<comment><USER3> Do we know that nature is smart? Evolution is achieved by trying out whatever random ideas can be expressed by a gene flip and seeing which one creates more sex. That's not smart, and nature doesn't do much better than evolution.

<comment><AUTHOR> We know that nature is not smart. We are not talking about nature but specific living organisms in nature. All types of life forms make intelligent decisions. Humans are trying to design and produce machines that can make such intelligent decisions on their own. The problem is to write algorithms that evaluate data it receives from the sensors and make the correct decision. The intelligent part is in writing such algorithms that know what to do in unexpected situations and can make the right decisions under new situtions and learn from new situations.

So two main signifiers of intelligence are 1. making decisions on its own and 2. learning from new situations.

Evolution is an academic buzzword that has so many meanings that it has become meaningless. I avoid using that word. Introducing the word "evolution" to any discussion only leads to discussions about the meaning of the word evolution. Can we investigate my original question without using the word evolution? Yes we can.

You say that "nature doesn't do much better than evolution". We now know that the fundamental process nature uses to create new types of organisms is siymbiosis. Different organisms agree to live together and form a new organism.</comment></comment></comment></comment>


Things you didn't know JavaScript could do - <AUTHOR> http://www.netmagazine.com/features/10-things-you-didnt-know-javascript-could-do

<comment><USER2> Expected a "10 things you already know" list, but ended up quite surprised by some of these.

I found the last two especially interesting.

</comment><comment><USER3> Why not mentioning running Linux kernel? <http://bellard.org/jslinux>

Also, with <https://github.com/kripken/emscripten> you can run a "port" quite a bunch of apps to JavaScript.

And don't forget you can decode several audio codecs: <http://labs.official.fm/codecs/> and video codecs: <https://github.com/mbebenita/Broadway> \+ <http://people.xiph.org/~bens/route9/route9.html>

</comment><comment><USER4> None of these are massively surprising, you can pretty much shim your way into doing anything when you have control of the environment. Turing equivalence and all that..</comment>


America's Never-Ending Battle Against Flesh-Eating Worms - <AUTHOR> https://www.theatlantic.com/science/archive/2020/05/flesh-eating-worms-disease-containment-america-panama/611026/ <comment><AUTHOR> Relevant to the current discussion about medflies in [https://news.ycombinator.com/item?id=23345173](https://news.ycombinator.com/item?id=23345173)</comment>


Google Criticizes Impact on Staff of Trump Immigration Order - <AUTHOR> http://www.wsj.com/articles/google-criticizes-impact-on-staff-of-trump-immigration-order-1485596067?mod=e2tw <comment><USER2> duplicate [https://news.ycombinator.com/item?id=13505474](https://news.ycombinator.com/item?id=13505474)

</comment><comment><USER3> More people in tech should speak up about how a blanket ban impacts American prosperity as a whole. Cutting off your country from an entire pool of human talent makes no sense to me.

<comment><USER4> Many are speaking up, from what I have seen.

Interesting sidenote: News about this EO was getting flagged and/or falling fast from the front page last night and this morning. Noticed it occurring for other political stories lately as well. Has anyone else been noticing this?

<comment><USER5> Yep, HN doesn't seem to want us talking about it.

<comment><USER6> If you mean HN as in HN members, you may be right. You've both ('willstrafach and 'techterrier) been around HN long enough to know that political topics in general tend to lead to a lot of unsubstantial discussion. Members will flag submissions that they don't feel will have useful discussions on HN. Flags will down-weight submissions even before the [flagged] tag appears.

Also, discussions can trip the "overheated discussion" trigger due to comment behavior, which further down-weights submissions. I don't know the details of how this works, but have seen it in action.

The HN community does a lot of shaping of itself, and there does seem to be a strong desire to keep the discussions civil and constructive. A lot of the discussion around topics such as these generate more heat than light, which doesn't benefit the HN community.

</comment></comment></comment></comment><comment><USER7> For those without a subscription:

Google Chief Executive Sundar Pichai criticized President Donald Trump's immigration order in an email to staff late Friday, saying the U.S. ban on foreign nationals from seven countries affects at least 187 Google employees.

"We're upset about the impact of this order and any proposals that could impose restrictions on Googlers and their families, or that could create barriers to bringing great talent to the US," Mr. Pichai said in the email, according to a copy reviewed by The Wall Street Journal. "It's painful to see the personal cost of this executive order on our colleagues."

Mr. Trump on Friday signed an executive order that, for at least 90 days, bans people from seven Muslim-majority nations—Iran, Iraq, Libya, Somalia, Sudan, Syria and Yemen—from entering the U.S. The order also indefinitely bans Syrian refugees from the U.S. and suspends the broader refugee program. Mr. Trump said the order was to keep out "radical Islamic terrorists."

Humans-rights advocates criticized the move as religious persecution. Now two leading tech executives are speaking out against the order.

Earlier on Friday, Facebook Inc. CEO Mark Zuckerberg wrote on his Facebook page that he was concerned by the order. "We need to keep this country safe, but we should do that by focusing on people who actually pose a threat," he wrote.

In his message to employees, Mr. Pichai suggested at least 187 employees hailed from countries included in the ban. "Our first order of business is to help Googlers who are affected," he said. "If you're abroad and need help please reach out to our global security team."

Mr. Pichai, who grew up in India, said that at an internal meeting on Friday broadcast to all staff, two Google employees apparently affected by the policy discussed their situations. They were "grappling with what this might mean for them and their families," he wrote. "Just as that discussion was happening, another Googler was rushing back from a trip to New Zealand to make it into the US before the order was signed."

Google, a unit of Alphabet Inc., said in a statement, "We'll continue to make our views on these issues known to leaders in Washington and elsewhere." Bloomberg News previously reported Mr. Pichai's email to staff.

Microsoft Corp. is concerned about the impact of Mr. Trump's order on employees from the listed countries and is providing them with legal advice and assistance, a spokesman said. In a Securities and Exchange Commission filing earlier this week, Microsoft said changes to U.S. immigration policies could inhibit staffing for research and development efforts.

Immigrants make up much of the workforce in Silicon Valley, including many executive roles, and the tech industry has long advocated for more open immigration laws in the U.S., saying they need more skilled foreigners to fill technical jobs.

Silicon Valley widely supported Hillary Clinton over Mr. Trump, and he and some tech executives clashed during the presidential campaign. But those executives were largely silent during President Trump's first week, even as he made several moves that appeared to push against their principles, including on climate change and net neutrality, a policy that requires internet providers to treat all traffic equally.

But Mr. Trump's immigration order appears to immediately be affecting some of the companies' operations, apparently causing some executives to speak up.

"We wouldn't wish this fear and uncertainty on anyone—and especially not our fellow Googlers," Mr. Pichai wrote. "In times of uncertainty, our values remain the best guide."

</comment><comment><USER8> I keep hitting the WSJ paywall, but found an article on the subject at Business Insider:

[http://www.businessinsider.com/google-recalls-staff-to-us- tr...](http://www.businessinsider.com/google-recalls-staff-to-us-trump- immigration-order-sundar-pichai02017-1)

<comment><USER6> The web link works intermittently for me. Yesterday it did for another article, today it doesn't for this one.

This seems to work for others:

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

</comment></comment><comment><USER9> Maybe google can pay for entry-level us citizens to fill their needs.

<comment><USER3> Maybe green card holders/work visas can pay taxes, build companies, hire people and contribute to American prosperity while not drawing benefits, rather then get the door slammed in their face.

</comment></comment><comment><USER10> Management is upset they will no longer be able to use H1Bs to cheapen the value of labor. This executive order won't have a big impact but they see it coming.

The real issue is competition on the world market.

If capital loses a single cent due to this competition they argue for (and win) trade protections and capital controls.

If labor fights against increased competition they're seen as provincial racists who can only compete if they maintain an artificial advantage.

Google should be forced to repatriate its $50 billion in cash held offshore and pay some damn taxes for a change. If they get a tax holiday on $50 billion I should get one for life. Why am I paying nearly 40% of what I earn in taxes while these companies pay nothing?</comment>


Used these guys for my laundry. Wasn't disappointed - <AUTHOR> http://www.yourherodelivery.com

<comment><USER2> this is actually quite genius - how good would it be if they played the batman songs when they arrived!</comment>


Artificial blood developed for patients of any blood type - <AUTHOR> http://www.asahi.com/ajw/articles/AJ201909290001.html <comment><AUTHOR> Link to abstract: [https://onlinelibrary.wiley.com/doi/abs/10.1111/trf.15427](https://onlinelibrary.wiley.com/doi/abs/10.1111/trf.15427)</comment>


Boeing whistleblower raises doubts over 787 oxygen system - <AUTHOR> https://www.bbc.co.uk/news/business-50293927 <comment><USER2> Earlier discussion: [https://news.ycombinator.com/item?id=21459237](https://news.ycombinator.com/item?id=21459237)

<comment><AUTHOR> Huh. I thought that the submission system automatically redirected you if there was a recent post with the same URL.

<comment><USER3> "bbc.co.uk" vs "bbc.com" in this case.

<comment><USER4> I've often thought about standardizing on one of those (probably bbc.com) and then rewriting the other URLs. But we don't have any reason to believe that would always work, or that it would continue to work in the future.

<comment><USER5> It wouldn't. Some BBC websites are .com-only (BBC Reel for example), others are .co.uk-only (BBC iPlayer). But it would work for BBC News, which I imagine is the majority of BBC links on HN. UK users would be redirected to the .co.uk url.

Or would it be possible to change the duplicate algorithm to simply understand bbc.com == bbc.co.uk?

<comment><USER4> That last bit is a good idea. I'm embarrassed not to have thought of it, or at least to have forgotten if we did.

</comment></comment></comment></comment></comment></comment><comment><USER6> > In 2017, he complained to the US regulator, the FAA, that no action had been > taken to address the problem. The FAA, however, said it could not > substantiate that claim, because Boeing had indicated it was working on the > issue at the time.

This is sounds very similar to what has been written in the past, that the FAA simply defers to Boeing on issues of safety. FAA had a lot more credibility back in 2017 than it does today. I hope the matter is investigated, because the FAA dropped the ball with the max and it and Boeing just don't have the credibility anymore to simply defer to Boeing's expertise.

<comment><USER7> This would be a fine response from the FAA depending on what is actually going on behind the scenes.

It is not like some guy in the FAA calls some guy at Boeing and gets "we're working on it" literally and that's all there is.

The would be a process, there would be reports, there would be plans. It would never be a matter of simple deferring. It would be something in that process of following up with a problem report that is missing.

</comment></comment><comment><USER8> Am I going to have to start a list of planes I shouldn't fly on?

<comment><USER9> It would statistically probably be a better use of your time to make a list of cars you shouldn't ride in</comment></comment>


CMU team builds robotic snake - <AUTHOR> http://download.srv.cs.cmu.edu/~biorobotics/projects/modsnake/modsnake.html

<comment><USER3> I've been tracking this project for a while. The most interesting part is that much of the work is done by undergrads. That's really impressive considering how hard robots are to make.

</comment><comment><USER4> Very similar to USC's also really-amazing, appropriately named SuperBot: <http://waziwazi.com/node/26>

</comment><comment><USER5> Nice! Those videos are awesome. CMU RI = made of win.

Another interesting project they've got going (which seems like it might be related) is their work on modular robots using electromagnetics or static charges. <http://www.youtube.com/watch?v=e44hA6IBtkA> (Link goes to a short New Scientist clip regarding the project.)

</comment><comment><USER6> Don't miss the salamander robot. Last Summer in Telluride's neuromorphic engineering workshop the lead researcher gave us a very impressive presentation on it. It's all about coupled oscillators: for each lateral side of each spinal cord segment, and also some overriding ones for the limbs that fire off at certain activity level of the spinal cord ones.

AJ Ijspeert, A Crespi, D Ryczko, JM Cabelguen. "From Swimming to Walking with a Salamander Robot Driven by a Spinal Cord Model." Science 9 March 2007: Vol. 315. no. 5817, pp. 1416 - <USER2>

<http://www.sciencemag.org/cgi/content/abstract/315/5817/1416>

<comment><USER7> PDF: <http://birg2.epfl.ch/publications/fulltext/ijspeert07.pdf>

Videos and Photos: <http://birg.epfl.ch/page65446.html></comment></comment>


Great Video: You Have $5 & 2-Hours - How Much Money Could You Make? - <AUTHOR> http://www.infochachkie.com/limitless/

<comment><USER2> Many, many comments from when this video was last mentioned:

<http://news.ycombinator.com/item?id=912105></comment>


Thingler - real-time collaborative todos with Node.js & CouchDB - <AUTHOR> http://thingler.com

<comment><USER2> So we can see this in action with multiple people: <http://thingler.com/2bc64a49abc2d42d9bee2beb032c2a59>

<comment><USER3> Woohoo, exploding with XSS bugs.

<comment><USER4> Hmm, based on the fact that every recent Node.js demo I've seen recently without exception has had pervasive XSS attacks, perhaps the Node.js community should build themselves some safer HTML generation and handling libraries stat, and crown them as "the way to do HTML".

Not that there's anything even remotely unique about Node.js on that front.

</comment></comment></comment><comment><USER5> Seeing people chatting using this thingler app, I realize I would love to live-chat with people about the top Hacker News stories.

Basically, each top story would have its own chat room. In the landing page of the app, I can see each room and the number of participants.

Later, I would love to be able to upvote pieces of chat so that people can easily find relevant discussions in the chat.

<comment><USER6> Can't speak for HN but chat, like video comments, seems to prove difficult for many communities. Such features can be added but whether people use them or they fall into non-stop trollery is anyone's guess.

#startups on irc.freenode.net is reasonably active though and would usually appreciate a discussion on topics coming up on HN :-)

</comment></comment><comment><AUTHOR> By the way, full source code available at: <http://github.com/cloudhead/thingler>

</comment><comment><USER7> Isn't CouchDB fully capable of doing this by itself? Why add the Node.js layer? (Genuine question)

<comment><AUTHOR> Yes, but not well. I'm using a commit-style approach to synchronize clients, so the document is never sent as a whole. I might be wrong, but I don't think couch can do that on its own. Even so, it gives me an extra layer of control, which I like. I considered making a CouchApp, but I didn't want to feel restricted.

</comment></comment><comment><USER8> Looks good. Although, playing around with it, I found that sometimes it randomly multiplied some of my items. Weird

<comment><AUTHOR> Yea I can't figure that one out, it seems to be only on firefox.

<comment><USER9> It happened to me on Chrome.

<comment><USER10> Safari (iPad) too

</comment></comment></comment></comment><comment><USER11> very nice. I wrote a very similar app last year but sold the domain (todomu.com) last week.

May I suggest base32 encoding the ID to produce a short url such as thingler.com/a3d instead of that massive md5 hash?

<comment><AUTHOR> Good idea, it's something I've been meaning to improve.

</comment></comment><comment><USER12> I love how people are using it for chat.

</comment><comment><USER13> Nice. I was actually working on a similar project for a minimal realtime chat. Couch's new _changes api is pretty nifty for stuff like this. ([http://books.couchdb.org/relax/reference/change- notification...](http://books.couchdb.org/relax/reference/change- notifications))

</comment><comment><USER14> Good work. I love the minimalism.

</comment><comment><USER15> Whoa the refresh is really fast on it. This feels almost like a chat system.

</comment><comment><USER5> Would love to be able to:

1\. set my own url

2\. set a password

3\. create categories

Great job.

<comment><AUTHOR> There's an easter egg which allows you to do #1 @:) - I'll let you figure it out.

#2 is something I'm looking into!

#3, would tags have the same effect, or do you mean something else?

Thanks

<comment><USER5> I was thinking of dividing categories. I could divide by projects or by team members name. it would allow me to see what everybody is up to in one look.

<comment><AUTHOR> Ah I'll think about that. I'm planning on having cookie-based history, with a drop-down at the top, so you can switch between recent lists easily. But I have yet to figure out how/if I'm going to have usernames and the like.

<comment><USER5> Using the dividing categories, if people put their names as categories, you could see each other's todolist without needing a username mechanism.

I am not a big fan of having to switch from one list to another. Tadalist does that, and it makes the application useless.

Maybe you can simply allow to see several lists at the same time in the same page. People would name their lists by projects or by people and they could see it all in one page.

</comment></comment></comment></comment></comment><comment><USER16> I get blank screen in FF and nothing but a logo and some links in IE.

</comment><comment><USER17> missing some xss checking i see... seemed to have went down after a bunch of people started playing on it

<comment><AUTHOR> Yea, I really gotta look into that!</comment></comment>


The Growing Importance of Social Skills in the Labor Market [pdf] - <AUTHOR> http://scholar.harvard.edu/files/ddeming/files/deming_socialskills_august2015.pdf <comment><USER2> Here's a snarky contrarian view: social skills matter more now because there is less meaningful production and creation occurring.

When engineering consists of making CRUD apps and serving up ads, you're better off politicking to get a bigger piece of a not-so-expanding pie.

<comment><USER3> I think its a lot more complex than that. I agree that there are a lot of people who make their living making CRUD apps (and honestly, I think its a good thing if people can do it! Someone is paying for those CRUD apps which means there is a demand...). But...as the economy gets more automated and digitized and the population grows, you're success will be determined by how quick you are in recognizing opportunities (clients, projects etc.) and social networks seem to be the best way to get this information. So I would argue that its the advantage of this property of social networks which is what makes being social a valuable skill.

Also, I see a lot of disdain over the term "being social" in the tech community: its not licking the boot of others, its as simple as being the one who initiates conversation. I cannot stress how important this simple skill is.

</comment></comment><comment><USER4> I'm terrified that my lack of social skills is limiting my personal and professional lives. I haven't had close friends in 13 years. My coworkers are middle aged, suburban folks, while mostly nice it gets tiresome explaining what a selfie is or how Twitter works (or having them explain football to me), and our workplace (mechanical engineering) is unusually antisocial. The vast, vast majority of the time we only talk about work because we're in a constant mild crunch. The people I've met via Meetup.com have seemed kind of narrow and were mostly older (i.e. a hiking meetup of 20 people where _all they talk about_ is running/hiking). I despise so many aspects of the tech/startup world that I gave up hanging out at coworking spaces years ago. I've met some good individual out on hikes alone, but I can't hold a conversation or keep in touch to save my life. Is there any experience that I could get into serving as a crash course in social skills? It can be expensive like long-term travel, except I've done enough recreational travel to know that I'm just as nervous in a campsite in Europe as I am in an office in the US. I just want to develop these skills before my social ineptitude becomes permanently ingrained.

<comment><USER5> How old are you?

Some of the things that have worked for me:

* Find extroverted people you can tolerate, they can introduce you to a lot more people.

* Find the groups of people who have problems with the tech/startup world but are still interested in tech (Who I'm assuming you're one of), there's a lot of people out there like that and you'll have a lot to talk about.

* If you're not great at conversation, try to focus on just being with people, say something like "I don't really have a lot to say, but I appreicate the company". Find people who want to just be around others.

<comment><USER4> I'm 30, with very millennial attitudes except not as anti-establishment. Thanks, those sound like good tips.

</comment></comment></comment><comment><USER6> This paper seems to be equating social skills in general with communication skills in the workplace. There's a lot of overlap but in my experience one isn't a solid predictor of the other. Furthermore, communication skills don't take as much precedence until after you're able to assemble a team to do the work. Everyone wants to only hire programmers/engineers/whatever who are great at communicating but the impracticality of that is why team leaders, managers, etc exist.

You can probably find 10 software engineers to write the bits and pieces for the back-end software supporting your a shipping business and you can probably also find 10 with great communication skills. When you want a team of 10 developers to write the code for a surface to air missile system who, by the way, will need to work with the engineering teams and understand how the overall system works and its intended implementation (in order to write workable code) you're gonna have a tough time finding 10 people with all the qualifications you want and sacrifices will be made.

<comment><USER7> This use of "social skills" isn't the only time economic terms are used in a way that's misleading to non-economists. Another example is "technology" ([http://www.slate.com/blogs/moneybox/2012/08/06/nobody_knows_...](http://www.slate.com/blogs/moneybox/2012/08/06/nobody_knows_where_economic_growth_comes_from.html)).

</comment></comment><comment><USER8> It's kind of cool how it looks like you can improve your log hourly wage at the highest percentiles by forgetting maths if you have good social skills, or forgetting good social skills if you have good maths skills.

I've only skimmed the paper, but how do the "social skills" map onto what one would normally mean by the plain-English meaning of social skills? It seems to be some kind of composite of job description categories, which I'm not sure what that means exactly.

<comment><USER9> One way to think about it is the ability to pick up the phone and get a meeting setup with anyone you want, potential customer, investor, engineering talent, supply chain vendor, Elon Musk etc. To get to that level, takes a lot of social skill. It's why CXO's get paid what they get paid.

<comment><USER8> But that's not how he seems to measure "social skill" component of an occupation in the paper.

</comment></comment></comment><comment><USER10> ...is a class issue.

</comment><comment><USER11> the best thing about non-clickbait articles is I don't need to read further than the title

</comment><comment><USER12> Yeah, the thing that is missing in our paradise of an economy is more social skills.

The labor market rewards social skills because the market's buying power is transferred to a handful of people.

If you had a egalitarian market that truly reflected the demand of the ordinary citizen I am sure there would be a huge increase in demand for affordable housing, healthcare, cheaper college and renewable energy.

Not to mention the demand that exists to find immortality - unlike in newton's time we actually have the tools to achieve it.

Its only from the ivory tower at harvard can people see the increase in childhood poverty and homelessness and conclude that "hmm you know what is missing ? some serf to make me laugh !"

<comment><USER13> I think you're both right and wrong. Those other issues you mention are real problems, but labor is becoming a much less important factor of production in those fields than it used to be. I think the Harvard academics are observing that in a climate of automation and global supply chains, social skills are becoming more valuable because they are hard to engineer a replacement for, which is no longer true of many physical, cognitive, or administrative skills.</comment></comment>


I'll never bring my phone on an international flight again - <AUTHOR> https://medium.freecodecamp.com/ill-never-bring-my-phone-on-an-international-flight-again-neither-should-you-e9289cde0e5f#.58zrgizib <comment><USER2> I read the comments here and I'm reminded of a Tweet I read yesterday:

"Next programmer bro who explains his clever travel information security hack has to change his name to Mohamed Hussein Ali and try it at LAX"

[https://twitter.com/thegrugq/status/831316334973579264](https://twitter.com/thegrugq/status/831316334973579264)

</comment><comment><USER3> Fun fact - the "border zone" in which your 4th amendment rights are suspended and you are subject to search, is 100 miles wide and overlaps where the majority of Americans live and work

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

<comment> temp-dude-87844 Every time I see this map (which, AFAIK, is a visualization by the ACLU and not based on an official government publication) I wonder why Chicago and the coastline of Lake Michigan is included. The border with Canada runs diagonally down the length of Lake Superior, clears the Straits of Mackinac by at least 40 miles, and then continues southeast along Lake Huron to Sarnia and Detroit.

The entirety of Lake Michigan is within the borders of the US, so while this entire "100-mile border zone" business is bizarre enough as it is, it's truly disingenuous to include the lower Lake Michigan coastline. It makes me wonder if this is an interpretational liberty taken solely by the ACLU, or if the government's demonstrated behavior truly justifies what is shown on the map.

<comment><USER4> If you are sailing you apparently you only cross the border when you dock your boat.

[http://www.great-lakes-sailing.com/canada_us_border.html](http://www.great- lakes-sailing.com/canada_us_border.html)

I guess sailing from the Canadian shores of Huron to somewhere in Michigan wouldn't be all that weird.

</comment></comment></comment><comment><USER5> I suggest mentioning in the title that it concerns the US-border, I travelled across a lot of international borders, that didn't care. Only some international borders are a problem, one of these, the US one.

<comment><USER6> I know of companies that do not allow employees to bring work devices into China. That's probably a somewhat different issue of industrial espionage, though.

<comment><USER7> Then I'm sure US is doing fine in that regard, because american agencies are morally superior to be involved in such a thing, cogh, cogh...

</comment></comment></comment><comment><USER8> Phones should load different profiles based on the password provided, with some activity logged across profiles so none of them appear stale.

<comment><USER9> You're implying that people should behave in a manner that is a serious felony in the United States and likely other places.

<comment><USER10> Honest question: How is that a felony? I have multiple profiles on my home machine. Does that make me a felon?

<comment><USER9> If you are asked to produce the contents of your property and provide access to a subset of that property, that will be interpreted as either hindering official action or lying to a federal agent. Lying to a federal agent is a felony.

From the customs agent and legal point of view, there is no distinction between hiding a secret compartment in your luggage and a device.

<comment><USER11> > there is no distinction between hiding a secret compartment in your luggage > and a device

Is it really illegal to have a secret compartment in your luggage? I mean, I have no doubt it's highly risky and that they will make the case you've done something wrong, but have you inherently done something illegal by merely having a secret compartment? Maybe only if you've explicitly represented that there are no other compartments? Or you've got contraband in there, or something else they've explicitly inquired about that you claimed you don't have? (But that's more about lying or existing laws, than the compartment itself.)

If you turned over your phone for inspection and could see they were looking in an app you don't use, are you committing a felony to not volunteer that they should look in the other browser for your real history or whatever? If having two profiles and only providing one is illegal, what about having two phones? (like your "real" one in your luggage, turned off.) Do I have to volunteer that when they asked for "my phone" that I actually have multiple? What if I kept the "real" one at home -- do I have to tell them the one they're looking at is only a subset of my property and doesn't represent what they probably actually meant when they asked for "my phone"?

I'm not entirely sure where "the lines" are here, but perhaps the passcode is part of it. Once they require that, they've crossed from dealing with physical items physically crossing the border, passing into things that are in your mind or physically located elsewhere. If they can require a lockscreen code, there's not really any reason they can't require every other password since those are "secret compartments" accessible from your phone, and if just having an undisclosed compartment really is illegal, I guess you'd better volunteer an exhaustive list of all your accounts...

<comment><USER9> If you have a desire to do some civil disobedience re some law that you have a beef with, the customs area of a port of entry is a really bad place to start.

In many cases, the customs people have discretion to not admit you for a variety of reasons. There's a tension between the process around physical goods and digital data that isn't clearly understood by the law. Until the law is more firmly established, you're better off not carrying stuff you care about.

</comment></comment></comment></comment></comment></comment><comment><USER12> Until you're detained for not having a phone to turn over. I'm only half joking.

<comment><USER13> I recommend having a few $5 Androids on ya, they are both fun to play with, handy, and will throw inquisitive 3 letter agencies for a loop.

<comment><USER14> "Is this the phone you use on a day to day basis"\- felony if you lie.

<comment><USER15> Option 1: "No, I left my phone at home."

Option 2: If you're at the US border and a US citizen, "Sir, I'm an American citizen and just want want to get home" \-- citizens can't be blocked from re- entering at the border.

<comment><USER16> re: Option 2

Define "blocked". Because Sidd Bikkannavar's recent experience tells a different story[0].

"The document given to Bikkannavar listed a series of consequences for failure to offer information that would allow CBP to copy the contents of the device. "I didn't really want to explore all those consequences," he says. "It mentioned detention and seizure.""

[0] - [http://www.theverge.com/2017/2/12/14583124/nasa-sidd- bikkann...](http://www.theverge.com/2017/2/12/14583124/nasa-sidd-bikkannavar- detained-cbp-phone-search-trump-travel-ban)

<comment><USER17> Do you think this is the document he was handed?

[https://www.cbp.gov/sites/default/files/documents/inspection...](https://www.cbp.gov/sites/default/files/documents/inspection- electronic-devices-tearsheet.pdf)

A few highlights:

 _You may be subject to an inspection for a variety of reasons, some of which include: [...] you have been selected for a random search. "_

 _You're receiving this sheet because your electronic device(s) has been detained for further examination, which may include copying._

 _CBP may retain documents or information relating to immigration, customs, and other enforcement matters only if such retention is consistent with the privacy and data protection standards of the system in which such information is retained. Otherwise, if after reviewing the information, there exists no probable cause to seize it, CBP will not retain any copies._

</comment></comment></comment></comment></comment></comment><comment><USER18> I have a prepaid plan that only works in the US anyway.

I never bring my US phone on international travel, because it just won't work. Instead, I carry a cheap Chinese GSM phone that's wiped before every trip and preloaded with some music and entertainment videos (TV Shows, etc.)

I buy the sim-card at my destination and throw it away when I go back to the States.

I'm not sure this solves anything, but then again, I don't work for a company that makes me required to be able to access sensitive data from any point in the world. YMMV.

</comment><comment><USER19> This might have been suggested before, but I think it's novel enough to repeat:

You should be able to create two passwords for all devices. One, your password, would allow you to use the device normally, the other, your lastword, would start a silent erasure of the device. The device could even present a fake successful authentication, like dumping you to some fake desktop, while it erases your data.

While in this case it would not really benefit someone in situations like US border crossings who have almost no rights, I think it would be very effective at discouraging attempts to force people to divulge their passwords, as the person entering the lastword would effectively be informing the device that it was under attack. With something like this I would think that questioning people for their passwords would be pointless.

<comment><USER20> And then you get prosecuted for destruction of evidence, obstruction of justice and whatever else they can come up with.

As said in other threads, the solution is not technology.

<comment><USER19> This assumes that law enforcement actually knows you will have evidence.

If the technology could remove everything that would be incriminating and leave benign data you would just be another non-techie traveler.

<comment><USER21> They don't need to know you have evidence. All they need to know is that you deliberately caused them to erase your device under the guise of unlocking it. Which means your device _could have had_ evidence, and now you've made it impossible to prove that it didn't.

<comment><USER22> The burden of proof is still on them, no?

<comment><USER21> IANAL, but I don't think so. They don't have to prove that the data you just wiped contained evidence of wrongdoing, they just have to prove that you wiped the data after they asked for it. That's kind of the point of "destruction of evidence". If they already knew the contents of the data, they wouldn't actually need it, now would they?

</comment></comment></comment></comment></comment></comment><comment> spaghetti-guy Signed up to pose two questions :-

1/ I legitimately do not know a lot of my usernames and passwords. I sign up with a unique email that includes the name of the site (I'm not particularly religious about the format of this and usually end up checking previous email to figure it out). Passwords are saved in Chrome and I mostly don't remember them. I'm sure I am not unique. Where would one stand with this scenario?

2/ Wherever I can, I use a U2F device as a second factor. Could one be compelled to provide this along with the passwords (providing I can remember them)? Where would one stand if the key was unavailable - i.e. lost/left at home? Assuming they have a PC nearby for checking your social media accounts, I'd very much doubt it had it's USB ports enabled so, even if I did provide it, I would suggest they probably couldn't use it. Is there any documented precedent for how this is handled?

</comment><comment><USER23> _> Since most of our private data is stored in the cloud — and not on individual devices — you could also reset your phone to its factory settings [...] Then if you're asked to hand it over, there won't be any personal data on your phone_

This makes me wonder: is it true? Is the data truly unrecoverable if you factory-reset your phone? I doubt so. But maybe there's some special tool to truly wipe a device (say like the equivalent of DBAN)

<comment><USER14> At least on an iPhone, erased is erased. On android some versions use full disk encryption but many do not, it's a guess.

<comment><USER24> It's not a "guess". The last Android release that lacked support for block- device-level encryption was KitKat, which shipped in 2013. Any device being advertised with the "Android" trademark (to be fair: AOSP-based clone OSes like Amazon's have been slower to evolve) over the last two years has that support.

Please don't hijack an important security discussion to engage in meaningless platform flamage. Users with Android phones have this available and they should enable it, not be told that they need to "guess".

<comment><USER23> I have some questions actually. Is it something you need to enable on Android? I seem to understand from the comment above yours that iOS has this enabled by default. If so, how do you actually enable it?

<comment><USER14> Yes, it's impossible to disable the disk encryption on iOS. If you don't set a passcode, the disk is still encrypted (but only with a per device key), this prevents recovery of data after an erase.

</comment></comment></comment></comment></comment><comment><USER25> I'm interested to see how Apple will react to this, given their history with the FBI. Right now, you can connect your iPhone to a computer and get all the information off it - doesn't matter if you are iTunes or Cellebrite. It'd be good to have a permanent way to disable this ability in the future, so that your phone data cannot be siphoned out, even if you provide the PIN. Of course, that's not the only way for data to be extracted, but all other options would be considerably slower and less practical.

<comment><USER21> Apparently there already is. It's called Pair Locking, and it's something you can do with Apple's Configurator software. Forensic data dumpers use the same functionality that iTunes uses to talk to the phone, which uses a process called "pairing", and Pair Locking makes it so the device refuses to establish any new pairs.

</comment></comment><comment><USER26> "And you can bet that countries like China and Russia aren't far behind" \- I am a Russian citizen and I cross the border of Russia very frequently and I cannot agree with the statement. The worse thing I've been asked about was "what is the goal of your trip". Getting your phone on the border of Russia is something impossible, it's just unimaginable. I've never been asked to show anything except for my passport. At least now and for the time before this moment.

</comment><comment><USER27> How sad that by now it's far easier to simply mail your stuff to yourself, pick it up on arrival to destination, and mail it back to your house before departing. I am beginning to hate my country so bad I can't wait to get out. It feels nothing like the country I grew up in.

</comment><comment><USER28> In this age of digital instant copy, Facebook has made a lot of things the norm. I watch TV shows and cyber stalking is seen as normal.

A good friend of mine was blackmailed by her boyfriend that her sensitive pictures would be released on the Internet if she didn't return his calls. It was the first time she realized that what was considered silly can really be very serious. She deleted her Facebook and Twitter account.

I really want to see a big hack, sort of a global financial crisis level on the surveillance govt is collecting for people to realize this shit can really fuck society up.

</comment><comment><USER29> If your rights are suspended at the border, then whose rule of law does apply? Clearly not the US, then would it be the neighboring country like Canada? Or is it some sort of no mans land? With more and more of these stories bringing up the lack of 4th and 5th Amendment rights, I'm becoming curious as to what can legally happen at the border. How would common crimes be handled in this area?

</comment><comment><USER30> Once customs and border patrol is holding you is there any way to back out? Could you say something like "Uh... I think I'm just not going to enter right now."?

(then back up your data, ship the computer device with an insurance policy, and give the border crossing another shot)

<comment><USER20> Certainly, 6 months later, when you are cleared for a hearing after getting deported to who knows where.

Don't try shenanigans at the border.

<comment><USER30> OK, fair enough. Maybe just plan to not have your device like the article says.

</comment></comment></comment><comment><USER31> If you have a Nexus Android phone, just change to guest mode or add another user. It's a seldom used feature and limits what people can see or do with your primary account - inspectors are unlikely to know as it's fairly low-key when users are swapped

<comment><USER32> But if they do know, that's a good way to get yourself banned from entering the country for lying to a border guard.

</comment></comment><comment><USER33> My current plan is to wipe my phone before travel and restore it on destination. Nothing to unlock because there's no phone there.

Forcing you to restore your entire account is a whole 'nother level beyond simple forcing you to unlock your phone.

<comment><USER34> How do you do that with an Android phone? With iOS this seems pretty easy

<comment><USER35> I have used the Android development tools to make backups over USB and it is fast. You can install just the command-line tools from [https://developer.android.com/studio/index.html#downloads](https://developer.android.com/studio/index.html#downloads) and use:

        adb backup -apk -shared -all -f backupname.ab
        adb restore backupname.ab

<comment><USER36> Though be aware that this won't backup everything. (at least on a non-rooted device)

Notably, if you use google authenticator for 2FA, it won't backup and you'll restore a device that will no longer work as your second factor.

<comment><USER35> Thanks, that is good to know. I wish there was something as easy as the iTunes backup for iPhones. There are Android apps that claim to do a more thorough job but I haven't tried them.

<comment><USER34> Titanium backup for a rooted device works great. If you have access to recovery you can also do a Nandroid backup which gives you 100% restore capability.

For non rooted this seems very tricky, that's why I asked. Most likely you will spend hours getting your phone to work again.

</comment></comment></comment></comment></comment></comment><comment><USER37> OK, those of us who know better travel without phones, what about people who don't know better but have received information from me? The data about me on their phone cannot be protected by me.

</comment><comment><USER38> _They may choose to detain you anyway, and force you to give them passwords to various accounts manually. But there's no easy way for them to know which services you use and which services you don't use, or whether you have multiple accounts._

This would seem to imply lying, or at least deceiving, a federal agent. IANAL, but [https://en.m.wikipedia.org/wiki/Making_false_statements](https://en.m.wikipedia.org/wiki/Making_false_statements)

<comment><USER39> Well ... two can play that game "any matter within the jurisdiction" of the federal government of the United States and since you are not in that jurisdiction this does not seem to appply :)

</comment></comment><comment><USER40> It would be nice if there were a feature built in to phones to facilitate this. Like, on the lock screen, an emergency wipe button that runs a procedure you specify (log you out of everything, obfuscate which services you subscribe to, etc) and this way as you're going through customs, you can gauge your risk and at any point you feel uncomfortable, you discreetly click your button before smoothly handing over your phone and password with a warm smile.

<comment><USER14> The area you are frog marched into is strictly no devices allowed, if they see you with any electronics in your hand you will be pounced upon. This is very obviously because people try to destroy evidence they have on their devices once they discover they are screwed.

<comment><USER41> They claim to be device free, but yet everyone has their phones out texting and doing email as they wait in line. I've _never_ seen a border agent even say anything, much less march someone away.

As long as you aren't taking pictures of the procedures they don't really care.

<comment><USER14> The waiting line for immigration/customs is not the area I'm talking about, this area is where you go once you fail the initial screening. In some international airports like Sydney you will receive a $300 on the spot fine if you have your phone in your hand, they're serious about it.

<comment><USER42> Australia does have some outrageous laws, so I suppose they want you not to be destroying the things that are governed by those laws on your phone. But I'd rather take the fine than have them find out, if I had such things.

</comment></comment></comment></comment></comment><comment><USER43> They can detain me indefinitely if they want, I will never give my pin to border security. I'm not going to bend to this bullshit by not carrying a phone.

<comment><USER44> It's easy to say that now. When the pressure's actually on and a person now has things at stake, priorities can change, and yielding starts to look like the eminently sensible thing to do.

I suspect your tune may change when you find yourself in indefinite detention, have missed your connecting flight, and your family/friend/spouse/boss has called said phone and been told by CBP that you're refusing to comply with an investigation.

<comment><USER43> No.

If my peers find it acceptable that I am detained indefinitely simply for not unlocking my phone, then throw away the key because all is lost.

</comment></comment></comment><comment><USER45> "Land of the free."

</comment><comment><USER46> _> Then if you're asked to hand it over, there won't be any personal data on your phone_

That would probably look even more suspicious.

</comment><comment><USER47> When someone creates a dumb phone with a great camera and GPS this won't be a problem for a lot of travellers.

</comment><comment><USER48> Seems to me Apple and Google should be working on "roaming profiles." You can reset your phone to factory settings, or even get a rental phone at your destination, and then quickly restore it from your profile. After all it's the data you're interested in, not the device per se.

<comment><USER21> How is that any different than just backing up to iCloud and restoring it to a new device?

</comment></comment><comment><USER32> Can border agents force me to reveal my personal email address and password?

</comment><comment><USER49> Feature Request: set auto-wipe on your phone that cleans it unless you enter your cancellation code within the next x hours.

</comment><comment><USER50> I had same strange situation a week ago when passing Ukraine border. Whats purpose of this?

</comment><comment><USER51> I wish Apple would have a duress password that when entered would wipe the phone.

</comment><comment><USER52> The factory reset seems more practical to me than leaving your phone at home.

<comment><USER13> Also, carry multiple phones of the same model. I've been throwing my main phone anywhere besides in plain view and carrying a couple $5 Androids in my pockets instead when going thru TSA, better they try to search one of them than my main phone buried in my bag next to 2 others that look just like it.

<comment><USER53> Keep in mind that it's a felony to lie to a customs & border patrol officer. "Is this your main phone?" How will you answer that?

<comment><USER54> > "Is this your main phone?"

This is my main phone I use when crossing constitution-free zones.

> it's a felony to lie to a customs & border patrol officer

That makes me _livid_ : "Oh, sorry, the constitutional laws (that apply to _us_ ) don't apply here, see it's not technically the US because reasons." [lies to officer] "FELONY!".

<comment><USER21> Why does that make you livid? Did you think you don't have to obey any laws simply because you're at a border? I guarantee you it's still a felony to murder someone there, so why would lying to a federal agent be any different?

<comment><USER54> Because the purpose of law is to _protect people_. The purpose of murder laws is to _protect_ people from the act of murder. The purpose of constitutional law is to _protect people_ from tyranny.

<comment><USER21> I don't understand what point you're trying to make. My point is that you can't reasonably claim that all laws go out the window just because some constitutional protections are suspended. Saying that it should be legal to lie to a federal agent under those circumstances is roughly equivalent to saying it should be legal to murder said federal agent under those circumstances (which is obviously not true).

<comment><USER54> you: "murder == lying"

me: "no it's not"

I don't claim "all laws go out the window". No clue how you reached that conclusion.

<comment><USER21> The only other conclusion is that you think that the law against making false statements is somehow special and it alone should be thrown out under those circumstances. But there's no reason why that particular law should be special, so the much more straightforward assumption is that you think laws in general shouldn't apply in those circumstances.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER55> Why not ship your phone to yourself at your destination?

</comment><comment><USER56> Try 'I am a born in America citizen on american soil, I want to talk to my lawyer, no i'm not giving you my password. No I won't tell you why.'</comment>


Ask HN: Do you use wireless activity trackers? (Striiv, Fitbit, Jawbone) - <AUTHOR>

There are a lot of companies competing in the fitness technology sector, and being that HN is read by a lot of technologists and early adopters, I'm curious what everyones take is on these devices.<p>I have a Fitbit Ultra, and have used a Striiv and Jawbone, but I haven't used them as regularly as I thought I would. <comment><USER2> I bought a fitbit zip for my wife and she's been wearing it daily.

We like it better than the runkeeper on the phone bc there are many times during the day when the phone is not "on your person". For example, getting up to go to the printer, you leave your phone at the desk. However, you're still taking steps and burning calories.

I think the fitbit web site / app could be better with the types of badges / encouragement but thats just my 0.02.

</comment><comment><USER3> In my country (BR), which is normally around 3 years behind the first world in most tech stuff, there is a popularity explosion w/ the app Runkeeper for running.

(Example: we now have Netflix but it has almost no relevant shows)

<comment><USER3> The conclusion being: I have no idea what those are and when would use them instead of your phone.

<comment><USER4> They're activity trackers. You start them to your wrist/pants and turn it on. Then it tracks the steps you've taken, calories burned, stairs climbed, your sleep pattern. Some even have hearth rate monitoring. The point is that it's active 24/7 not just during workouts. These gadgets are part of the quantifiable self movement.</comment></comment></comment>


PayPal Joins OpenID Foundation Board - <AUTHOR> http://www.readwriteweb.com/archives/paypal_joins_openid_foundation.php <comment><USER2> Chris Messina wrote a blog post about this as well: [http://factoryjoe.com/blog/2009/01/28/what-paypals-member- in...](http://factoryjoe.com/blog/2009/01/28/what-paypals-member-in-the- openid-foundation-could-mean/)</comment>


Patagonia Text Message Spam - <AUTHOR> Anyone else get a text message?
From: 71333
Image says: "Tell congress there is no room in government for climate deniers Answer with Action patagonia"
"The climate crisis is a human issue. Tell Congress there's no room in government for climate deniers. Take action for a livable future: https://p2a.co/81SGMSO"
I will never buy anything from this company. This is NOT how you get your message across. Do not text me, do not spam me.
Just got this text, very random. I did not sign up for anything, and have never purchased a patagonia product.
I got this from a chat reply:
"I'm sorry that they have come across as spam. We are putting our voice behind an effort we believe in and trying to make the movement hear as much as we can." <comment><AUTHOR> Afer speaking with their customer service chat some more, it was spam and they did not send it. Dont go to the URL, prolly malware. :(</comment>


Freelancer for life – 5 reasons why this works - <AUTHOR> https://antonsten.com/freelancer-for-life/

<comment><USER2> I hear quite a lot about how freelance design works well for freelance designers.

But I'm a software consultant; mostly I do "Greenfield Development", that is, writing entire applications completely from scratch. It's fascinating work but so painful that I would not wish software consulting upon my worst enemy.

For quite some time now I've been struggling to get out of consulting, and into a regular job where I can work in and office among coworkers.

Just making that statement in an interview, in reply to their query as to why I want to give up consulting, is absolutely all I require to be turned down for the job.

It is profoundly frustrating.

<comment><AUTHOR> What is it that you find so painful about the work? Not having coworkers or the actual work?

<comment><USER2> In recent years, it has become not having coworkers.

I'm a better coder than I used to be, so the software development itself is easier than it once was. But what was very hard was that after the dot-com crash, the clients always demanded fixed-cost contracts, they were never willing to pay hourly any more.

If I ran into an unexpected obstacle, I'd have to eat the cost of it. I always completed on my deliverables, as I regard that as the ethical thing to do. Even if I didn't, I had my reputation to consider.

<comment><AUTHOR> Have you tried getting a shared office space somewhere? Maybe even where other programmers sit as well? I share an office and see people that way. If you share office with people in the same business you can also easily discuss any problems that occur and maybe get help?

<comment><USER2> that's my plan, once I get enough paying work in it to pay the rental. A private desk at Portland's Nedspace is $450.00, a "hot desk" is $350.00. I don't really need my own personal desk but the private desk option gives one 24-hour access, which I really do require as I am a confirmed night owl.

Until then, I hang out at wifi spots but it is uncommon to find other coders at any of them.</comment></comment></comment></comment></comment>


Dealing with complex projects - <AUTHOR> http://vadimkravcenko.com/dealing-with-complex-projects <comment><AUTHOR> Hey guys I've wrote some thoughts on working with complex software projects. I would appreciate your feedback!</comment>


Intel Acquires Mashery - <AUTHOR> http://thenextweb.com/2013/04/17/api-management-powerhouse-mashery-being-acquired-by-chip-maker-intel/

<comment><USER2> The article this one rewrote explains the why much better.

<https://readwrite.com/2013/04/17/intel-acquires-mashery>

It'd be kind of interesting if you dropped an api layer in the firmware more or less like ipmi but sharing the ethernet and using a modern style key and role approach. Use the same strategies to manage all your bare metal as you do to manage instances.

</comment><comment><USER3> this is completely random. what's the relation here?

<comment><USER4> Not a direct answer but Intel is making plays into quite a few extra markets nowadays, HTML5 being a striking one. To be honest, I wouldn't be surprised if we see Intel try and make a big play for the developer tools market long term with an acquisition of someone like GitHub or Atlassian some way down the road.

<comment><USER5> Intel has acquired HTML5 tools from AppMobi [http://techcrunch.com/2013/02/21/in-a-play-for-more- html5-mu...](http://techcrunch.com/2013/02/21/in-a-play-for-more-html5-muscle- intel-buys-appmobis-html5-developer-tools-leaving-appmobi-to-focus-on-the- cloud/)

This enables them to have a service like PhoneGap build.

</comment></comment></comment><comment><USER6> Mashery has developers but not the enterprise, so now intel can leverage its relationship and build on the offerings

</comment><comment><USER7> Now someone can acquire the <http://apiary.io>

</comment><comment><USER8> weird but a simpler answer would be that Intel is contemplating life, post-pc.

</comment><comment><USER9> Rock on Clay.

</comment><comment><USER10> Another one bites the dust :(

</comment><comment><USER11> Huh?</comment>


Zero Knowledge Backups with Android 9 and Titan Chip - <AUTHOR> https://security.googleblog.com/2018/10/google-and-android-have-your-back-by.html?m=1 <comment><USER2> Not zero-knowledge, but end-to-end with implied trust to the Titan chip.

If you are high-value target and NSA asked Google to have your backup on some kind of Titan simulation, they would have unlimited tries for guessing your PIN.

As I understand you don't have any way to verify that your backup is actually encrypted using the Titan and that it doesn't have bypass mode.</comment>


Microsoft's OS Business Has Started to Decline - <AUTHOR> http://bits.blogs.nytimes.com/2008/10/24/microsofts-vista-problem-by-the-numbers/

<comment><USER2> I've often wondered how much of Vista's adoption problem in corporations came down to the higher system requirements. It was pretty common for companies upgrading from earlier versions of Windows to buy the rock-bottom cheapest systems capable of running XP, much less Vista. Upgrading to Vista would mean replacing every computer in the office, on top Microsoft's bill. Why do that if there's nothing fundamentally unsatisfying with XP?

<comment><USER3> I actually watched my work PC booting up the other day and noticed that XP is (c) 2001. No-one seems able to clearly articulate what exactly it is Vista does that XP can't, in a corporate setting at least. That's Microsoft's problem, that XP was "good enough". Whereas if you look at their server products, the reasons to move from NT4 to 2000 to 2003 to 2008 are all, the message is much clearer.

<comment><USER4> I agree entirely - they are pushing themselves into a "change for change's sake" scenario.

The same applies to their other cash cow - Office. Office 2007 has some improvements I like... Powerpoint and Excel have some usability improvements... but on the whole.. Word for me is still Word as it was in Word 2000. There is nothing in 2007 that is that compelling. For many people it's probably Word 98, or Word 2.0.

Apple has avoided this by keeping OS X and the evolving it. This model seems to be working much better for now.

<comment><USER3> Whereas with Apple, if you ask "why should I upgrade from Tiger to Leopard" the answer is simply, "Time Machine". Or with Sun, why should I upgrade from Sol8 to 10, the answer is "dtrace and zones". MS really needs a snappy comeback like that.

The most complex single document I've ever worked on was my MSc dissertation, 30,000 words, lots of cross-references, figures, footnotes, etc etc. I can't remember if I used Word 97 or 2000, but it was more than sufficient for the task. I could have done it in Word 6 or Word 5.1, even. It truly baffles me why people (even within MS itself) want to keep upgrading it.

</comment></comment></comment></comment><comment><USER5> I think the advertised domain should clearly be _bits.blogs.nytimes.com_ , not _nytimes.com_.

</comment><comment><USER6> Where is the competition? All this 'MS is finished' talk. Fine. I understand the reasoning. Makes sense. I just don't see any potential replacement.

OSs may eventually fade into the background. That's a possibility. But that has nothing to do with MS.

The Vista launch & the netbook sales as described in the article would have been a great opportunity for any competing OS to play. But none are there to rise.

Apple plays a different game. 1. Do we really think one company will do all the hardware & all the software of all PCs (or even half of them)? 2. They would need to cut margins. No reason for them to do that. . Linux had a run with the Eee PCs V1. Heard it got good reviews. But it didn't stick.

Anyway, it looks very possible that Vista is just a below average product that gets below average sales & the next windows will be released, Vista forgotten, & nothing (bar a couple of years of slightly reduced sales in one department) changed in the long run.

They were weak for a couple of years.It might have been a good time for an attack. But noone was there to do it.

<comment><USER7> Linux and OS X probably won't overtake Windows in market share in any foreseeable timeframe.

What they are doing is book ending Windows at the low and high end of the market. Apple is doing an excellent job of sniping the high end part of the PC market. And Linux makes possible a lower end of the PC market that Microsoft would prefer not exist because of what it does to their margins.

<comment><USER8> I suggest Apple wants the low end of the market as well, just that) they are taking some of that market with the iPhone/Touch platform rather than with Macintosh.

<comment><USER6> I would say that's a different market. An iphone isn't a cheap alternative to a pc. It a supplement.

</comment></comment></comment></comment><comment><USER9> I think the article missed the main cause, Visa isn't very good so people don't want it.

<comment><USER10> I'd be wary of proclaiming this as "the beginning of the end", as the article title seems to imply.

There were two things wrong with Vista: 1) issues with 3rd party software & drivers, and 2) steep hardware requirements. The first was due to enhancements to user accounts & security, and is largely fixed today.

Anyway, people aren't going to be using Windows XP for the next 5 years, so they'll switch en masse to Windows 7 or to OS X. Apple still isn't competing at the lower price points, so unless Windows 7 is just really bad, I think we'll see the numbers pick back up when Win7 comes out.

<comment><USER7> The real possible "beginning of the end" problem is the popularity of $300 netbooks, and Microsoft only getting $30 on these versus $70 for a more "traditional" PC.

If this trend continues to accelerate, the revenue Microsoft gets per PC will steadily decline and likely offset the increase in revenue from increased volume.</comment></comment></comment>


Here's everything we've learned about how the NSA's secret programs work - <AUTHOR> http://www.washingtonpost.com/blogs/wonkblog/wp/2013/06/25/heres-everything-weve-learned-about-how-the-nsas-secret-programs-work/?tid=rssfeed <comment><USER2> This article unfortunately skims over the "minimization" procedures that were also leaked, with only a brief mention. In reality they seem to actually serve to maximize the amount of citizen data they can keep after collecting it all.</comment>


Every time you "growth hack" a marketer facepalms - <AUTHOR> https://medium.com/p/growth-hacking-afaabc5ec478

<comment><USER2> While I dislike the term, the author didn't understand what "hacking" is. To him, "hacking" is breaking into others' computers and stealing data, so he sees "growth hacking" as using any method to get more users without regard to whether the method is ethical or not.

</comment><comment><AUTHOR> Just for the record: I'm no marketer but the term drives me up the wall!</comment>


SQL Joins Explained in Plain English - <AUTHOR> https://medium.com/@majikarpp/sql-joins-explained-in-plain-english-5da01e6367a <comment><USER2> The example given in the short article isn't good. If the transaction count is a field in the guest table, there's no need to join the transaction table. I assume the article is meant for someone who never used SQL. As such, I think it can be more confusing than helpful.</comment>


The Software Engineer's Guide to Negotiating a Raise - <AUTHOR> http://www.mgadams.com/2015/06/30/the-software-engineers-guide-to-negotiating-a-raise/ <comment><USER2> As a manager of engineers I would add one thing to this generally good advice:

After you negotiate the raise, make sure you live up to it.

If you kick ass at your job, your manager will very rarely worry too much about what they're paying you, they'll just be thrilled to have you on the team. But if you're not living up to the high expectations you set for yourself then they're really going to regret paying you that extra 5k (or 10k or 20k or whatever).

<comment><USER3> Agree, as a manager of 15 people, there's 1 or 2 superstars I would say pay them almost whatever they want - if they demanded it (which they don't). They're worth it. Only true for the highest performers however.

<comment><USER4> Throwaway cause I'm a lurker and don't really care.

Just sharing a contrarian experience...

As a manager of 7, formerly 10, those 'non-superstars' can easily go find a job elsewhere as well. Remember, these are engineers. "Superstars" or not, they're not stupid. The demand is there.

When management balked at requests to bump pay (not even that much, and only to bring it in line for the region) for people they didn't think were 'rockstars', they walked off to better offers (I don't have authority here to bump pay without approvals).

It's created a bit of a headache. Not only do we have to find replacements, which is time consuming, folks are concerned they may not be considered a superstar (it hasn't been stated so succinctly, but the conversations have that vibe).

And in the long run, it was decided to raise pay across the board to reflect the increase in the area.

Be fair to your employees as a whole. Assess their overall contribution to the company. Not just number of commits, LOC, or that the wrote some really cool but useless feature in no time at all (really hate when my boss beams over having folks like that here, fortunately they're not on my team).

<comment><USER5> Fun related story: a few years ago, Google was hiring entire teams from Microsoft away to work on Google-only projects. After noticing the ongoing pattern, Microsoft just doubled the salaries of entire teams over night. 90k -> 180k. 110k -> 220k. That stopped the Google drain for a while.

</comment></comment></comment></comment><comment><USER6> > 1\. Establish your track record as a top engineer. > 2\. Lay out your > specific future plans to solve their burning problems and objectives.

As someone who's been into raise negotiations on both sides of the table I think the entire article could be distilled to these two points. It's all about solving critical problems and getting s__t done.

If you as an engineer can establish yourself as the one who 'gets it' and who consistently makes annoying problems and complexities disappear your negotiation position is unbeatable because then you're probably amongst the top 5% or 10% of engineers and any good company would do _anything_ to keep you.

Most of the time some percent more or less salary for a top performer don't make a difference in the scheme of things but missed deadlines and key projects do.

</comment><comment><USER3> I would downplay 'market rate'. That's fine for commodities. Are you a commodity? You are in a certain role and that does put you in a range of how much value you are adding/are capable of adding (although at a startup this would be a wider range than an established co.) Your only justification for an increase is that you are adding more than you're currently being compd for.

There's other factors too, perks, travel demands, how fulfilled you feel, how much you like/hate your boss. You can determine what you are happy with and accept that, but if you can't get it, think about leaving if you can get more elsewhere. But don't stress too much about - am I getting 100% of what I could get.

Know that - that doesn't define your worth as a person - and there are many people making much less than you, and many making much much more. Some of them incompetent. Are you happy is the question.

<comment><USER7> I've always framed it as "the market rate for me." The nice thing is that things like Hired and AngelList actually let you put a $$ figure on it.

</comment></comment><comment><USER8> Complementary reference: Negotiation Advice from Silicon Valley :)

[https://www.youtube.com/watch?v=N6Zz- Nkkaxc](https://www.youtube.com/watch?v=N6Zz-Nkkaxc)

<comment><AUTHOR> One of my favorites!

</comment></comment><comment><USER9> Seems like solid advice.

One challenge in asking for a raise at larger companies is it can be difficult to find someone who can actually authorize a raise. A lot of times your manager is a tech lead and his manager has no budgeting responsibility.

<comment><USER10> This is an excellent point.

Additionally, even if you do find out who can give you a raise, it may be impractical to get due consideration. I've experienced a situation where the CEO of the (large, listed) company personally reviewed all compensation changes and hiring offers. He was so busy (doing CEO stuff, presumably) that he'd often miss meetings with his direct reports (no-one would even know what city he was in) so imagine what it was like trying to get a resolution for an underpaid engineer on your team.

After a while of repeating "we're working on it" you start to look either disingenuous, ineffective, powerless - or all of those.

Edit: a word

<comment><USER3> That's interesting. I was in a small/mid size co. where the CEO had to approve all raises. I would think it makes more sense to have bands for each position and only hiring or going outside those bands would need approval.

</comment></comment></comment><comment><USER11> Article like these make me wonder whether I work in a different world altogether :)

Where I have worked (which are considerably big companies) we are "told" the salary raise during appraisal cycle. It is never open for negotiation. At the most, you can "express" disgust and thats about it. Hopefully this "disgust" will be taken into account during next year (depending on the manager).

The only time I have seen someone from software fraternity negotiating is when he coming into the org or leaving the org.

Note: my experience is limited to working in UK and India.

</comment><comment><USER12> Most companies are inclined to think of raises as tiny annual percentage gains, which may keep in step with cost of living increases only if you're lucky. If you ask for more than that, managers are _trained_ to save the company money and not honor the request. They're expected to call your bluff. If you show up with an offer from another employer, they _may_ counteroffer, but may just as well let you go because of your "disloyalty". People can and do often suffer retribution when they ask for raises.

The business world sees things completely differently than the engineering world.

</comment><comment><USER13> It's a good post. One thing great companies get right, is to value the engineers that are working on the codebase. If an engineer is or feels under- paid and they get a competing offer, it's already too late to try and retain them. There's always someone out there that can/will pay 10 or 20% more, so, expecting to retain top engineers at the 70th percentile salary is going to be a futile exercise.

<comment><USER14> _One thing great companies get right, is to value_ EVERYONE, regardless of their position.

<comment><USER13> Completely agree though as history has taught us, socialism doesn't scale very well. Better results merit better rewards. The term "Rewards" is broader than monetary benefits. Holds true not just for individual performance but also collective performance at a higher abstraction of entity - team, org, company, city, state, country, etc.

<comment><USER15> And capitalism is doing such a fine job of scaling at present?

</comment></comment></comment></comment><comment><USER16> I hardly ever post, but I had to for this one: your post is riddled with typos.

Useful information, but the mistakes were quite distracting. Proofread before publishing please!

<comment><AUTHOR> You were totally right, thanks for the heads up so I could fix them :)

</comment></comment><comment><USER17> I was recently on the job market and read _Secrets of Power Negotiating_ by Roger Dawson. I'm relatively inexperienced and that book gave me a huge confidence boost. I can directly attribute 15% of my compensation to reading it.

Even just the "flinch" he talks about netted me an extra 5k right off the bat. I had always been too afraid to directly ask "what is the compensation range for this position?" but now I ask exactly that, forthrightly and without confrontation. Nobody refused to answer.

<comment><USER18> > I had always been too afraid to directly ask "what is the compensation range > for this position?" but now I ask exactly that, forthrightly and without > confrontation. Nobody refused to answer.

My opinion is you should just ask for what you want, rather than asking what the compensation range is. You will get an answer, but you're unlikely going to get an actual meaningful band.

<comment><USER19> I disagree on this, but with a caveat. The "top" of the band is usually 10-20% below their actual top, and I can triangulate from there.

<comment><USER17> Yeah, that was what I was assuming as well. I would ask the range, they'd give one, I'd flinch at the top-end of it and inevitably they'd come up 5%ish percent right away. From there I was generally able to wind up 10-20% above top of the original band.

</comment></comment></comment></comment><comment><USER20> Question to HN: How do you negotiate for a raise when cash value is below market rate but plausible equity value goes moderately above (risk adjusted)? It seems that in the negotiation you have to take a pessimistic view regarding company outcome. Or would you negotiate for higher equity instead of salary?

<comment><USER7> First decide why you want the job. There are good reasons to work at an early- stage startup, the pace of work will stretch your capabilities exponentially more than a stable job will (from personal experience). The skills I developed working at a startup were worth more in hard $$ after I left than I made working there.

If your primary motivation is financial, you need to think carefully. You are taking an irrational and outsized risk as an early employee if cash compensation is below market. But people play negative expected value games all the time at the casino.

Even if the expected value of the equity is "above" market, the variance on that projected equity is significantly worse for you than getting it in cash.

Either way, you should push for roughly market cash compensation, framing it as "your expectations." I have said these exact words before: "The salary figure is definitely below my expectations (which is $___), I'm worried this won't work out." And then pause to get more information from them. Remember, your expectations are framed by your alternatives, which makes it easier to walk away. Best thing is to have another offer, if you don't it's not the end of the world though. They still have to fill the position, which is leverage for you.

</comment></comment><comment><USER21> For the record, it is believed to be in the company's best interest to lowball an employee and use a temporary information advantage to "save money".

This is why some good people probably change jobs more than mediocre performers. If you have skill, at some point you figure out you are being taken advantage of.

</comment><comment><USER22> "It doesn't really matter when you have the raise conversation, what matters is that you've done extensive research and tht you are prepared going into the negotiation. You can either be proactive and set a time with your manager or you can wait until your normal performance review. "

I disagree with this advice for a few reasons... waiting for the normal performance review time is bad if your company's budgeting process doesn't line up. We budget on the calendar year, we review after 1st quarter. If we didn't have your raise in the budget it's much more difficult to get it approved.

Know how you company does its budget. The best time to ask for a raise is before we do the yearly budget.

ADD: But doing extensive research and coming to the table prepared drastically increases the likelihood of getting the raise you ask for.

<comment><AUTHOR> This is a great perspective that likely rings true for a lot of larger companies.

</comment></comment><comment><USER23> I work for a US company via outsourcing site, at $22/h full-time. Was one of the first developers, pushed their dead product up to the finish line almost by myself, now leading a tiny team. Even though I put in a great job for 2 years now, my repeated questions for a review which would (hopefully) lead to a raise ended up in silence. Outsourcer offered to "try and squeeze" $0.50/h more, that was in January.

What's even worse, I am locked in with the them so I can't bring up the financial questions to the client directly. Other than raising stakes and possibly risking my position, which wouldn't happen probably, which makes it even more awkward.

In few months I'll move from Eastern Europe where I live now, to a western EU country, so taxes and cost of living will put me slightly above welfare.

FML

<comment><USER24> Like the commentator said above, get another offer. Obviously you can't get it from this outsourcing site so you'll have to find it somewhere else.

What's the outsourcing site? They're probably billing you out at $100+/hr. They don't want to pay you more because they don't need to. You've stayed for 2 years at that rate. They don't need to "try and squeeze" anything from the client. They are the ones that don't want to pay more.

</comment></comment><comment><USER25> Your article is quite interesting. Only one thing annoyed me: the text color doesn't contrast enough with the background, making your article difficult to read. It seems to be your first article on this blog this is why I wanted to give you this advice. Keep working hard.

<comment><AUTHOR> Thanks, great suggestion. I've adjusted it to have a stronger contrast.

<comment><USER25> It's better now :)

</comment></comment></comment><comment><USER26> I agree with step 1: Go kick ass, but I would make it a bit more specific.

Make your managers (and if possible his managers) life easier. Use your skills to solve their problems. If he knows he can count on you, and you do work that make sure he can do his job he will be in your corner.

I don't mean to suck up, just when your are doing your magic make sure it is on something that everyone else considers a problem that needs to be solved now. I have seen a few people who have done really clever stuff, but it was on things that wasn't critical for the success of the project.

</comment><comment><USER27> How about equity that's the same quality (not magnitude) that the company gives investors? I.e. instead of these 10/20/30/40 (non-uniformly-vesting) ISO grants, the company issues the employee monthly debt that is convertible into stock and has a preference on the company's assets if it goes under?

How do we negotiate more meaningful equity?

</comment><comment><USER28> I wish I could say that I can't believe the conversation going on, but alas, I have been here before. Here is some friendly advice for those of you who were not working in the 90's:

1) This is HN and a lot of people here have drunk a lot of the start up Koolaid. I can understand that; especially in the kind of market we have right now. I should warn you, though, that some day the arbitrary measurements used for evaluating the worth of a startup will change dramatically. Yes, it seems like crazy talk right now, but some day the startup you work for will be evaluated based on sales, revenue and profitability not by how big your burn rate is, or how "disruptive" your technology is.

2) Some day aquisition and IPOs will be difficult and capital for companies without an amazing track record (of making money) will be hard to get.

3) There will be a time when stock prices will persistently go down; even if you work for the big amazing company whose shares have made X number of people millionaires. Some day you will find yourself working for the IBM of the mid 90s or the Microsoft of the early 2000s. You might even work for a Nortel and have a $100 per share price drop to 0 (as well as losing your job) over a year or two.

4) You can over price yourself. I know that seems stupid because obviously you can just price yourself to the market. That 30% increase you got from moving to another company can't be bad, right? Until that company tanks because they are paying stupid money to employees and nobody will hire you because you are too expensive. And when you realize it, and cut your expectations you've been out of a job for 6-8 months and nobody trusts that you can be any good because otherwise, why haven't you been snapped up by somebody else?

4) You can price yourself into a layoff. Sure your company is going amazingly well today. Your company got a $200 million cash infusion just last year, bumping the valuation up to $2 billion. There are 250 employees and your technology is super-awesomely-disruptive. But wait... there is a downturn in the market. Nobody will fund an IPO. You're running out of cash. No angel investors are showing up and revenue can only handle 100 employees. Let's look at the price/performace ratio of the current employees! Wow, Bob is good but... are we really paying him _that_ much???

5) I'm sorry to say it, but IMHO programmers are not underpaid as a general rule. Money you don't negotiate into your pocket is not "left on the table". It's not like the money is piling up somwhere. Money that isn't spent on your salary is spent somewhere else. Companies have slim profits these days and concentrate on growth. Even large companies tend to tune their profits to about 5% and don't even pay dividends! R&D expenses in a company range from about 2-30%, but often hover in the 10-15% range of expenses. For a company whose revenue is driven by technology, that means that the 10% activity pays for the other 90% of the company. _Some_ people are worth the extra 30% pay raise because it _will_ drive the appropriate amount of revenue. I'm just going to have to say it, though: most people are not. If salaries go up 30% across the board, a lot of the companies you work for will tank. I'm not saying that _you_ aren't worth the 30% extra. It's just that the attitude of "We're getting the shaft" is going to kill a lot of companies (as it has done in the past). There's a reason old timers joke about Aeron chairs and foosball tables.

These things I have seen and I'm sure I will see again.

<comment><USER29> > "Money you don't negotiate into your pocket is not "left on the table". It's > not like the money is piling up somwhere."

You're joking, right?

EDIT: Google, 60+ billion cash on hand. Microsoft, 90 billion simoleons. Oracle: 45 billion with a B. Apple: 180 billion dollars American "piling up". So why exactly am I being downvoted?

<comment><USER28> These companies are exceptional. In fact, one could argue (and it has been argued) that these companies should divest themselves of their cash because almost by definition they are being inefficient. Although there are 10's of thousands of people who work in companies like these, there are millions of people who do not.

I have some experience working at a large company where many of the employees' main motivation was to lay claim to a piece of the company pie. I'm fairly certain that my cautionary advice is not misdirected even in that circumstance.

YMMV and if you never experience the problems I write about, then I will be very happy for you ;-)

</comment></comment></comment><comment><USER30> Also relevant, by Patrick McKenzie: [http://www.kalzumeus.com/2012/01/23/salary- negotiation/](http://www.kalzumeus.com/2012/01/23/salary-negotiation/)

</comment><comment><USER31> Here's my similar long-form article based on advancing in a large enterprise software organization.

[http://peterlyons.com/leveling_up](http://peterlyons.com/leveling_up)

</comment><comment><USER32> Just letting you know, this needs a fix: [http://www.mgadams.com/contact- page/](http://www.mgadams.com/contact-page/)

<comment><AUTHOR> Thank you.

</comment></comment><comment><USER33> Step One: Go find a job at a competing firm, because that's the only way you'll get a meaningful raise.

<comment><USER34> This is what Ben Horowitz has to say about matching competing offers:

 _An excellent engineer decides to leave the company because she gets a better offer. For various reasons, you were undercompensating her, but the offer from the other company pays more than any engineer in your company and the engineer in question is not your best engineer. Still, she is working on a critical project and you cannot afford to lose her. So you match the offer. You save the project, but you pile on the debt.

Here's how the payment will come due. You probably think that your counteroffer was confidential because you'd sworn her to secrecy. Let me explain why it was not. She has friends in the company. When she got the offer from the other company, she consulted with her friends. One of her best friends advised her to take the offer. When she decided to stay, she had to explain to him why she disregarded his advice or lose personal credibility. So she told him and swore him to secrecy. He agreed to honor the secret, but was incensed that she had to threaten to quit in order to get a proper raise. Furthermore, he was furious that you overcompensated her. So, he told the story, but kept her name confidential to preserve the secret. And now everyone in engineering knows that the best way to get a raise is to generate an offer from another company then threaten to quit. It's going to take awhile to pay off that debt._

For what it's worth, most competent managers I know agree with this idea.

Edit: I should mention that I am NOT advocating paying people less than market wage, but as managers know, sometimes you end up in this position with some employees for periods of time without meaning to.

[http://www.bhorowitz.com/management_debt](http://www.bhorowitz.com/management_debt)

<comment><USER35> "...but the offer from the other company pays more than any engineer in your company and the engineer in question is not your best engineer. Still, she is working on a critical project and you cannot afford to lose her. So you match the offer."

Jesus that all sounds so ridiculous to me. That's a funny shell game around admitting that someone was more valuable than you were paying them, and then guess what - lots of other people are.

If the argument is "But she isn't _always_ this valuable.. she's just this valuable on this project" then attach a financial incentive to the project.

Sadly, I don't get the sense that Ben is suggesting that there's a problem with not compensating commensurate with value here or with depending on the employer-preferential taboo of the secret salary. He seems to just argue you should let this engineer walk and the project die.

<comment><USER36> If I were the engineer, I would also walk and let the project die. Because when that project is over, you're going to be the "highest paid but not best person on the team" and there's no reason they shouldn't be looking to release you for that anyway.

<comment><USER37> If you threaten to leave to another company and that's how you get a raise, the relationship's been poisoned and it's just a matter of time until you leave.

This is just another reason why I love project based consulting more than FTE. The incentives are properly aligned. Adam Smith would smile.

<comment><USER38> Nope. I took a generous counter-offer over a year ago. I've only increased in critical responsibilities since then.

<comment> saiya-jin This can be a double edge sword. you enjoy your new responsibilities? good for you. not everybody wants to get more and more on their shoulders until the point of realizing that there ins't much time for that little thing called life. Also, most people who get promoted/raised around me end up working much more compared to raise they've been given.

Personal experience - in every single work I've done (roughly 10 customers/employers, perm+consultant) in 3 different countries, there was/is always room to grab more responsibility, more tasks etc. State of IT usually just a variation of a term MESS, with some technical debt here and there, everywhere. You work harder, solve more, take more responsibility and your career progresses along (or you go to place where it does faster).

But with this might also come 9-10 hours at work instead of 8 (plus lunch), company phone which is there just to remind you of the work when you're not in, maybe more weekends screwed up and so on. Even in otherwise very work/life balance oriented employers.

Want another advice? When having a formal talk with your boss, tell him you want a raise, but you don't want it for free, rather bringing added value. Define clear terms what is expected from you to get there, fulfill them and watch the magic happen :)

<comment><USER38> Yes, I got the extra responsibilities I asked for. I don't have a company phone. Everything is actually good.</comment></comment></comment></comment></comment></comment></comment></comment>


What would be your choice of DB for a commenting system? - <AUTHOR> Hello HN fellows - I've "the next best idea" since sliced bread... on how to write a commenting system similar to disqus, spot.im, except better. Would you use an RDBMS (e. g. postgres) or a graph database (e. g. neo4j) to model the conversation threads? I may also want to enable commenters to insert emojis, a very limited subset of html for external links and font styling. It has to scale to tens, possibly hundreds of thousands of simultaneous users, most of which will be posting relatively short payloads via http(s) as comments are almost always limited in length.
Reason I ask is I've heard certain commenting systems use a graph database and others an RDBMS. I've zero experience building commenting systems with either.
Thank you. <comment><USER2> > I've "the next best idea" since sliced bread... on how to write a commenting > system

> It has to scale to tens, possibly hundreds of thousands of simultaneous > users

My suggestion : just use a database you are familiar with and start building. Most comment systems use a rdbms, so that's a safe bet. Use a graph database only if you find a strong technical reason to do so, not because another company is using it.

</comment><comment><USER3> I wrote a simple system like disquis, which you can find here:

[https://github.com/skx/e-comments/](https://github.com/skx/e-comments/)

I just used SQLite, but psql/mysql would work just as well. Handling comments, even threaded ones, isn't likely to be too heavyweight.

</comment><comment><USER4> Always use an RDBMS in the first instance, it's simpler, better understood and will perform really well.

If you need extra performance later on, you can always add an extra layer.

<comment><USER5> Use postgresql and when/if you grow big pay somebody or learn to scale it.

Only use non-rdbms when you need something special, say, full-text-search, or insane performance (in-memory-kv) etc.

<comment><USER6> Both MySQL and Postgres support full text searching.

<comment><USER5> Both suck at it for many reasons.

<comment><USER6> Well that's a compelling argument, I'm sold.

<comment><USER5> Im too lazy and on a phone but you gotta trust me on this one.

</comment></comment></comment></comment></comment></comment><comment><USER7> RDBMS is probably fine. If you want to try something new and shiny, a document store (like MongoDB) is probably better than a graph DB, because nested comments and replies can be easily and naturally represented by nested documents -- objects containing lists of embedded objects containing lists of [etc...]</comment>


Sources of inspiration and interesting directions for programming languages - <AUTHOR> http://plsadventures.blogspot.com/2009/08/sources-of-inspiration-and-interesting.html

<comment><USER2> He takes brief looks at four areas of interest.

Exotic type systems: he advocates dependent types. There appears to be an error is his second example (I dont know ML), so I cant quite follow he=is example. OTOH I implemented a program generation system a decade ago which included type composition and type reasoning, so I think we agree that there is much more interesting stuff that can be brought to mainstream languages.

He advocates strong static typing with type inference. I like Python 3's approach: duck typing with optional type declarations, although in Python 3 they are in effect just comments.

Visual programming languages. he thinks it's a good idea, but hasnt seen any good examples. I would go so far as to say all the ones I have seen are bad. I would welcome some good visualization tools for existing languages.

Concurrent programming languages: he mentions Occam and several others. He thinks Bigraphical Programming Language has promise.

Theorem proving: he is looking for something less ambitious than proving program correctness, maybe more along the lines of eclipse's error helpers. He suggests tools that ask your intent. I too would welcome tools that can reason about programs, that can attempt to understand the programmers intent and can answer questions about the systems implementation.

<comment><USER3> With regards to visual programming, I've seen it well-executed for event driven systems.

MindRover was one example. It's a robot programming game I was involved with, released in 1999. You would put components such as radars and weapons on your vehicle. When you went to program the vehicle, it would show you the components you selected, and you could draw wires between them. The wires would create events of the form "when the radar sees the enemy, fire the laser".

You could develop fairly complex behaviors. For example, there was a logical component which worked like a state machine: you could say "when the nearby radar sees the enemy, enter the run-away mode", and program the run-away mode to ignore the radars and drive in random directions. There were also 'variable' components that kept state and could remember values from one event to the next. I am pretty sure it was Turing-complete, although sort of awkwardly so. (The events were compiled into an object-oriented language which just defined methods for everything)

MindRover's execution model was sequential in response to events, but I think this sort of event-driven visual programming would work well as a concurrent system, because it makes it hard to depend on the internal state of other components.

<comment><AUTHOR> I think for domain-specific languages, visual programming makes perfect sense if the domain lends itself to visual representation.

I guess the interesting question is whether we can even begin to approach generality.</comment></comment></comment>