Memristor – The missing circuit element (1971) [pdf] - <AUTHOR> http://www.cpmt.org/scv/meetings/chua.pdf <comment><USER2> Oh man, if you like that paper do I have the list for you. We used this list while doing some literature review when we were doing research on HPs memristors [http://webee.technion.ac.il/people/skva/new_full_reference_l...](http://webee.technion.ac.il/people/skva/new_full_reference_list.htm). That covers a pretty wide range of topics related to memristors

<comment><USER3> Beautiful!

I have a question for you, lots of people have been claiming memristors are right around the corner for almost half a century at this point, what do you think about the viability of the memristor in the future?

<comment><USER2> In the enterprise storage market I think they're probably quite close to being a volume product. The versions I was working with were a few years back and admittedly a different chemistry than is used these days. The issue I think they'll have in the short run is that these will be quite expensive relative to NAND. I don't think you're going to have a memristor based disk in your home PC for quite a while. I do know that there are already some space systems that utilize memristors and reram already. The really novel applications (as in not just big hunks of fast memory) are probably much further out if they even go anywhere.

<comment><USER4> So do memristors exist or not? Wiki claims they are still 'hypothetical'.

<comment><USER2> They 100% exist. We had a wafer worth of cutup die of the TiO_2-x type devices all the way back in 2007. HP officially published results of a physical device as well ([http://www.hpl.hp.com/news/2008/apr- jun/memristor.html](http://www.hpl.hp.com/news/2008/apr-jun/memristor.html))

<comment><USER5> My understanding of the TiO2-x devices is that they are strongly non-linear; which makes them very useful for binary storage, but less so for analogue memristor-y uses.

<comment><USER6> Wouldn't non-linear mem-resistors make pretty ideal neural nets? Most activation functions are modeled as non-linear functions anyway.

Edit: Appears some HP associated labs had success with just such a chip! Surprised it hasn't been more success in that field.

[https://www.technologyreview.com/s/537211/a-better-way-to- bu...](https://www.technologyreview.com/s/537211/a-better-way-to-build-brain- inspired-chips/)

<comment><USER3> Because no one wants neuormorphic hardware, we want 16-bit hardware that allows us to do math. Contrary to popular opinion, neural networks is more about math than biology. Having 1-bit or analog weights/activations is a royal pain.

<comment><USER6> That's a good point. Most of our current CS / Hardware tech and experience relies on digital computing. Makes me wonder if instead of using neuormorphic hardware as the deployment vehicle, it'd make sense to use it as a specialized high speed trainer. Whereas most of these research projects seem to be assuming that they'd be deployed as endpoint/client devices.

The alternative would be to use the annoying/tedious analog hardware to significantly (possibly) reduce the amount of time/energy costs to train a neural net. Then have special equipment to measure the learned weights and convert them to 16-bit weights that'd be easier to deploy.

Facebook/Google are showing that custom chips for deep learning make economic sense. That market feature could tip the scales for specialized neuormorphic training chips which deal with analog circuitry but offset those costs & complexities by driving efficiency and/or speed while still deploying via traditional digital chips.

Of course, this path relies on the assumption that an analog circuit could be much faster or energy efficient. It's not too far fetched though based on the current numbers and time for training vs biological system energy costs.

[edit: grammar]

<comment><USER3> Therein lies your problem, I've been telling anyone who'll listen that _data movement_ , even _on chip_ is our energy hog, not computation or even reading from the memory banks. How does analog hardware deal with that?

<comment><USER6> In the case I listed above, the data (i.e. the training weights) only needs to be read once at the end of training. It'd require move expensive instrumenting of the memristor's which is expensive and bad for general purpose computation unit.

However, comparing the energy needed to modify the neural net data in-situ via analog signals vs shuffling that same data in digital form back-and-forth repeatedly to simulate the analog process seems to provide a viable use case. A quick mental check seems to lean toward back-propagation being "cheaper" in the analog processes as the data doesn't need to be moved while the calculation is performed as part of the same signal propagation via the properties of the analog circuit.

In other words its cheaper to move the computation "units" to the data than to move the data to the computation engine for this particular case. Performing the training in digital form requires repeatedly shuffling all the weights for _each_ training iteration. That process is expensive. Luckily the inherent nature of the back-propagation algorithm adapts to the "sloppiness" of analog circuitry. Transferring the final weights to digital form could require final but light post-processing training to remove particulars of the underlying analog circuits.

But replicating and distributing the final trained model would be more efficient since it only requires a single shuffling of the weight data to apply the neural net and get an answer. Applying the trained model via standard digital means should be cheaper/easier for all the reasons you mentioned previously.

[edit: grammar & clarity]

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> There's another similar such element - which has a somewhat confusingly similar name:

[https://en.wikipedia.org/wiki/Memistor](https://en.wikipedia.org/wiki/Memistor)

It was developed by Bernard Widrow in 1960, whereas the memristor was envisioned and named in 1971 - but not found to actually exist until 2008.

The memistor was most "famously" used to develop a couple of artificial intelligence (neural network) systems, ADALINE and MADALINE:

[https://en.wikipedia.org/wiki/ADALINE](https://en.wikipedia.org/wiki/ADALINE)

Note that if you try to google "memistor", you'll maddeningly get suggestions and results for "memristors" instead - even when you tell google to show you only results for memistors only; this makes finding information about them online difficult. It's best to add to your search "adaline", "madaline", and/or "widrow".

The main difference between the two devices are that the memistor is a three- terminal device, versus the memristor being a two-terminal device. You can think of the memistor as being a "memory transistor" vs the memristor as a "memory resistor". This is gross simplification, of course.

One other interesting thing about ADALINE is how simple the memistors are to construct; you can effectively re-create ADALINE at home, as Widrow's paper shows:

[http://www-isl.stanford.edu/~widrow/papers/t1960anadaptive.p...](http://www- isl.stanford.edu/~widrow/papers/t1960anadaptive.pdf)

On the topic of memristors - they can be DIY'd as well:

[http://sparkbangbuzz.com/memristor/memristor.htm](http://sparkbangbuzz.com/memristor/memristor.htm)

Finally - if you're interested in this kind of thing (that is, implementing hardware analogs of brain functionality), google "neuromorphic computing"...

</comment><comment><USER8> Fun fact: Leon Chua is Amy Chua's (of Tiger Mom fame) father.

</comment><comment><USER9> Anybody knows what happened to to HP's "memristor"? Was it only vaporware?

<comment><USER10> Still in the lab, "the machine" switched to using DRAM until it gets cheap enough to scale. It's really mind-boggling how much we demand of new technologies, we've refined magnetic storage over many decades. These things at least a decade to go from laboratory ... proof-of-existence to commercially competitive product.

<comment><USER11> As far as I can tell there is more than just HP's memristor based storage level, random access, non-vol memory technologies stuck in R&D pipelines right now. Eventually (or perhaps hopefully) they'll make it to market and I think will make for a more interesting state of computer hardware than there has been in some time.

<comment><USER10> We are asking a brand-new technology to catch up with stuff that has had an entire industry optimizing it for decades. It's going to take decades for a single company to get things up to speed.

</comment></comment></comment></comment><comment><USER12> Brains have the equivalent of memristors. Changing the value of the memristors gets harder the more charge it has. That is why spaced repetition as a learning method works as a memory technique.

When we sleep the brain organsizes and decides what to keep/forget. Artificial intelligence probably needs to emulate sleep.

</comment><comment><USER13> Ok, I get that capacitors and inductors are opposites, but I've yet to understand the significance of why the memristor is the opposite of a resistor... Chalk it up to my primitive knowledge of analog design.

Couldn't theoretically there be a mempacitor and a memductor as well?

<comment><USER14> This diagram might help you understand: [https://en.wikipedia.org/wiki/Memristor#/media/File:Two- term...](https://en.wikipedia.org/wiki/Memristor#/media/File:Two-terminal_non- linear_circuit_elements.svg)

</comment></comment><comment> Black-Plaid Here's a nice talk about memristors:

[https://www.youtube.com/watch?v=bKGhvKyjgLY](https://www.youtube.com/watch?v=bKGhvKyjgLY)</comment>


Things You Need to Know About Where Google Is Going Next - <AUTHOR> http://www.readwriteweb.com/hack/2012/07/5-things-you-need-to-know-about-where-google-is-going-next.php

<comment><USER2> I also just submitted this article, nice that HN coalesces submissions.

I prefer using PaaS myself with Heroku and AppEngine being my favorites but I also enjoyed kicking the tires on dotCloud, OpenShift, and others.

That said I just rented a high capacity Hetzner.de server a few weeks ago because a lot of what I do, besides customer projects where they pay the bills for infrastructure, is learning side projects and some of my experiments take a lot of resources.

I can't comfortably afford to do some of my side projects on PaaS because I don't directly make money from them.

</comment><comment><AUTHOR> Key points from interview with Google engineering director Peter Magnusson during Google I/O. He explained their cloud direction. He insists that the future is toward completely managed services. Do you think so?</comment>


Philips :YES - An Intel 80186 PC - <AUTHOR> http://en.wikipedia.org/wiki/Philips_:YES

<comment><USER2> Intrigued why you've posted this...?

Just to keep the ball rolling, I present.. the RM Nimbus 186: <http://www.surfplus.co.uk/?page_id=38> (very popular in schools in the UK during the 90s)

<comment><AUTHOR> I never heard of it or of the 80186. I was hoping to get some dialog going on it. I cannot even find a pic of it...

edit (way back to the rescue): [http://replay.web.archive.org/20081207012059/http://www.comp...](http://replay.web.archive.org/20081207012059/http://www.computermuseumgroningen.nl/philips/yes/yes.html)

<comment><USER2> I'd never heard of the machine you linked to but was familiar with the 80186 at the time. That Philips computer has a lot of similarities to the RM Nimbus with the lack of full IBM PC compatibility and the 20MB HD. I wonder if they shared some heritage.

The Wikipedia entry makes it sound a little like the "Atom" of its day: <http://en.wikipedia.org/wiki/Intel_80186></comment></comment></comment>


Is PHP backtick operator (` `) dangerous? - <AUTHOR> https://blw.sh/blog/is-php-backtick-dangerous <comment><USER2> Backticks have been a thing with that behavior in UNIX shells longer than Javascript itself has existed.</comment>


Tomato "Sunviva" - <AUTHOR> http://www.opensourceseeds.org/en/seed/tomato-%E2%80%9Esunviva%E2%80%9C <comment><AUTHOR> Patent-free, openly licensed.

</comment><comment><USER2> scrolling on this website is strange</comment>


Open-Book Sale of Our $267K Online Store, with Full Financials - <AUTHOR> http://storecoach.com/blog/selling-our-267k-dollar-store

<comment><USER2> Hello there everyone! I'm the owner of the online store referenced here and would be more than happy to answer any questions anyone has.

<comment><AUTHOR> Cool listing, Dave. Shared it as I think it will be interesting to see how this pans out. Quick question: Do you guys have the processes for this store well documented? IE, written instructions for how to do all of the recurring tasks like route orders, issue refunds, answers to common questions, etc?

<comment><USER2> Thanks, I appreciate it! Yep, we have everything extremely well documented already for the next owner. All the ordering procedures and customer service routines are documented and ready to go!</comment></comment></comment>


Ask HN: Which mobile messaging service do you prefer? - <AUTHOR>

Are iMessage, WhatsApp, SMS, Facebook Message, Viber, etc more or less secure than one another and does that factor into your decision?<p>Does one service's interface compel you to use it over the other alternatives? <comment><USER2> G! hangout.</comment>


Ask HN: What can kill Facebook? - <AUTHOR> Facebook is just growing & growing. It has also proven to be duplicating popular startups and effectively killing potential competitors while they're young. Facebook has also proven to be filled with excellent hackers and lots of capital + cash flow. What are possible things that will lessen the power of Facebook and eventually cause its downfall if ever? <comment><USER2> Exclusivity used to be Facebook's greatest strength. You could post photos of yourself getting drunk in the dorms without worrying that your parents would find out. Now that Facebook has gone mainstream, a competitor could attack Facebook by offering privacy within well-defined real-world communities, authenticating membership by email address, IP address or moderator approval.

<comment><USER3> Isn't that what Google Me plans on doing? These well-defined real-world communities would consist of a friend group, a family group, and a work group. All types of shared information would be classified into one of these groups and be visible to only those within that specific group.

Also, what about niche social networks? Linkedin seems to have conquered the professional social network. Facebook seems strongest in the friend category. To me it seems awkward having family and friends in the same Facebook network. Perhaps a niche family social network could succeed...

<comment><USER4> You can already do this rumoured behaviour with Facebook (it's called Friend Lists).

If Facebook hasn't managed to get people to adopt this, it seems hard to believe that anyone else will.

<comment><USER5> Facebook doesn't make it easy though. With 1000+ friends, I'd rather not sit down for 12 hours and try to categorize them.

Surely they can atleast guess for me (based on who I share friends with, when we became friends, whether we went to school or lived in the same city at the same time, etc.). If FB would give me a draft to review, then I'd try sorting through my friends.

If they don't, then I simply won't share many things that I might like to share, just because it has to be broadcast to everyone.

<comment><USER6> If you have over 1000 friends I'm not surprised Facebook is difficult for you to use. 1000 friends is a frighteningly large auditorium of people. Facebook is far more usable at or under about 100 friends.

<comment><USER7> I'm very late to this thread, but I think this suggests perhaps the biggest problem that Facebook has:

Because the act of 'defriending' someone has such strong negative social connotations, it will continue to be very uncommon, and as a result the number of friends any given user has is increasing monotonically. I've had Facebook for years, and by friend count has steadily increased and is now nearing 900. The users who only have 100 friends now will eventually be in the unmanageable and uncomfortable position of having 1000 friends, and by that point I won't be surprised if my count is approaching 1500.

Facebook certainly seems to want everyone to have as many friends as possible (note the friend suggestion features), so it's only a matter of time before everyone is presenting themselves to such a large auditorium.

<comment><USER8> I was trying to clean out my friends list today on FB and it's clear that FB do not want you to do that (for obvious reasons). The only way I could seem to remove them was to click into each friend and click "Remove from my friends". It takes so long and was so tedious I just gave up!

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> If you want to answer this question, it's probably a mistake to look at Facebook itself. The biggest danger to successful technology companies is that the world will change in a way that makes them irrelevant. The new thing, whatever it is, will initially seem unimportant. By the time the incumbent realizes how important it is, it will be too late.

This sort of generic answer is not very exciting. It would be more exciting if you could say what the new thing would be. (To some people at least; to most it would seem a toy.) But that is quite hard to do.

<comment><AUTHOR> But Facebook has proven to be very vigilant on potential competitors and has been effective in snuffing it out by not just cloning them but improving the (feature based) startup's concept. Or they acquire them or its next smaller competitor startup.

My money is either in 1 of the 3 giants (GOOG, APP, MS) finally getting the social web right or Twitter.

But the problem with Twitter is it has fumbled countless times already and is only growing due to the strength and type of its community. So i have no confidence they can catch up to Facebook.

So Im guessing if its not the 3 giants, it will be an inter-operable social layer and a thousand private social networks.

<comment><USER9> Whatever it is won't seem like a competitor. It will seem as unrelated to Facebook's business as Google seemed to Microsoft's business in 1998.

<comment><AUTHOR> IMHO it will be related in a way that it will still be around replicating social interactions offline online.

The way i predict success in online businesses is how well they can replicate real-world actions and dynamic. The bigger and better the set of real human actions a startup can build a online counterpart for, the stronger it becomes.

Facebook is building online equivalent of verbs or actions you can do with people. so the more verbs it can do the more unstoppable it becomes.

What if someone can build the Facebook+ phone? i would also bet on that.

</comment></comment></comment></comment><comment><USER10> Eventually, complacency and failure to innovate will probably kill off Facebook. I know it's hard to look at Facebook now and see the possibility that they will be much less relevant in 10 years. But that will probably happen.

Prodigy, CompuServe, AmericaOnline, Friendster, Myspace and to a certain extent even Yahoo and Microsoft. At one point in time they were all pervasive, disruptive, and dominant. And now they've either gone or are having to pivot into a niche to maintain viability at a fraction of their former glory.

The internet and technology will keep growing. Facebook will get marginalized at some point.

<comment><USER11> I don't think 'Facebook will fail because other companies have failed' is the right answer.

<comment><USER10> No, I stand by my statement. I don't believe that Facebook will continually dominate the hearts and minds of the online world in the way it does now, in perpetuity. My reason given for failure was "complacency and failure to inovate" which I believe is the downfall of most great companies. The companies that I listed were examples of this phenomenon. You can really take this theory all the way back to the Dutch east India trading company if you want to. Evolve or die. In all probability, someday facebook will stop evolving.

Now I'm currently refering to facebook failing in the same way that "Microsoft and Yahoo" have failed. They still exist, are still (quite) profitable, but their relavency is fading.

As to apple. I've always wondered if the magic there will continue after Steve Jobs dies.

<comment><USER12> _As to apple. I've always wondered if the magic there will continue after Steve Jobs dies._

Apple did just fine while Jobs was on medical leave for six months or so.

<comment><USER6> Apple's secret to ongoing growth and success is introducing a major new product category every few years. Six months takes nothing out of that--the long term visionary work Steve Jobs does can be missed for six months without much impact. Six years and Apple would be in decline.

</comment></comment></comment></comment></comment><comment><USER11> Related from last week, my own Ask HN: <http://news.ycombinator.com/item?id=1580464>

One of the comments in that thread pointed to this presentation: [http://www.slideshare.net/padday/the-real-life-social- networ...](http://www.slideshare.net/padday/the-real-life-social-network-v2)

Which points out that the current Facebook does not match the needs of real social networking (ie. multiple networks, different levels of trust, etc.). These things are hard to implement, but I feel that whoever does get it right (along with a killer feature to get users, such as what Photos was for Facebook) will be a winner.

The other feedback that I have from average Facebook users is concern for privacy (ie. a prospective employer finding your party pics), inability to control access easily (ie. your grand parents seeing your photos from a party), an overflow of information and the feeling of a 'fad' wearing out.

<comment><USER13> > multiple networks, different levels of trust

I keep waiting for either Facebook to solve this problem, or for someone else to solve it. Google comes closest with their social network concept. On the one hand, I hope they pull it off. On the other, I try to minimize giving Google much more information about me than they already collect, so I'm not sure how comfortable I'll be on their social network. I suppose I'm hoping their success pushes Facebook to implement a similar concept.

<comment><USER5> I don't give a shit what Google knows about me.

Its like the big poker websites. If they get caught cheating, then EVERYONE will jump ship and they will die.

Google is (I think) too smart to truly violate my privacy, nevermind ads targeted to Prozac after that nasty breakup email.

<comment><USER14> In 2007 there was a big scandal on Absolute Poker where employees cheated internally and took millions off of players. In 2008, it was discovered that something similar was happening on UltimateBet. They refunded considerable amounts, I received a four figure refund but knew people getting as much as a quarter million back.

These two sites were semi-boycotted by the online poker community (twoplustwo.com is the HN of online poker) but this ultimately didn't work. The reason being that recreational/poor players didn't know about the scandal and continued to play there, which made the games so easy to beat that many players tossed their morals aside and made a killing.

<comment><USER5> I stand corrected ;)

But Google is different than poker sites, just imagine the uproar. Just for _gathering_ data for maps they've gotten in a ton of trouble.

</comment></comment></comment></comment></comment><comment><USER15> Here is the downfall of FB.

1\. FB will go public in the next 5 years. 2\. 5 years after that it will become filled with old people. 3\. There will be a reemergence of social networking startups trying to displace the then bloated solution with a more elegant alternative. 4\. One of these will win and become the next FB. 5\. Repeat.

<comment><USER16> RE: #2. Too late. Facebook is already filled with old people.

<comment><USER17> thats what she said.

<comment><USER18> If you're going to do a twss in a humourless forum, please at least make it a funny one!

<comment><USER19> What's a twss?

<comment><USER20> twss stands for: That's What She Said

<comment><USER19> Did you just make it up?

Or is that

dujmiu

<comment><USER19> Gee you guys are weird

I get -4 for asking what something is

and he gets +5 for saying what it is

never mind that if I did not ask a lot of people would have been completely lost

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER21> Just like a better search engine can't kill Google anymore, a better social networking site / solution won't kill Facebook. Open protocols won't kill it. A shiny new more exclusive social networking site won't kill it.

It can only die if:

i. Government intervenes with some crazy law.

ii. An entrepreneur somewhere thinks of a better idea for people to spend time on - instead of on social networking and quiz taking and game playing online. (Hmm... Maybe something like Hunch - but a lot more user friendly and socially interactive (an updates stream).)

iii. Facebook does something crazy and self destructive.

<comment><USER22> Sorry, but I couldn't disagree more.

I'm sure that Friendster and Myspace shared your opinion of themselves at some point in recent history. Facebook, Google, and any other site that is popular today will find itself as the next MySpace if their innovation slows. It won't take a government to kill Facebook, a disrespect for innovation will do the trick. There are thousands of startups with FB's users in their sights; all it takes is one with a good enough idea.

<comment><USER21> Thanks for disagreeing and extending the dialogue.

Friendster and Myspace didn't have a chance to figure out a way of making money that earns billions a year. Facebook has. That is why - Facebook is now in a position to not wither away like Friendster and Myspace. But thats just my opinion.

<comment><USER23> Claims for Facebook making billions seem exagerated to me.

You can see that Google is more or less established not because they are making billions but because there's an "eco-system" of companies who make money along with Google and can be expected to keep pushing that money _long term_ back to Google. The same might (or might not) be said about the iPhone. But you'd be hard pressed to find anything like a _stable_ ecosystem grown-up around Facebook. The only thing that grows on Facebook seems to be social games and those depend on FB's own growth. The claim of social network sites has been that they can sell focused eyes. But I haven't seen evidence that they can sell social eyes that will do anything.

It seems like even without a competitor, Facebook will become Yahoo in a few years - not dead but a site that can charge very a premium for ads or experience.

But hey, I'm just guessing...

<comment><USER24>
      Claims for Facebook making billions seem exagerated to me.

Google makes billions by knowing what you are looking for and offering more relevant ads. Now consider how much more Facebook does know about you and what it can offer for advertisers.

<comment><USER23> Google makes billions because it is the site where people go _when_ they are looking for something, often something to buy.

Facebook isn't going to make money _just_ by knowing general things about you. It still needs to be there when you are looking for something.

What do I care how targeted an ad is when I'm not at a location to buy things to begin with.

<comment><USER24> That's a good point.

</comment></comment></comment></comment></comment></comment></comment><comment><USER25> Orkut in Brazil used to be just as impossible to displace as FB, and it's in the process of being displaced. So it can be done. Come to think of it, the same happened to ICQ over MSN, and in fact the very very old out there might see Usenet over BB in the same light.

So, 1: it can happen.

But also, 2: it will not happen over a feature list. A friend once said to me that MSN displaced ICQ because all the dumb hot girls didn't grok ICQ. As awful as the idea is, i think there is something to it. Something like street- cred.

Which obviously comes from who and not what. I think the official term is "cluster effects". But then again, cluster effects only require that YOUR friends be there, not that everyone is. Which is to say: it's not about universality, but traction --- similar, not the same.

Finally, 3: should it? Why must FB fall? It is a walled garden, and it is stifling of competition, for sure. But the thing about walled gardens is that while obviously flawed from the collective perspective, from the individual perspective they are, well, gardens. As in pleasant.

I guess anything that "competes" with FB is as bad as, the "good side of the force" is not killing FB, but creating reasonable ways to mine it's data, like open protocols. Those will come, sooner or later, just like twitter and FB kinda interoperate, but they will not kill it, maybe at best make it less relevant.

</comment><comment><USER26> I think it's been mentioned before that standardization of social networking protocols might work, to the point that they become part of the Internet itself, like e-mail. I think it is only a matter of time (2-3 years) before the majority of Internet users will simply use distributed systems where their social data will be spread over several services (proprietary or open source), and the sharing of that data will follow a standard protocol (maybe a future blend of ActivityStea.ms, Salmon, and others).

Facebook will survive, most likely, but I think its influence will slowly wane to the point where they will be just another "media company" like AOL and Yahoo.

<comment><USER27> Has there been any standardization of those protocols yet? I know Diaspora was working on an entire site, but I don't recall them using any standards... Or even making them.

<comment><USER28> There are some draft specs on the activitystrea.ms site. FB seems to implement them in Open Graph.

<http://activitystrea.ms/spec/1.0/> <http://activitystrea.ms/schema/1.0/> [http://wiki.developers.facebook.com/index.php/Using_Activity...](http://wiki.developers.facebook.com/index.php/Using_Activity_Streams)

</comment></comment></comment><comment><USER29> The only thing that can kill facebook is failure to innovate and evolve with the tastes of its users. This would open the door to a competitor to become the new 'cool place to be'. It will probably take 5-10 years to find out if this is going to happen. The internal 'move fast, break stuff' development model seems explicitly designed to prevent this.

Barring that (or some sustained operational mishap -- downtime, security breach, etc.), network effects make it unkillable.

<comment><USER30> "It will probably take 5-10 years to find out if this is going to happen."

I won't even take 2 years. I will be surprised if several competitors don't emerge by the time Facebook goes public.

<comment><USER31> Why? Facebook is entrenched. Myspace was no where near the size of Facebook when Facebook came in and snatched the rug out from under them. FB has evolved to be _the_ social networking platform, just as Google has evolved to be the primary search engine of the internet. Google gets competitors all the time, but none that really pose any major threat to their core search business. I'd say that FB has reached that level of critical mass for their own business. When it comes to social relationships, they have won. When it comes to everything else around that (places, questions, yadda yadda) the game is still very much in play.

I wouldn't for a second assume that just because Facebook came out of no where that history is a _given_ to repeat. When FB came out of nowhere there was no web property with anywhere near FB's critical mass and momentum.

<comment><USER32> Entrenched in what? What's the compelling reason not to just walk away from your Facebook account? The scrabble game you're right in the middle of? Photo metadata? Messages about important parties?

Try just quitting Facebook cold-turkey. You'd be surprised how easy it is, and you just might like it.

<comment><USER31> I quit long ago. Unfortunately, you're missing the point that Facebook's entrenched power comes from a vast population of folks that enjoy it. To them, Facebook is the internet.

</comment></comment></comment></comment></comment><comment><USER33> Here's one I haven't seen mentioned: social network fatigue. People gradually realize that online friendships tend to be shallow, unfulfilling & transitory. They switch back to the old model where being somebody's friend actually takes some effort, and has tangible emotional and social benefits associated with it. FB becomes irrelevant. Cf. that Wilson Quarterly article that was on here a couple days ago.

Hey... anything is possible :-)

</comment><comment><USER30> Facebook will "die" when it is no longer unique. They have defined the template for how all future websites need to operate. And I guarantee within a few years developers will find ways to standardize (or at least ubiquitize) every important feature of Facebook.

Once every website has a universal login, contacts, and sharing features, then why would I use Facebook, when I can use X, Y, or Z which have lots of other features too? And then the cycle will start over again.

<comment><USER34> Exactly. The two moments of the cycle are: killer feature and protocols.

When a feature goes mainstream, it neads to be openly standartized (Take GUI toolkits, take instant messenging). Then another feature/innovation moves the "battle" elsewhere.

Facebook somehow made MSN instantly much less relevant by combining jabber to their social networking site. Someone else will surely do the same, by combining social networking protocols (plug Dispora++?) to something else interesting by itself for its data. Maybe more interactive appliances and webstores? Imagine for example every appliance (phone, computer, camera…) having an adapted 'view' of your dashboard and relations, backed by a distributed datastore with proper backup and cryto.

</comment></comment><comment><USER35> Innovator's dilemma + architectural conservatism + internal turf-war politics. As Facebook grows and the third-party innovators in their ecosystem become larger and more formidable, antibodies to innovation will be developed (higher barrier for new ideas to be attracted to the platform from the outside, higher barriers for new ideas to emerge and take root from the inside).

This won't kill Facebook it will just make it less relevant as a way of attracting innovator mindshare and new capital. As with Microsoft, this may take a decade or more to play out, and like Microsoft, by most measures (other than stock price) they'll still be considered a fairly successful business as this happens. Just one no longer growing insanely or having new Hollywood movies made about it.

What takes the mindshare? I don't know. Perhaps the marriage of consumer electronics and a collection of narrowly focused and ubiquitous services seems more likely to come together and be integrated into people lives than does belief that a walled garden "portal" conquering the world will continue.

Or possibly: social congregation around digital media. The return of the shared experience around the TV.

</comment><comment><USER36> It seems as if High School students are getting bored with Facebook as a whole, and it's becoming less trendy as their parents and grandparents join. If someone could come up with a site that would be more engaging somehow while retaining the exclusivity of the early-ish stages of Facebook, I believe they could potentially do very well.

</comment><comment><USER37> It doesn't seem too likely, but there could be an increase in privacy awareness in the common population.

Or it could become fashionable to do stuff in the real world again.

It might become like TV - mass entertainment, but not really exciting anymore.

Honestly, whenever I log into Facebook, I feel at a loss as to what to do. I just tried playing a game, and it asks for all my information including friends list, before I even know what it is all about. Uh, I just want to play a game... That kind of thing might start it's demise.

I suspect at the moment there is a lot of pushing and nagging to keep users active ("do you want to send a purple cow to your friends"?). Eventually people might just tire of being manipulated.

Even if not, and it remains the biggest thing on the net, there might still be a significant number of people who want something else.

<comment><USER38> I've never seen numbers on users vs. number of games played, but an anecdote: I and many of my friends are pretty heavy Facebook users but few of us play many, if any, games... just status updates, photos, and messages. But I also have a few friends that seem to play 50 games for every status update they post. I wonder if there are two groups of Facebook users, one that mostly chats and one that mostly plays.

That's how I tend to think of it at least. So if I were trying to make a Facebook killer, I might attack one of those two groups... provide either a vastly better social/chat/discussion/link-sharing scheme or a vastly better scheme to play games. But I don't have any ideas on either -- they both work pretty well apparently (the completely technophobic all have Facebook pages at this point!), which makes me think it'll be really tough to compete with Facebook.

And, besides, if you did compete that way, you'd still be at a disadvantage because of the network effect and that you appeal to only a subset of the existing Facebook crowd -- as I said, I don't play a lot of games, but I still want to be friends with people I remember from high school and that do.

<comment><USER37> It's so strange to me that all the technophobic people seem to deal fine with Facebook, whereas I have a really hard time with it. Oh well...

<comment><USER38> I've heard that so many times and I think it's really surprising too. I recall being much more confused when I first started, but now I feel quite comfortable with it. I'd love to see a study showing which things on Facebook are initially grasped more easily by the non-techies than the techies. Might cause us to make our UIs differently ("worse" to us) if we're targeting a mass audience?

</comment></comment></comment></comment><comment><USER39> Lack of revenue. It's killed more social networks than competition ever has.

</comment><comment><USER13> I still think (or hope) that something that better reflects a person's multiple networks can emerge and gain widespread use. For instance, I don't have all my coworkers on my Facebook friends list because I don't like to mix them in with my personal friends or family. That said, I don't use Facebook's wall all that much already because what I like to share with my family and what I like to share with friends are completely separate as well.

</comment><comment><USER40> THE ONE WITH THE POWER TO VANQUISH FACEBOOK APPROACHES

BORN TO A STARTUP THAT HAS THRICE DEFIED THEM...

oh, never mind

</comment><comment><AUTHOR> Here are a few of my solid guesses.

1\. A destination site that is closely tied to a mobile hardware device. (Apple, Google and MS have the closest chance with this). +1 if company has TV expansion to get the rest of the population.

2\. Implosion. Internal conflict most probably from investors/shareholders vs. leaders.

3\. Site-wide security breach that affected more than 30% of users and had serious and press-juicy consequences. The issue should persist for more than a week.

4\. Zuckerberg's death or serious illness. (non-issue if a strong leader emerges)

5\. Talent migration. This is inevitable as there will be fewer and fewer challenges left to excite sharp minds (3-5 years)

<comment><AUTHOR> To expand on #1.

MS has Xbox, Xbox Live, Windows but weak mobile + web products.

Apple has itunes, ios, macosx but negligible web prowess and zero social web domain expertise.

Google has strong web engineering output and Android, nothing else come to mind.

If you can apply a social web layer to their products which would come out stronger?

The answer to that might be the Facebook killer I think.

</comment></comment><comment><USER41> Facebook will either be killed by something fundamentally better - or it will be regulated to death.

Social networking is emerging as far too important a communication medium for one company to be allowed to dominate. It may take a few yeas for regulators to catch up, but if Facebook isn't unseated by something better and more open, it will get broken up by government or at the very least forced to inter- operate openly with its competitors.

I'm betting something better will come around before the government steps in, but either way I'd say Facebook will be taken down a peg or three within the next few years.

<comment><USER42> You have the weird assumption that government works for the people. In fact, government will likely help Facebook extend their monopoly in return for easy access to all the data that facebook collects on you.

If you use facebook often, especially from a mobile phone, then you are leaving a data trail for everything you are doing in your life, and everything your friends are doing. It is easy to apply that against you if needed, which is why a government will be happy to support facebook.

</comment></comment><comment><USER43> Spam and viruses.

Two days ago I awoke to find my status had been changed to "penis" overnight. I have no idea how this happened, since I don't share my account details with anyone or use it on a shared computer. It had an interesting effect on my friends, to say the least. Had it been changed to something worse, an attack like this could easily have led to damage to my social network of friends, which would definitely be grounds for me quitting Facebook.

</comment><comment><USER44> A few statements related to subject: 1) 500mln have joined FB. Why others didn't? Isn't it because FB has nothing really valuable to offer them?

2) If FB continue trying to become all-internet-in-one-company then they will soon follow Yahoo.

3) Future belongs to specialized social networks utilizing unified social protocols and APIs (not developed yet). LinkedIn is one of early birds. More to come.

</comment><comment><USER45> A site with a best relation with developers (that was one of the MSFT advantages in the past). Facebook often change APIs specs AND if you exceed their API calling limitation there is not space to buy more "credit" for small companies.

I think the companies embracing the facebook ecosystem and helping them to grow are in risk of future policies changes.

</comment><comment><USER46> A lot of people doing what I just did last week. I closed my Facebook account because FB is just huge waste of time.

</comment><comment><USER47> Take advantage of Facebook's negative brand image, and run attack campaigns discussing their history of privacy gaffes. Make sure that alternative service distinguishes itself in nearly every facet and doesn't merely copy Facebook's usability and functionality. No small task, but the correct approach.

</comment><comment><USER48> Maybe, just maybe something like stackoverflow could be pulled on Facebook. I mean someone who already has gained lots of street cred building a working replacement. Not sure if even that could work. FB is not as universally hated as the site that stackoverflow killed.

</comment><comment><USER49> Facebook succeeded because it's timing was perfect. It was released right about the time when internet officially went mainstream. Drops in high speed internet prices combined with a crop of Web 2.0 applications promising a more dynamic web caused people to digitize a lot of their lives.

Facebook was able to ride this wave by marketing itself as an exclusive club. It was you and your friends home away from home. It beat out MySpace because of its focus on "networks", allowing entire schools of students to quickly have contact with each other.

I think a Facebook killer is unlikely, unless there is another wave of increased internet activity (which I don't see happening any time soon). However, niche social websites are on the grow and are gaining with popularity. Perhaps if enough of these are created, it'll engulf Facebook in popularity. But then Facebook could simply revert back to its "school" niche that it used to focus on three years ago.

<comment><USER50> Er, more important than that (I think) are the failures of Friendster's management to manage growth and MySpace's sale to News Corp.

The fact that Facebook beat MySpace in the US is astonishing, IMO.

</comment></comment><comment><USER36> I just made a survey to collect things that people like and dislike about Facebook: <http://news.ycombinator.com/item?id=1603643>

I'll share the results if I find anything good.

</comment><comment><USER51> Facebook is Facebook's greatest threat. Consider Myspace: it was largely because they let their product deteriorate that users switched to Facebook.

</comment><comment><USER52> a new generation of kids.

</comment><comment><USER53> At this point...only Facebook can kill Facebook.

For reference, see Yahoo.

Google didn't kill Yahoo. Yahoo did.

</comment><comment><USER54> too many games like Farmville? (similar to music on myspace?)

</comment><comment><USER55> Facebook itself

</comment><comment><USER56> management. that is where the death of something successful is always born.

</comment><comment><USER57> VPs

</comment><comment><USER58> The widespread use of ad-blockers could kill Facebook, as ads are their main source of revenue.

<comment><USER13> Apart from myself, I don't know anyone who uses ad-blockers. Almost everyone I know uses Facebook, including housewives who don't even have a computer in their homes. I don't doubt that a lot of people use ad-blockers, but I can't imagine there's a big enough overlap between ad-blockers and Facebook users to bring down Facebook.

<comment><USER58> Installing ad-blockers could be a nice sideline business for those computer stores that offer "Virus and spyware removal - only $30" --- they could extend it to "Virus, spyware, and ad removal - only $40"

</comment></comment></comment><comment><USER59> Time.

</comment><comment><USER60> What can kill Facebook? Burnout. And it will eventually happen.

<comment><USER61> I believe it.</comment></comment>


Simplicity Made Easy - <AUTHOR> http://blogs.perl.org/users/damian_conway/2019/06/simplicity-made-easy.html <comment><USER2> If people wonder, this is NOT the same notion of 'simplicity' at all than in the classic 'Simple Made Easy' talk: [https://www.infoq.com/presentations/Simple-Made- Easy/](https://www.infoq.com/presentations/Simple-Made-Easy/)

I think a more relevant title for this post would be: "any paradigm made straightforward in Perl 6".

</comment><comment><USER3> > So, whether you prefer an imperative, functional, object-oriented, or > pipelined approach

The problem with this: if you give people a multi-paradigm language, they'd be using all of them. Often in the same codebase.

<comment> dan-robertson I think people should use all of them. Some problems are much better expressed with logic programming, others with inheritance, others with polymorphic functions.

There is one school which says people ought to be giving a powerful programming language to better write powerful programs in the best way. The idea is to amplify what a single programmer can produce.

Another school says you should give programmers a non-powerful language because they aren't to be trusted. The goal is to make changing enormous codebases easy (or maybe to maximise lines of code).

Perl fits into the first category and java is representative of the second. So I think this argument isn't so much about Perl as it is a complaint about its philosophy. It could equally go on an article about the next c++ feature.

<comment><USER4> I'd like a definition of "powerful" that is more than just "agrees with my personal prejudices"; Perl lacks the power of a strongly checked type system, for example.

<comment><USER5> All the examples in the post are written in Perl 6 though, which does not lack it.

</comment></comment></comment></comment><comment><USER6> Frankly speaking its surprising Perl 6 hasn't taken off yet. Its a language which has Java like potential. Not sure where the efficiency/speed story has gone so far(Which was preventing adoption?). But pretty much any one I have shown the language has been floored by it so far.

I guess a killer framework is lacking too.

<comment><USER7> Surprising?

1) The Perl 5 community itself was dwindling before Perl 6.

2) Perl 6 took a good chunk of time to arrive.

3) It's still not 100% baked.

4) Perl 6 is mostly a different language.

5) Perl in general doesn't have a good "name" with todays devs

6) There's no killer app

7) Python got the data/science niche, Node got the web/services niche, Go got the backend niche - what's left for Perl 6?

8) The libs are also lacking.

9) Too complex to begin with (kitchen sink offering), at a time when devs started valuing simplicity more than before.

10) Maturity of implementation, tooling, support, etc.

11) No major commercial backing...

<comment><USER6> >> 1) The Perl 5 community itself was dwindling before Perl 6.

[https://metacpan.org/recent](https://metacpan.org/recent)

More people are writing Perl everyday than may be even Java, Let's put this Perl is dwindling argument to rest. Perl's niche, more like empire is glue language for anything Unix. That is a huge empire to govern on. Unless Unix is going away, Perl is here to stay.

>> 5) Perl in general doesn't have a good "name" with todays devs >> Node got the web/services niche

Most dynamic languages are in the same bucket. Today everybody is hesitant to start any serious big project in a dynamic programming language. Even in case of JavaScript most things will move to TypeScript eventually. And that too is more or less a totally new language.

>>Go got the backend niche

Go got nothing. Heck, merely shell scripting exceeds Go usage by several multiplicative factors.

>> 7) Python got the data/science niche

Most of the use case for Python's 'Data science' library is basically spread sheet automation. Perl has been used to that kind of work since early 90s.

>>what's left for Perl 6?

Firstly, and entire universe exists outside of web development. And most that universe is far more exciting than majority of api and json plumbing work in web dev work.

Secondly, Not sure, but no one can rebut an argument that says there is no scope for any new software to be ever written anymore.

<comment><USER7> > _More people are writing Perl everyday than may be even Java, Let 's put > this Perl is dwindling argument to rest._

Err, that's just a link to a submissions page. That's not a statistic, and it doesn't even show if Perl kept its people or lost them. Perl could even have more people than 1999, but much smaller mindshare given how hugely larger the dev market is in 2019 vs 1999.

Actual long term analysis look like "Perl is dwindling" is right:

[https://insights.dice.com/2018/04/05/perl-uncertain- future-t...](https://insights.dice.com/2018/04/05/perl-uncertain-future-tiobe- index/)

> _Perl 's niche, more like empire is glue language for anything Unix. That is > a huge empire to govern on._

And that "empire" is already lost for Perl. Dev ops have moved to Ansible, Puppet, Chef, etc, and Python and other languages are used as the glue. The "Perl gluing admin" is a relic.

> _Most of the use case for Python 's 'Data science' library is basically > spread sheet automation. Perl has been used to that kind of work since early > 90s._

Which is irrelevant as to who does it now (and it's not even right, Pandas, Numpy and co are not "spread sheet automation").

> _Most dynamic languages are in the same bucket. Today everybody is hesitant > to start any serious big project in a dynamic programming language._

Actually millions start serious big projects in JS, Python and other dynamic languages. There's a movement towards static typing but not that strong in actual practice. Typescript is tiny compared to the size of greenfield JS being written.

> _Firstly, and entire universe exists outside of web development. And most > that universe is far more exciting than majority of api and json plumbing > work in web dev work._

Also far smaller, devs wise. And I didn't just mention web work, but also data science, microservices, and so on.

(And my point wasn't that Perl 6 can't do those, but that people aren't doing those with Perl 6 -- people as in, "people in quantities large enough to matter").

<comment><USER6> You tossed out a statistic on library submissions and are debating psychology(mindshare). Nothing is dwindling on the long term for Perl.

>>Dev ops have moved to Ansible, Puppet, Chef, etc, and Python and other languages are used as the glue.

This is glue? Sorry but we seem to come from very different worlds.

>>Also far smaller, devs wise.

Wow, Just wow!

You probably won't like to hear this, but this how most of the software world works:

1\. C based backend language: Java. C Based embedded/speed requirement systems: C/C++

2\. Glue: Shell/Perl

3\. Web dev: Node, Java(Webservices)

4\. Lisp Based languages backend: Clojure/Racket.

5\. ML based languages backend: F#, OCaml, Haskell.

6\. Database: SQL.

There are other special languages which rule their domain. But this is how bulk of the world works.

Data science area is still a extremely small part of even the web dev world, let alone the broader software ecosystem.

</comment></comment></comment></comment></comment><comment><USER8> Interesting examples. Thank you!

However, I'm not sure having to parse 3-4 very different syntax constructs to arrive at the same mental model is an advantage.

I do appreciate the terseness though.

</comment><comment><USER9> oh wow, the "say" keyword is quite nifty. also, straightforward iterative solutions often lead to inefficient implementations. which is why most of us fall prey to complicated implementations that use all the tricks in the book... i don't know much about perl anymore, but in some languages, creating a new date object every time through that loop might not be space efficient.

<comment><USER10> The magic isn't really in _say_. _say_ is just _print_ with an automatic linefeed at the end (and, two fewer keystrokes for the keyword). Perl's _print_ (even in very old versions of Perl, dating long before _say_ arrived) also accepts expressions as arguments, so you can write: `print join "\n", @array;`

Obviously, the Date (and other) type stuff is new to Perl 6, and is quite lovely.

<comment><USER7> > _Perl 's print (even in very old versions of Perl, dating long before say > arrived) also accepts expressions as arguments, so you can write: `print > join "\n", @array;`_

How's that different from any other language? Isn't the expression argument evaluated before being passed to print, so at that point it's just a string anyway?

      >>> print ", ".join(["a","b","c"])
      a, b, c

Or, if the point is about omitting the automatic newline, comma in python suppresses it:

      >>> print "\n".join(["a","b","c"]),
      a
      b
      c

<comment><USER10> It's not (at least most modern languages have it). I was just saying that `say` isn't the interesting thing in the examples given.

</comment></comment></comment></comment><comment><USER11> perl6 seems heavily oriented toward a dsl metalanguage. Not that I'm against it.</comment>


Sun Microsystems Reports $1.7 Billion Loss and Falling Sales - <AUTHOR> http://www.nytimes.com/2008/10/31/technology/companies/31sun.html?_r=1&partner=rssnyt&emc=rss&oref=slogin <comment><USER2> I've watched Solaris boxes slowly being replaced by Linux when they reach their end of life over the last decade. And Linux is starting to become the default for new projects at a lot of places. But there's a few industries you still expect Solaris to be popular: London banks and funds.

The other day I applied for a job at a London hedge fund - a household name to a lot of folks in the UK. 20% Solaris, 80% Linux. Unusual right now, but I think it's a sign of things to come.

Sun is too big to become just another x64 vendor. They're not making money from Java, and Solaris revenue is going to go down, because a great tracing framework and a filesystem aren't enough to tempt people from a platform which uses generic hardware (a 32 core x64 is more than enough for most people, a 256 core SPARC is very, very niche) and runs both OSS apps and the proprietary crapware they used to run on Solaris SPARC.

<comment><USER3> This marketing video from NeXT back in 90 or 91 is informative: <http://www.youtube.com/watch?v=p9dmcRbuTMY>

They were pretty right about where the workstation market was going.

Linus started Linux at about the same time.

In the 17 years since NeXT evolved, NT was born, and Linux begat RedHat, Ubuntu, and Google. Meanwhile Sun just hasn't adapted enough to stay competitive.

</comment></comment><comment><USER4> I think Sun is doomed, but I've been saying that for the past 15 years.

Has anyone here seriously recommended any Sun purchases in the last 5 years?

Of those who answered yes, would you make the same recommendations now?

<comment><USER5> > I think Sun is doomed, but I've been saying that for the past 15 years.

I think Sun as we know it is doomed, but they still are sitting on a ton of amazing IP - Current generation of SPARC, Solaris, Java, MySQL, etc.

Question is where do they go from here? There are strategic mergers with outfits like IBM and Fujitsu, but I don't think they are compelling enough... I think those will only really come about if Sun detonates and needs to be sold off - which I don't think is likely right now.

They also appear to have bypassed the whole "cloud" bit entirely. Even if you're skeptical on the cloud it might be a risk worth taking for Sun. It's a new market at least, and it's a growing market. They've got the hardware experience, Java and MySQL. These would all make a good basis for a cloud play.

</comment></comment><comment><USER6> Kind of sucks they bought MySQL.</comment>


Ask HN: Best book or material for a newbie to RDBMSs? - <AUTHOR>

I'm about to start teaching a course on data warehousing (dimensional modeling) with a textbook that presumes prior knowledge of relational databases and SQL.  I've been using SQL since the 1990s so it's hard for me to remember the way new learners approach it.  Can anyone recommend a good, cheap book or other material (online tutorial?) that could get someone up to speed on ER diagrams, SQL, and basic normalization, without lots of chapters on requirements gathering, project management, etc?  I'm looking for something brief to supplement the course, not to replace the dimensional modeling textbook. <comment><USER2> I like this for introductory SQL:

[http://philip.greenspun.com/sql/](http://philip.greenspun.com/sql/)

It was written specific to Oracle (and vintage 1990s Oracle at that), but for the most part that's not terribly significant.</comment>


Don't Be Lazy, Use HTML Labels Correctly - <AUTHOR> http://blog.goodsense.io/2012/12/07/dont-be-lazy-use-html-labels-correctly/

<comment><USER2> Whatever you do, don't make clicking the label do something other than check/uncheck the box, like how Xfinity's boneheaded login page brings up a 'help' screen when you click on 'Keep me signed in': <https://login.comcast.net/login>

<comment><USER3> Also, when that help screen appears, everything else on the page darkens out _except_ the CAPTCHA (presumably because it's done in flash). It probably leaves some users confused about what the dancing text has to do with the help page, and what they are supposed to do with it in that context.

<comment><USER4> also why does the tooltip say the same thing as the link itself?

<http://i.imgur.com/fdkpt.png>

</comment></comment></comment><comment><USER5> <input type="checkbox"/>Stuff

is easier.

<comment> thomas-st Not only is it easier and doesn't require the use of an ID, it also allows you to click in the space between the checkbox and the label text.

<comment><USER6> I always remembered this as being "invalid" HTML, but a quick Google search turns up nothing. Can anybody shed some light?

<comment><USER7> Are you thinking Improperly nesting elements?

        Some text here

In that case, the label tag surrounding the input tag doesn't violate this rule.

</comment></comment></comment></comment><comment><USER8> You don't have to link the label to the form element via ID. It's simpler to nest the element within the label.

<comment><USER9> You may argue that it's simpler (I'd argue it's not), but either way nesting elements inside labels usually breaks assistive technology: <http://www.w3.org/TR/WCAG20-TECHS/F68.html>

That's a good reason to use the format the author suggested instead of nesting.

<comment><USER10> Why can't assistive technology figure out what a label with a single nested control refers to? The browsers seem to do it just fine.

Once a website reaches a certain scale (especially with rich web apps), global DOM id's become an almost impossible headache to deal with (because of multiple views which duplicate id's, coordination of global names across hundreds of files, etc.).

Global id's are basically an antipattern, whereas labels with nested controls have always seemed pretty workable.

<comment><USER11> Once a website reaches a certain scale you better have a backend that generates your forms already.

Since input elements already have unique names/values, otherwise the backend wouldn't know what you've posted. You can use a (scrambled) version of this, plus a sequence number if required in case of multiple inputs with same name.

Remembering to manually insert the label for every radio input is just bound to fail.

<comment><USER10> On a large-scale rich webapp, input elements _don't_ have to have unique names, because you're not posting forms directly to the backend.

Instead, you identify your input elements with classes, use something like jQuery to read the values from elements with certain classes from inside a specific DOM element only (not globally), and then POST to the server using AJAX. Nowadays, user interface elements have no need to be tightly coupled with HTTP parameters.

ID's worked in the era of non-JavaScript. But for large dynamic sites where JavaScript is required (webapps, etc.), I haven't used ID's anywhere for years, thank God (like I said, an antipattern).

</comment></comment></comment></comment></comment><comment><USER12> Perhaps LinkedIn is doing this on purpose? It seems like this is a feature they would not like to see used very much, and by A/B-testing they discovered that people use anonymous posting way less when confronted with such a non- standard checkbox label behavior.

I think "normal" checkbox label behavior is very much ingrained in the web development community, thats why I suppose the developers at LinkedIn know about it as well.

<comment><AUTHOR> Perhaps, but the other options to make it not anonymous don't allow label clicking either.

</comment></comment><comment><USER13> > I'm surprised that LinkedIn doesn't use labels correctly.

I'm really not. My experience with LinkedIn in terms of production quality code has been quite bad - not being able to unsubscribe from emails because of bugs that crash the website among the most annoying one.

</comment><comment><USER14> My guess is that this isn't because of lazyness but because of getting users NOT to check something. I often find that opt-outs of social sharing, sending statistics or something else that the application will benefit from isn't linked to the label. Maybe because they want to make it harder to check/uncheck?

</comment><comment><USER15> I am lazy. Django forms do it for me.

</comment><comment><USER16> I've always used nested elements within a label tag, I've been advised to do so by people specifically concerned with HTML accessibility issues.

</comment><comment><USER17> Especially important when you have mobile users filling out forms.

</comment><comment><USER18> Let me try with embedded ruby:

<%= label_tag :is_premium, 'Toll free? (e.g. 1-888- __ _-_ __*)' % > <%= check_box_tag :is_premium, true, params[:is_premium] %>

Am I doing it right?

</comment><comment><USER19> I'd love to see a browser plugin that corrects this. There are so many sites that just don't bother.

</comment><comment><USER20> This is the first time I've heard of labels. A lot of us learned html from googling and ending up on w3schools, which is not the best reference. <http://w3fools.com/> has a good list of the erroneous info.

<comment><AUTHOR> Unless you're a frontend developer, most people don't use labels. That and fieldsets. I still don't use those.

</comment></comment><comment><USER21> At Polyvore, we wrote our own centralized form generation library which always emits  with the correct behavior.

Another neat thing it does is optionally render dropdowns with fewer than 3 choices as radios -- 1 click to select vs 2.

<comment><AUTHOR> That's impressive. Dealing with forms is harder than most people think. Ever try positioning or styling input fields? It's not trivial like other html elements. That's why wufoo is popular and bootstrap puts so much effort on forms.

</comment></comment><comment><USER22> They use labels (correctly) in almost all the forms on the site except this one. They might have gone through the trouble to take it out on purpose.

</comment><comment><USER23> This really bugs me. My bank's website doesn't use them correctly!</comment>


Ask HN: Does anybody else get bad carpal tunnel/RSI? Any tips? - <AUTHOR> I have been getting very painful and numbing carpal tunnel in my right hand. Struggling to type this atm.<p>Anybody else? Any tips? <comment><USER2> There's lots you can do. First: stop typing. Get voice recognition software. It is possible to program with VR; I did it for a year or two, by using ViaVoice's Java bindings to control emacs. (I stopped when I no longer needed it, not because it didn't work.)

Second: get a good keyboard. The Kinesis is a good first step. You may find that curved keyboards like the Microsoft Natural don't work for you--when I tried one, it required me to stretch my fingers further, which hurt more.

Third: find a doctor. (Actually, call the doctor first; but you should be helping yourself while waiting for the appointment.) If you're in the Seattle area, I can recommend Dr. William Ericson [1]. He did my surgery (years ago, before he moved to Seattle). Some time back, he figured out that a lot of the patients he was seeing, who weren't responding to carpal tunnel treatment, had something in common: extra ligaments near the elbow that pinch the nerves that go through the carpal tunnel when you turn your hands face-down. He can cut those ligaments--they're totally unnecessary; 75% of the population doesn't have them--and the problem goes away. Worked for me--very minor surgery; I was conscious for the whole thing.

[1] <http://www.wbericson.org/>

</comment><comment><USER3> 1) Go to a doctor, and get diagnosed as to how bad things have gotten. You catch it early, and you just change behavior. A little later? Cortisone injections. Too late? Surgery that may cripple you. 2) Get your doctor to get you to a physical therapist that specializes in this. When I did mine I was in Silicon Valley and they were everywhere, but where you live YMMV. 3) Listen to the physical therapist and do what he/she tells you. _ignore everybody else here._

For me, my #3 was "Code only, exclusively, and forever on a Kinesis Ergo or Maltron Keyboard, and never, ever, ever, for any reason, use a mouse; only a Logitech Marble Mouse". That might be the right story for you. It might not. My particular problems are with the messed up way I type on a flat (or flat- ish) keyboard, and wrist pronation from bad mouse usage.

Here's the thing: _My Symptoms Are Useless To You_. As much as this thread could turn into 50 people recounting their RSI stories, it's rubbish to you. Follow my #1, #2, and #3, and you'll be fine. Ignore any of them, for any reason, and you may cripple yourself.

There's a time and a place for "Ask HN". This isn't. This is a time a place for "Ask a bloody Doctor".

<comment><USER4> This is precisely what I came to post. I average 60 WPM for 4 hours a day straight on some days, so I inevitably get it but not as bad as most.

I'd go as far as to say stop what you're doing and move away from the keyboard, make an appointment to see the doc. Every second the poster is here they're just exacerbating the problem.

</comment></comment><comment><AUTHOR> Update: thanks for all the comments, absorbed a lot of info.

This post was v interesting:

[http://aaroniba.net/articles/tmp/how-i-cured-my-rsi- pain.htm...](http://aaroniba.net/articles/tmp/how-i-cured-my-rsi-pain.html)

check if out if you haven't read it. I am ordering the book today.

The author of that post talks about a pain that is difficult to distinguish from a sprained wrist or ligament damage. Mine is very different - it is a numb sensation that has a tendency to move around from the wrist, elbow and up into the shoulder.

I ended up going to emergency and getting a cortisone shot, which helped a lot. What I found out that RSI is a cause, pain or numbness are the symptoms, but the root problem can be any number of things. It is best to get it properly diagnosed by a doctor and there is a bit of trial and error involved. At the moment the cortisone is simply treating the symptoms.

I also found that rest doesn't help. I had the flu for 3 days earlier this week and I worked very little during that time - but the pain persisted. The first signs were a week ago but it really flare up last night and today. It was the worst only a few hours after getting back into work after being ill.

I adjusted my ergonomics a while ago - I went from constantly being in a leaning back and feet up position with keyboard on my lap to having my feet planted, arms straight etc. Changing this still didn't prevent the most recent flare-up.

Thanks again for all the info, comforting to know that there are a lot of other ppl who experience similar problems and a lot of people have experiences that they shared.

</comment><comment><USER5> I did have this problem in the past. I fixed it by switching to a Microsoft Natural keyboard (the $40 one). That got rid of the problem for me after about three days.

At first I thought the improvement was due to the ergonomic form of the keyboard, but after using my MacBook Pro's built-in keyboard for months with no pain, I now think that my problem was just that my original cheap, foam- sprung keyboard was just awful for typing. So maybe the answer is to just get a better keyboard.

Additionally, posture and angle of forearms to the keyboard surface is also a factor with any keyboard. Your forearms should be parallel to the ground and your keyboard flat, at least that's what works for me. If your chair is too low this might be forcing you to contort your hands in order to type.

For example, my MacBook Pro's keyboard works fine for me, but the external Apple wireless keyboard (with the same type of keys) causes RSI very quickly. Since the keys are essentially the same on both, I'm sure that this is because the external keyboard is angled (higher in back where the batteries go) while the laptop's keyboard is flat.

</comment><comment><USER6> I got a piano and started playing difficult pieces on it. The pain and inability to squeeze things went away utterly completely.

</comment><comment><USER7> I have had two runs of hand/finger pain. The most recent bout was the result of using a mouse and a not-very-good keyboard. I threw out all the mice and got a trackball and use it with my left hand, even though I am right-handed. I acquired a Kenisis keyboard and use that. I also paid attention to my wrist positions, and the height of the chair. Over the period of many months, the pain slowly went away and now there is none. I still use the left-handed trackball and at home I use an Avant Prime (remember the omnikey/Northgate keyboards?) and so long as I keep the wrist position good it works. At work, I have the kenisis.

(I used to have a kinesis at home, but an errant cup of tea (with honey) kinda put an end to that one. Now I do more typing at work.)

Dvorak would have not helped in this case. It was all about gripping the mouse and bad wrist juju while typing.

</comment><comment><USER8> I had some issues that I localized to my right index finger. I apparently click a lot. So my mouse was the main issue.

I did end up buying a MS ergonomic keyboard which I liked, but ultimately, a new mouse is what was the best solution for me.

[http://www.amazon.com/3M-Ergonomic-Mouse-SMALL- MEDIUM/dp/B00...](http://www.amazon.com/3M-Ergonomic-Mouse-SMALL- MEDIUM/dp/B00008KWWG)

(note it comes in large also). I tried a couple of other designs, but I liked the 3M one the best. It's weird at first, but works well. Thumb for left/right click. I also use the button that's on the stick for scrolling. It's sort of a grab and scroll motion, that works really well. I had to use a utility to implement it: <http://www.marcmoini.com/sx_en.html>

</comment><comment><USER9> I'm a technical writer and always treated rsi as an unavoidable occupational hazard. Then I read this: [http://aaroniba.net/articles/tmp/how-i-cured-my- rsi-pain.htm...](http://aaroniba.net/articles/tmp/how-i-cured-my-rsi- pain.html)

What worked for him also worked for me.

</comment><comment><USER10> There is no one magic bullet for RSI. Mine got so bad that I've had the surgery for it. And that hurts. Or maybe I just have a low pain threshold. But after the surgery, it was fantastic. If you can afford it (i.e. insurance or have the money), I'd highly recommend you go to a doctor. It might not require surgery and only physical therapy. After my surgery, my physical therapist and I came up with the following list for me. YMMV.

Use a keyboard without the number pad. With no number pad, your hand doesn't have to move far from the keyboard to get to the mouse (trackball in my case).

I've got foot pedals programmed to be the control and alt keys so I don't have to move my fingers off the main keys at all (except for shift. I never could get used to using a footpad for shift). I've been experimenting with a foot pad for backspace as that is the longest throw I have right now.

Exercise your fingers. Get one of those stress balls and squeeze it. For a long time, I used electronic todo lists or wrote pseudo-code in VIM when thinking about an idea. Now I use notebooks, and I've taught myself to write with both hands (left hand is weak hand. I can read it, but no one else can :). So when I'm stuck or need to make a list, I'll write out what I need to accomplish. I'll squeeze the ball with whatever hand I'm not writing with.

Stretch your fingers and wrists. Before I start work in the morning, I'll stretch my fingers and wrists for 10 to 15 minutes.

I've got a stopwatch to time myself. I'll only code for 1 hour and 50 minutes. Then I'll stop, do nothing for 10 minutes (absolutely nothing. I'll just sit with my eyes closed. If I'm pairing, I'll turn over the keyboard), and then do my stretching exercises for 10 minutes.

One of my biggest contributors was posture. I'd sit slumped so my arms were way higher than they should have been. I've now taught myself to sit upright. I still slip at this sometimes, but I can generally catch it before I've done it too long.

Like I said before, those items helped me. I came up with that list with the help of a physical therapist that watched me work and made suggestions. Some of them may or may not work for you.

</comment><comment><USER11> Yes, it's the worst. My sister and another friend have it pretty bad from working in a coffee shops. Mine hasn't been bad, just a little uncomfortable at times.

It can help when it's really bothering you to wear wrist braces at night to make sure there is no movement and give the inflammation some time to go down. The only other fixes I've been told are regular wrist exercises and obviously making sure your work area is ergonomic. Have a look at some example exercises online, building up certain muscles can drastically help you out.

Good luck with it, hopefully you find something that helps.

</comment><comment><USER12> Used to have it really bad then started doing more pull-ups and push-ups to strengthen the forearm muscles. While I still have occasional discomfort, the pain has disappeared.

<comment><USER13> Same here. As soon as I started a basic weightlifting program, my mild pain disappeared.

</comment></comment><comment><USER14> Right-hand-only pain is likely to be mouse-related rather than keyboard- related (assuming you mouse right-handed). Try different pointing devices and see what feels best for you. I switched to a trackball (currently a Kensington "Expert Mouse") years ago at the first sign of pain, and haven't had any trouble with my mousing hand since. (I also use a Kinesis keyboard, and highly recommend it especially for emacs users to move the modifier keys to your thumbs)

</comment><comment><USER15> I notice it starts to come on from time to time. Starts with dull pain in the outside area of my wrists (wrist/arm juncture on the pinky side of the hand).

Icing at night works wonders for me. RSI can be due to inflammation in the tendon sheaths. Put an incepack (I wrap my in ace bandages to keep them on) for 15 minutes every couple of nights. Don't ice too long, don't let the ice touch your skin, or you'll risk some cold burns.

</comment><comment><USER16> I was having severe pain with this last month. Some steps that I took that have helped -

1\. Minimize computer usage - the best way to deal with RSI is to rest your hands. So if you are doing something at the computer that you can avoid, stop doing it.

2\. Avoid using a laptop keyboard/trackboard. Most of them are ergonomic disasters. I use a kinesis advantage pro now.

3\. Mild exercise like yoga or cycling.

4\. xwrits to take frequent typing breaks.

</comment><comment><USER17> You could try a different keyboard layout. Dvorak is pretty good, and there are a couple others as well:

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

Won't help your current symptoms get better, but could help in the future.

</comment><comment><USER18> Here's a list of things you can try: [http://blog.chromarati.com/2010/04/rsi- my-problem-child-10-t...](http://blog.chromarati.com/2010/04/rsi-my-problem- child-10-tips-for.html)

</comment><comment><USER19> About once a year I get it badly in the wrist I use with my mouse.

Switching the mouse to the other side really helps. Slowly it goes away.

</comment><comment><USER20> I started getting it in the 8th grade, and this is what I've done to this point (sophomore year of college):

-In 10th grade, I switched to Dvorak, more-or-less on a whim. After two painful weeks of hating using a computer, I was semi-fluent in typing and could resume normal use. The key was forcing myself to use it for everything. Although this may be wishful thinking, I feel I have become able to type much more comfortably while using Dvorak, and my wrist pains lessened for a few years.

-I have tried to remove the mouse from most of my workflow; I do this primarily by using keyboard shortcuts and Emacs, although last week I started learning how to use vim because A) (proficiency with) two editors are (is) better than (proficiency with) one, and B) its commands seem shorter, which I think might help.

-When I do use a mouse, I now use an Evoluent vertical mouse; this has been one of the most important changes, and relieves much of my wrist pain. I've realized now how unnatural it is to have your hand flat while mousing.

-This summer, I used a Kinesis Advantage Pro contoured keyboard, and pending financial feasibility (e.g. I'm a college student and I owe $23,000 next month) I'll be buying one for my desk; that thing worked wonders.

-In the meantime, I use a Microsoft Natural 4000 ergonomic keyboard, which helps; I'm looking into cutting off the numpad so that the mouse isn't so far off to the right. It's been done before, there are resources online; it's not that hard.

-I've migrated much of my work to a standing desk; this makes it much easier to get proper posture (IKEA Fredrik desk). I have several barstools I can lean on or sit on at the proper height, if I need to rest, although I find I'm more productive standing.

-I stopped playing video games. (The pain persisted, but video games were the worst transgressor) (I didn't play much, but tetrinet / puyo puyo / etc can be pretty nasty to your hands and wrists)

Of course, all of these things probably have the sum usefulness of taking regular typing breaks and doing the proper stretches, which a doctor I met with years ago told me I should do; however, I've found myself to be quite bad at keeping up with that, both enforcing breaks and doing stretches for the duration. I like all of these options because once I set them up, I don't have to do anything (or at least, very little) to maintain (in my opinion) healthy habits for my wrists.

Maybe someday, though, typing breaks and stretching. Never push through the pain; it'll only make it worse next time. When it gets really bad, step back and stop. I never take Advil or any anti-inflammatory for the pain because I don't want to power through it and do damage when I should've listened to my body.</comment>


Star Wars in the JS code on healthcare.gov (search for Chewbacca) - <AUTHOR> https://www.healthcare.gov/marketplace/global/en_US/js/ee/dummyData.js

<comment><AUTHOR> When searching [https://www.healthcare.gov/marketplace/global/en_US/js/ee/du...](https://www.healthcare.gov/marketplace/global/en_US/js/ee/dummyData.js), you can also find: * Han * Solo * Leia * Organa * Optimus * Prime

<comment><USER2> Someone is obviously bored in Killeen,TX.</comment></comment>


Ask HN: What's the most effective way to protest in the wake of the NSA leaks? - <AUTHOR>

Some articles on HN have outlined ways that individuals can increase their own online privacy using various services and tools. But none of those things really "stick it" to the politicians or government officials who sanctioned and ran all of this.
There has to be a better way to protest and say "this isn't okay" rather than simply hiding yourself from the current, known methods of surveillance.
Ideas? <comment><USER2> Its pretty obvious we stuck it to ourselves by voting in self important bureaucrats time and time again, so changing that would be a good start.

Protests probably won't do much, hitting the sponsors of politicians would be good though. You'll note that MoveOn/etc haven't really made much noise about this so might be good to call them out as the sockpuppet that they are. I'd say protest against the taxes that pay for this kind of thing, but that seems antithetical to a lot of people...

<comment><USER3> Protests are good because they 1) keep the story alive, 2) make it more obvious to ordinary people out in public, and 3) indicate to others that this time we're really angry and possibly get more people to join in as well when they realize it's not just going to fade away after a day or two like always has before.

<comment><USER2> This story has not and will not die in the tech community, but wilful ignorance has kept people from paying attention to it for the last decade.

<comment><USER3> It's not guaranteed to not die—revelation after revelation has been coming out for nearly the past decade, if not longer, and people always forgot and moved on, or stopped caring—even in the tech community. It's only now, with so much information at once, and putting it all together, that it's gained enough momentum to stay in the spotlight for longer, hopefully.

</comment></comment></comment></comment><comment><USER4> ① Don't be so lazy about your own privacy. You are the source of most of their data from where you ate last night to what movie you're watching tomorrow. So stop doing that.

② Populate the surveillance database with junk data by being unpredictable each and every day. Make it more difficult and expensive to build a profile about you.

③ Use TOR for your web browsing.

④ Make everybody aware of the issues and why they are important and get them to spread the message further.

<comment><USER5> Aren't 1 and 2 exactly contradictory?

</comment></comment><comment><USER6> What would MLK or Ghandi do?

<comment><USER7> Find out what really happened before hyperventilating?</comment></comment>