The Road to Superintelligence (2015) - <AUTHOR> https://waitbutwhy.com/2015/01/artificial-intelligence-revolution-1.html <comment><USER2> I'm not convinced that progress has continued to accelerate. Compare the past 70 years to the previous 70 years and ask yourself which period of time experienced more radical progress, upheaval, and scientific discovery. My suspicion is that there was more from 1877-1947 than from 1947 till now.

<comment><USER3> You're looking at the impact on everyday life, which has nothing to do with the abstract advancement of technology. Superintelligence only requires continued exponential growth of computing power, which has documented consistency.

<comment><USER4> Not over the last 10 years vs the prior 10 years.

[https://en.wikipedia.org/wiki/Logistic_function](https://en.wikipedia.org/wiki/Logistic_function) / Sigmoid function's look exponential, but there is no longer a lot of room at the bottom. When things where 10,000 atoms wide dropping that to 1,000 was no big deal yet massive speedup. When they hit 5 atoms wide we what use 0.5 atoms?

PS: Arrays of low power processors like GPU's are still making progress, but we are rapidly approaching the point where there is more than one core per pixel. We might be able to use 1,000 cores per pixel, but I doubt it. EX: At 1080p SLI GTX 1080 Ti = 289 pixel's per CUDA core. Sure, 4/8k will push this off for a while, but monitor resolution has not been going up all that fast.

<comment><USER5> Why are pixels relevant to a discussion on computing power?

<comment><USER4> Pointing out that add more cores is yet another wall because FLOPS is only a proxy and few things are truly embarrassingly parallel when your start talking 1+ billion cores.

<comment><USER6> Furthermore, adding cores is not an exponentially-growing process. On the other hand, there is some evidence, from the fact that intelligence is possible within the human brain, that intelligence is embarrassingly parallel.

<comment><USER4> I think neurons are closer to transistor analogs than core analogs. The brain wires them up into networks that have meaning vs passing along data that has meaning. And in that context we crossed the 10 billion transistor on a chip milestone recently vs 100 billion neurons in a human brain.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Superintelligence, The Idea That Eats Smart People: [http://idlewords.com/talks/superintelligence.htm](http://idlewords.com/talks/superintelligence.htm)

<comment><USER8> This is the best thing I have read in a long time. I have always been skeptical of "superintelligence" and glad to see I am not alone.

</comment></comment><comment><USER9> Personally I believe that a huge part of intelligence and superintelligence is about emergent complexity in networks which has increased along with the computational power.

Humans (and biological life in general) is as far as I can see pattern recognizing feedback loops. Humans have more connections in the brain and better/longer memory than other species which seems to be at least somehow fundamental to our difference from the rest.

So while we don't know for sure IF this complexity is fundamental to intelligence we sure seem to be on the right track.

<comment><USER10> If you add too much complexity of the wrong type, you get a star. Just making something more complex by no means guarantees making it cleverer. And beware of using "emergence" to hide the need for an actual explanation: [http://lesswrong.com/lw/iv/the_futility_of_emergence/](http://lesswrong.com/lw/iv/the_futility_of_emergence/)

<comment><USER9> I am not talking about just complexity anymore than an evolutionist is talking about simple randomness in the evolution of species.

Emerging in this context means incremental i.e. in small steps based on previous steps. Plants react to light they don't think about what light is.

Not sure what that article has to do with what we talk about here.

<comment><USER10> It is in response to "So while we don't know for sure IF this complexity is fundamental to intelligence we sure seem to be on the right track."

Which to me reads as "hey, if we make things more complex then they might become intelligent - who knows!" which seems extremely optimistic.

<comment><USER9> thats not what i said. I said if emerging complexity is at the core we are on the right track. I am willing to hear arguments against complexity at the center of this but then that should be what we argue. The star comparison doesent work in this vontext anymore than random does in evolution.

</comment></comment></comment></comment></comment><comment><USER11> As a counter, see the previous discussion on Kevin Kelly - the AI Cargo Cult & the myth of a Superhuman AI (1).

See also several other articles making similar points (2).

And "In late 2008, economist Robin Hanson and AI theorist Eliezer Yudkowsky conducted an online debate about the future of artificial intelligence, and in particular about whether generally intelligent AIs will be able to improve their own capabilities very quickly (a.k.a. "foom")."

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

(2) [http://www.salon.com/2015/10/15/calm_down_artificial_intelli...](http://www.salon.com/2015/10/15/calm_down_artificial_intelligence_is_not_going_to_take_over_the_world_partner/)

(3) [https://intelligence.org/ai-foom-debate/](https://intelligence.org/ai- foom-debate/)

<comment><USER12> Ah, Yudkowsky... The autodidact "AI theorist" who does not understand simple math and philosophy concepts, is afraid of being resurrected and punished by a future super AI, has not added anything to human knowledge despite collecting millions of dollars to fund his research institute (which changes its name every few years for some reason) and has actually argued with a bot on reddit. Even when you ignore the singularity bullshit he spews, it is astonishing that anyone takes him seriously.

<comment><USER10> > is afraid of being resurrected and punished by a future super AI

I hope you similarly mock those Christians or Hindus you come across. What makes this belief system so much more worthy of scorn, even if Yudkowsky actually were afraid of this (given that, AFAIK, he has never expressed anything to suggest that he is)?

"Autodidact" is not the insult you seem to think it is.

Remove those two, and tone down the attacking voice, and you might have something one could discuss.

<comment><USER13> Just nick picking but any irrational belief is mockable, if not the people holding it themselves. And when people holding risible beliefs speak from authority, it is not unfair to cite those.

<comment><USER10> There, but for the grace of God, go I. (And I repeat that I don't know of an instance where Yudkowsky has ever expressed fear that he will be revived by a future AI and tortured. This sounds like it's referring crudely to the memetic hazard known as Roko's Basilisk, which he has explicitly stated he doesn't believe in.)

<comment><USER12> You are right, I misremembered that.

</comment></comment></comment></comment></comment></comment><comment><USER14> I agree with some of the below comments that there is more hype than reason. For me the observation is from a different starting point: progress in mathematics is not increasing exponentially, and personally I feel that revisiting parts of mathematics is more enlightening than the current trends in AI.

NN's for example are mostly just an application of linear algebra where design determines the nodes and training the weights; and then, the "decision making" is done by a notion of product. Very useful, but not at all superintellegence.

<comment><USER15> My feelings are similar. Current AI seems to be the infinite monkey theorem put into practice. I'm not saying it doesn't work, it obviously is, but I wonder what the limitations of it are. When do we start running out of monkeys too the point that only nation states, and companies with the resources of one, are able to achieve the next level?

</comment></comment><comment><USER16> Quite a good write up I thought, especially interesting about the OpenWorm project and their successfully funded Kickstarter [1]

[1] [https://www.kickstarter.com/projects/openworm/openworm-a- dig...](https://www.kickstarter.com/projects/openworm/openworm-a-digital- organism-in-your-browser)

</comment><comment><USER17> So what's the evidence that exponential growth of AI will continue at this rate for the next few decades ?

<comment><USER18> Nothing conclusive, but:

1\. If we look at rate of change over the last few thousand years, it doesn't seem completely unreasonable to extrapolate that forward.

2\. It's hard to argue that no more breakthroughs can possibly be made in physical computing architecture or computer science, though admittedly it's equally hard to argue breakthroughs _definitely will_ be made. However...

3\. Modern industry is heavily incentivized toward AI advancement, because of the optimization capabilities it provides. Where such incentives exist, barriers tend to dissolve.

</comment></comment><comment><USER19> > _Imagine taking a time machine back to 1750—a time when ... all > transportation ran on hay_

wait, what? weren't ocean-going ships using wind power in 1750? come to think of it, weren't ships using wind power in 1750 _BC?_

</comment><comment><USER18> In my view, we should avoid terms like "progress" and "intelligence" in these conversations, since they make implicit value judgments and tend to draw us irresistibly into certain unproductive patterns of argument. The topic of evolution has a similar pitfall.

</comment><comment><USER20> > _" In order for someone to be transported into the future and die from the > level of shock they'd experience, they have to go enough years ahead that a > "die level of progress," or a Die Progress Unit (DPU) has been achieved."_

I suspect that it is no longer possible to achieve a DPU going forward. We now know that amazing things have been achieved and will continue to be achieved. Plus we have science fiction that can conceive of almost any possibility, from intelligence at sub-atomic scale to creatures the size of galaxies, parallel universes, humans capable of controlling time and space by mere thought etc etc.

Based on recent history, I _expect_ the future to be unrecognisable!

</comment><comment><USER21> Why assume intelligence is computable?

</comment><comment><USER22> Some thoughts:

Progress is not like a liquid, that increases continually with research. Progress is an unknown function, composed of huge number of discrete "discoveries". Each discovery is hidden behind research of variable level of difficulty. Each discovery, may or may not enable more discoveries. The reality may have either a finite or infinite amount of discoveries waiting to be made. We don't know for sure. This universe could have a finite amount of discoveries. But it is possible that we may find a way to travel to infinite other universes, and these may have infinite discoveries waiting to be made.

The shape of the technical progress function, depends on these unknown factors. So it is wrong to assume that it is an exponential. Although an exponential seems like a good approximation around the local point in which we currently are. The population have been growing, and the economy have been growing. These two factors have enabled an increased amount of resources dedicated to research. The more research being done, increases the probability of discovering the available discoveries that exist at the current technological level. The speed of progress depends on the amount of research, and the number of latent discoveries hidden in our reality.

We are approximating the point, in which we can build artificial general intelligence. This will be a machine similar to a human mind, but capable of dramatically faster reasoning. Its internal dialogue will be millions of times faster than a human mind. Because it will move at electrical speeds, instead of biological speeds. Also it will have practically perfect and unlimited memory (compared to human capabilities). And will have almost instantaneous capability to resolve mathematical calculations of reasonable level. With these improvements, it can be expected that it will be much more effective at making discoveries than a human. Additionally these machines will be industrially replicable. So it will be possible to put a large amount of them at work on problems. It is reasonable to expect that these machines will resolve the chain of discoveries available to be made faster than humans.

These artificial machines will maximize discoveries, from the chain of discoveries available. What this is going to mean, depends on the actual unknown amount discoveries available in this universe. If things like nanotechnology, molecular machines, biological machines, etc, are actually possible, these intelligent machines are well equipped to discover them dramatically faster than we humans. If there is new physic available to be discovered, these machines have much better chance than humans at discovering it.

Will machine superintelligence actually create a singularity? maybe, or maybe not. Depends on the amount of discoveries to be made, contained in this universe, and their level of difficulty. It could be the case that our universe is running out of hidden discoveries. So any prediction on the shape of the curve of progress, is pure speculation. For example, we could have already run out of exploitable significant discoveries in physics. Or we could be on the verge of discovering faster-than-light/instantaneous communications, and lots of other things.

In my opinion the invention of artificial general intelligence, and superintelligence is imminent. A matter of years. I base this on introspective observation of the thinking process of my mind. And in comparison of it with the operation of artificial neural networks. They show similarities. The thinking process of the mind is entirely reproducible with deep learning networks, assembled in the right structure. An interesting topic is, who is doing this research. Obviously, the big tech corporations are working on it. But are states organizations also working on it? Who is doing the biggest investment? Who has the best odds of inventing it? What will happen when someone gets it? Are they going to immediately announce it?

</comment><comment><USER23> Can we put (2015) in the title? Maybe replace the publication name, which is visible twice. This was big when it was published, now slightly outdated.

<comment><USER24> Also put "AI" in the title. Upon reading the title, I thought it was about genetics/breeding a superhuman.

<comment><USER25> This is HN. This gives AI a slightly higher Bayesian prior than genetics.</comment></comment></comment>


Given a list of regexes, generate all possible strings that matches all of them - <AUTHOR> https://github.com/audreyt/regex-genex <comment><USER2> This is really interesting, but wait: won't the number of strings matching a given set of regexes be infinite, for many different types of regexes, i.e. it's like the number of phrases in language that fit a certain grammatical rule.

<comment><USER3> The github page mentions that * and + quantifiers are redefined to have limits of {0,3} and {1,4} respectively. That wasn't what you were thinking of, was it?

</comment></comment><comment><USER4> nice idea. it doesn't say whether it can filter/flag duplicates, but that seems like it would be useful functionality to add if not present (it can indicate that you've made a mistake, or that your regexp is inefficient[* ]).

it's such a sweet idea, with an obvious implementation and use, that you'd think it would have been done before. but i've not heard of anything and am having a hard time finding a good search term that isn't swamped by regexp howtos.

[* ] having said that, if it's compiled to a dfa then it might not be. a lot depends on the implementation... [edit] oh, and since a dfa-related package is a dependency my guess is that he can't display this info, because duplication will be lost in the transformation. interesting.

<comment><USER5> Nice suggestion and thanks for the compliment!

The inspiration for this work is the Regexp::Genex module from CPAN: <http://search.cpan.org/dist/Regexp-Genex/> \-- though it uses a random-walk approach for character classes, instead of enumerating all possibilities.

regex-tdfa was only really used for parsing regexes, so it's certainly possible to find duplicates. That said, piping the output to "|perl -pe 's/.*\t//' | sort | uniq -d" is quite usable too. :-)

</comment></comment><comment><USER6> Anyone aware of something which does the exact opposite: given a list of strings generate a regex which matches all, and only those strings? The shorter the regex the better.

<comment><USER5> Unfortunately, the problem of finding a minimally equivalent regex from an /alt1|alt2|alt3|.../ form is known to be PSPACE-complete ( [http://www.computer.org/portal/web/csdl/doi/10.1109/SWAT.197...](http://www.computer.org/portal/web/csdl/doi/10.1109/SWAT.1972.29) ), as well as not finitely axiomatizable ( [http://www.sciencedirect.com/science/article/pii/S0304397597...](http://www.sciencedirect.com/science/article/pii/S0304397597001047) ).

That means the naïve SMT-solver-based approach in genex will not apply to this problem... Links/suggestions to relevant research welcome! :-)

<comment><USER6> Well goddamn. Thanks for the links :-)

</comment></comment></comment><comment><USER7> genex '(o|O|0)(_)(o|O|0)'</comment>


Show HN: Bootstrap for Native iOS Apps - <AUTHOR> http://www.pixate.com/bootstrap/index.html

<comment><USER2> How far are you planning to go in your support for css properties ? css animations/transitions ? Positionning (top, left, right) ? There are a lot of similarities, but by going very far you may end up rewriting a lot of the storyboard xml in a css format... Then maybe later on, you'll want a WYSIWYG css editor on top of it, and i'm a bit wondering whether you won't have ended up rewriting absolutely everything.

From my personal opinion, CSS is nice the first 10 minutes, or whenever you only have a few element to style, but styling a complete app along with animations between states makes you really want to stay away from it as far as possible for mobile apps (and especially ios where resolutions are quite standard)...

<comment><USER3> I'm with you about CSS. It seems the target market of this app is geared towards Web->iOS devs, but that seems like a smaller slice than something like "Bootstrap for iOS" should be made to do. Bootstrap is great because it makes web development so much easier through native uses. It doesn't add another language paradigm to make web development easier - it does it inherently.

1) If you're gonna' call it "Bootstrap for iOS", have the analogy end there. The site is way, way, way too much like Bootstrap already. Brand it better.

2) Good native code should be inherent! Nobody should have to learn CSS to make better iOS apps! A beginner should have a framework for her/him that allows something easy like [view fadeIn] and it work. Then, if they want a little more control something like [view fadeInOverTime:seconds]. Adding a shadow should be as easy as [view addShadow] or [view addShadowWithCornerRadius:radius]. Rounding corners is already extremely easy using QuartzCore, but let's make it even more intuitive for people. [view roundCorners] and then [view roundCornersWithRadius:radius]. The whole point is to make development exponentially easier for anybody to come in and start making useful, beautiful things.

I'm working on a class to include that does all of point #2 plus a ton more - and seeing this post will probably be the catalyst to releasing it this weekend. I have a huge plan in the works for making extremely easy to use UI elements as well, but I think open sourcing this in chunks, then releasing the whole thing as an example on how they all work together is gonna' be the route I go. So far, I've released one part of the project that makes choosing good colors to use in the app a breeze (<https://github.com/bennyguitar/Colours- for-iOS>). The next one will be for UI utilities like the fade in and shadow code mentioned above.

<comment><USER4> Coming to Cocoa dev from the web all of the direct manipulation in objective C of styling seems like mayhem. I'm not very far in, but already the giant amount of searching and replacing required to change all the corner radii in an app is crazy.

For me it seems obvious that this stuff should be /declared/ in one place, with all other styling mechanism, not littered through dozens of classes that are primarily interested in getting things done, not looking pretty.

Of course I'm a new at this - and everyone seems to think the other way is better… So maybe I'll come around with time, but right now Pixate seems like a great idea.

<comment><USER2> Beginner often tend to underuse storyboards. Except for fadein/fadeout and views being moved you really never end up coding styles in Obj-c. It's all done graphically using xcode and interface builder. Rounding corners is very often not necessary at all, since you end up using images all the time for buttons and backgrounds.

<comment><USER5> ever worked with git and storyboards? quite the disaster once you're more than the sole developer

<comment><USER3> Exactly. Plus storyboards tend to lock you in, and moving around and constantly iterating to better and better nav schemes kind of goes out the window.

</comment></comment></comment></comment></comment></comment><comment><USER6> This is a great product.

First there was the native client era on desktops that involved twiddling around with swt, gtk, qt and windows programming.

Then came the advent of webapps with more uniform abstractions of client side js frameworks and css3 and dozens of toolkits and decorators around these.

Then came the mobile era with a new breed of native v/s web applications. Nowadays, the general opinion I hear is that no one really likes webapps on mobiles. But we as a community actively are trying to port over the abstractions of css/js frameworks to native mobile so that developers can continue being comfortable while programming devices that function at the whim of Apple and Google.

I wish there were a timeline of sorts of all the paradigm shifts that programming user experiences has undergone over the last decade.

<comment><USER7> I think it's a shame that something as as unambiguous and nice to work with as, say, the Cocoa framework and MVC (using that example because of familiarity), was available for us web developers without trying to shoehorn it into javascript and the browser environment.

Having had a taste of native app development, it makes client side web development comparatively frustrating. We're continuously getting new features but little in the way of a more satisfying environment that can help bring all these parts together.

<comment><USER8> This is what makes me nowadays prefer work on native every time I am given the opportunity to do so.

Too many crazy web projects trying to shoehorn the desktop experience into the browser in a way that has to work the same across multiple browsers and operating systems, which leads to CSS/HTML/JavaScript hacks everywhere, with some customers discussing designs down to the pixel level.

</comment></comment></comment><comment><USER9> Trying to turn native apps into template-styled web apps is just backwards; you're discarding the fine attention to detail, typography, pixel-positioning, scaling animations, etc, that can make native apps so great.

<comment><AUTHOR> This isn't an all-or-none situation. You lose none of the fidelity of native development, it's just an abstraction of code to markup. It's all natively executed using native APIs. Typography, absolute pixel postions, animation, and much more is all there.

</comment></comment><comment><USER10> Quite a few things confuse me here:

How is a system based on CSS stylesheet native?

Why is it 1500 dollars per day to do what seems to be templated app development -- many other companies offer this at far far lower rates (think 50 dollars or less for a complete app).

Why only iOS? The purpose of templated distribution is to reach a wider audience, not a narrower one.

<comment><AUTHOR> Pixate Engine is a native framework for iOS (and Android soon) for styling your native controls using the CSS syntax. There's no web here other than the shared syntax of CSS. For example, to style a native UIButton:

button { border-radius: 5px; background-color: red; }

Think of it as declarative markup for styling native controls.

</comment></comment><comment><USER11> Is it just me or is it a bit ironic that an iOS related website doesn't work well on iPhone? All the screenshots o out of the screen, and you can't zoom out or pan to see them.

<comment><AUTHOR> Fixed. ;-)

</comment></comment><comment><USER12> Any performance benchmarks of Pixate vs procedural code or vs similar DSLs, e.g. Teacup, Formation in Rubymotion?

</comment><comment><USER13> I'm not a developer (or user) on iOS, but does it not have a similar design scheme for apps to Android (since ICS at least)? Would an app that looks like bootstrap fit in at all, and indeed would Apple even allow an app that resembles Bootstrap instead of its own design guidelines?

<comment><AUTHOR> Bootstrap is totally configurable, we're just showing the default styling. In terms of Apple allowing alternate designs, I think they encourage it, just look at Garage Band ;-).

<comment><USER13> Of course, but if there was a standardised sort of style used by most applications, then recreating it using Bootstrap would seem like a lot of effort for little benefit. If there isn't much of a standard style, then this is really neat - that just seemed like an odd situation to me. My impression was that there would be a style, and Apple would enforce it, but it's great if that's not true. And fair enough, googling for Garage Band iPad..it looks unique.

</comment></comment></comment><comment><USER3> I still think CSS is one step away from making something awesome for developers of all flavors (from not developing at all to extremely competent in other languages) to make native apps even easier to code. I'm working on a more natural language version for iOS right now.

</comment><comment><USER14> [Stripped-Down Non-Free Version of] Bootsrap for Native iOS Apps.

<comment><AUTHOR> It's free and open, and will work with our free engine. In its current beta form, we wanted our commercial customers to have a crack at it first.

<comment><USER15> I think the "Buy Pixate" is what he's referring to.

<comment><AUTHOR> Clarified on the site, thanks.</comment></comment></comment></comment>


Why Open Source Really Sucks - <AUTHOR> http://stewaard.com/2015/08/10/why-open-source-really-sucks/

<comment><USER2> This article misses the core reason people develop and contribute to open source; (1) to be able build something that never existed that the person thinks should exist and (2) to contribute to and a be a part of a community with a similar/same goal.</comment>


Hidden features of Perl? - <AUTHOR> http://stackoverflow.com/questions/161872/hidden-features-of-perl <comment><USER2> I'm depressed to say that I knew most of these. Can I have those braincells back?

<comment><USER3> Same here. Recalling my triumphs at Perl Golf somehow seems like small consolation now that the Perl world has collectively steered themselves into a ditch.

</comment></comment><comment><USER4> Most of them (if not all) are just unpopular features.

<comment><USER5> I would have said 'little-known' or 'not as well-known as they deserve to be', but it's a fair point.

Many of them are not really hidden so much as underused. (As I recall all of the "Hidden features of language X" questions on SO tended to drift that way pretty quickly.

</comment></comment><comment><USER6> [http://stackoverflow.com/questions/161872/hidden-features- of...](http://stackoverflow.com/questions/161872/hidden-features-of- perl/2911882#2911882)

<comment><USER7> I've found $seen{$_}++ and similar constructs made out of hashes incredibly useful, but having built-in hashes is itself incredibly useful.

For example, when I first heard about them, I didn't understand Markov chains at all. Then I saw some example code that was only a few lines long and which used hashes to implement them. In about an hour, I had my own nonsense text generator up and running. It's not very different, conceptually, from using a hash to remember what you've "seen"--the only difference is that the hash key is a chunk we've seen, and the hash value contains everything that could possibly come next (and multiple copies of it, so that common text is more likely).

And then there's how sorting things can simplify them. Want to find anagrams? Inexperienced folks might try to program something that generates every permutation and tests for equality. That's slow and horrible. Just sort the letters first and compare. If they sort to the same string, they're anagrams. But you don't actually have to sort, you can just turn them into a vector (an array where the first element is the number of As, the second the number of Bs, etc.) and just compare those. (Incidentally, you can use a letter as an array index in Perl, but I don't recommend it and it generates a warning.) You can end up turning text processing into Linear Algebra if you go far enough down that road.

Perl's map function can do some pretty crazy stuff, too. For example, the fairly well-known "Schwartzian transform" (See: <http://en.wikipedia.org/wiki/Schwartzian_transform> if you want more information). Someday, I intend to sit down and play with map until using it comes naturally to me. I've even programmed some Lisp (AutoLisp, to be exact), but I know that I'm still thinking in procedural terms and I'd like to understand functional programming properly someday, and applying a function to a list of values is pretty much all that you do in functional languages.

</comment></comment><comment><USER8> It can, sometimes and with great skill, be used to write understandable code.</comment>


Talk – Mozilla's answer to the online comment problem - <AUTHOR> https://blog.coralproject.net/the-empty-box/ <comment><USER2> Why can't mozilla create a default hosted version like disqus? The requirements are too heavy weight for most small blogs.</comment>


Security Key for safer logins with a touch - <AUTHOR> https://www.facebook.com/notes/facebook-security/security-key-for-safer-logins-with-a-touch/10154125089265766 <comment><USER2> I am slightly disappointed that this doesn't work in Firefox, despite the fact that I have an add-on[1] installed to add U2F support. Github for instance is able to detect U2F support and let me use it.

That said, I understand the lack of support since I am an extremely small niche, and this did prompt me to finally add 2FA to facebook (U2F and code generation from my Yubikey Neo)

[1] [https://addons.mozilla.org/en- US/firefox/addon/u2f-support-a...](https://addons.mozilla.org/en- US/firefox/addon/u2f-support-add-on/?src=api)

<comment><USER3> I don't understand how it has taken them so long to add it natively... they just shipped FLAC audio support but still don't care about U2F?

<comment><USER4> FLAC audio support is simpler, it's just adding a self-contained FLAC decoding library, and wiring it to the already-existing audio code.

For U2F, they have to write code to interact with the operating system USB API (for each operating system), plus the main U2F code, plus a Javascript API, all while taking care to not cause any new privacy leaks or worse.

If you want to follow, the main bugzilla item seems to be this one: [https://bugzilla.mozilla.org/showdependencytree.cgi?id=10657...](https://bugzilla.mozilla.org/showdependencytree.cgi?id=1065729&hide_resolved=0)

<comment><USER5> holy crap.

       Reported:	2014-09-10 16:07 PDT by Axel Nennker
       Modified:	2017-01-26 08:24 PST (History)
       CC List:	419 users (show)

<comment><USER6> Yeah, Google implemented it in Chrome in 2014...I guess it's just not a high priority for Mozilla right now.

</comment></comment></comment></comment></comment><comment><USER7> I wish Facebook brings something similar to the Instagram.

I recently got hacked and lost my account and my first name username for good[0]. They don't even allow 2 factor auth on accounts with low followers there.

[0] [https://medium.com/@batuhan/i-got-hacked-and-i-dont-think- in...](https://medium.com/@batuhan/i-got-hacked-and-i-dont-think-instagram- cares-fe4160364ef1)

<comment><USER8> Same exact thing happened to me on Instagram. Which is crazy to me, its really the first time I was hacked, as I usually am very careful with passwords and security. I used 2FA and password managers and so forth.

</comment></comment><comment><USER9> Shameless plug: if you want this to work on Linux without diddling the device node permissions, install this:

[https://github.com/amluto/u2f-hidraw- policy](https://github.com/amluto/u2f-hidraw-policy)

I need to get around to integrating this with upstream udev so it can stop being needed as a standalone project.

<comment><USER10> Or the Yubico official [https://developers.yubico.com/libu2f-host/](https://developers.yubico.com/libu2f-host/) \- that will do the same

<comment><USER9> My version is waaaay better.

No, really, it is. Theirs is a little list of known U2F devices from known U2F device vendors. Mine actually detects the the device is a U2F device regardless of its make and model. As far as I know, Yubico _wrote_ that spec, so I'm a bit surprised they didn't implement it in the udev rule.

<comment><USER11> Try to upstream this. That would be cool, because I use the information by Yubikey atm.

</comment></comment></comment></comment><comment><USER12> Happy to see Facebook finally supporting U2F but haven't assessed how robust their implementation is.

Another U2F hardware key is the Trezor bitcoin hardware wallet ( [https://blog.trezor.io/secure-two-factor-authentication- with...](https://blog.trezor.io/secure-two-factor-authentication-with- trezor-u2f-e940fd5a60af#.j8z0lkgvf) ) which has the added benefit that you can backup all your U2F private keys. I'm not aware of how you could do this with a Yubico U2F key -- if someone knows, please enlighten me.

<comment><USER13> If you are concerned about the implementation, here is a security token you can flash yourself:

[https://sc4.us/hsm/index.html](https://sc4.us/hsm/index.html)

(Full disclosure: this is my company.)

<comment><USER14> This is pretty exciting, but it looks like your user manual has not been updated in 8 months. What are you working on these days?

<comment><USER13> I'm still working on it, but it's a one-man company at the moment and I have more than one product so I'm spread pretty thin. But yes, I need to update the manual at the very least to mention that it now supports U2F. Thanks for pointing that out.

</comment></comment></comment></comment><comment><USER15> This is great forward progress, I much prefer U2F where available. I hadn't even realized that FB supported 2fa, so I just tried to set it up on my iPhone, and either automatically or manually cannot get a test code to work. This tends to reduce my confidence in any other aspect of their implementation

<comment><USER16> The 2FA code generation has always worked perfectly for me for the past year (or two?) that I've had it enabled

<comment><USER15> I have to admit to being quite startled. But I just get "Security code was invalid. Please try again". I've tried again several times. I'll see if setting it up on the website works.

<comment><USER15> FWIW I could successfully configure 2fa on the desktop, which works fine on mobile,

<comment><USER16> Cool, glad it worked

</comment></comment></comment></comment></comment><comment><USER17> I'm happy with Authy and TOTP, for the moment. Getting a YubiKey has been on my to-do list for awhile, but I'm not sure that everything I currently have 2FA for will accept it. In which case, I don't like the idea of half-migrating to Yubikey while still having to keep Authenticator around.

<comment><USER11> You can use your Yubikey + Yubico Authenticater to replace Authy. It does not add that much security, but you add device switch ability without Cloud Sync.

<comment><USER18> I had a lot of problems with Yubico Authenticator. Wound up switching back to a generic app.

<comment><USER11> What problems? I used to not have any, but since a short time it has issues with unlocking when I get NFC connection. I have to restart it sometimes.

<comment><USER18> Yeah the NFC on my Yubico has burnt out. Or something. Regardless, Yubico Authenticator just flat-out didn't work for me. I got it running, loaded some codes, and then the codes didn't work again. It was like it lost synchronization with the server clock or something. I had the same issues on Android and MacOS. Maybe I could have sorted it, but I lost interest before finding a definitive fix.

</comment></comment></comment></comment></comment><comment><USER19> We started using these for internal services and Google accounts where I work. It's unfortunately a big pain in the butt- you can't use Safari, you can't use the Mac/iPhone calendar app to see your meetings. It's web apps in Chrome or nothing, more or less.

The one type of key supposedly uses Bluetooth, but that functionality isn't built yet or something, so you get to carry around a little 4-inch microUSB cord with you everywhere you go, and connect that every single time you hit a 2FA prompt. At least the Yubikeys have a USB connector built into them.

<comment><USER20> Huh? I use the Google applications --- and, particularly, their calendar --- all the time without using Chrome, and U2F is my first-priority 2FA mechanism. You can mint static random application keys for your native applications, and use TOTP as a backup for when you want to use a different browser (really, though, you _should_ use Chrome as much as you can; it's significantly more secure).

<comment><USER19> For some reason application passwords don't seem to work according to everyone who tried. I don't really know what TOTP is or how all of this is configured, that's the domain of our security team. I don't really know what you mean about Google apps, I just want to use the calendar app on my Mac and iPhone to see my meetings but I can't. I asked them about it and they confirmed to me that I should use the Google Calendar web app in Chrome.

Using a web app on my Mac isn't the end of the world, but I can't see my meetings on my phone in any type of way, and I'm already missing them sometimes because the little notification on the phone is what reminds me that I have a meeting to go to.

<comment><USER11> In the Google security setting you can create new App-Passwords, use those in your Apple Mail or whatever. It should work fine.

<comment><USER19> If only a comment on Hacker News saying something should work made it so :)

<comment><USER11> Well you said yourself that you are not an expert. I encourage you to actually play around with the settings a litte. I have used it multible times in different context and it has worked like a charm every time.

So maybe if you spend some time on it, you can make it work.

</comment></comment></comment></comment></comment></comment><comment><USER21> I've been a big fan of yubikeys for years, but I'd never use mine for something like Facebook.

I work in computer security, so I know this sounds crazy. But my brain has been rewired to work in failure modes by the not-security domain I happen to do security stuff in.

The obvious argument for TFA is to reduce the chances that my Facebook account is subject to the bad consequences of that come from a compromised Facebook account.

I'd much rather they reduce or eliminate the severity of the failure mode in the first place. TFA is only a mitigation that reduces the likelihood of account compromise. It shouldn't be possible for someone who swipes my yubikey to do any more than cause a minor social annoyance.

Unfortunately the presence of the mitigation (TFA) will - if adopted to significant numbers - combine with Facebook's other incentives to produce more severe failure effects for account compromise.

Remember back when facebook was still in it's just-college phase? And dicking around on your friend's facebook account if they left their computer unlocked was normal? And when you saw someone acting unusual, you sorta assumed someone was messing with their account? Yeah, I don't want a compromise of my facebook account to ever be more severe than it was back then.

<comment><USER22> I don't think I follow your reasoning of how increased security increases the severity of a compromise. Can you elaborate on that?

<comment><USER23> If my network knows that I use PGP to login, they may well accept an (illegitimate) announcement that I'm changing my keys to {attacker- generated.asc}.

Of course, really such a login key should only be able to authenticate, and my network should only accept a proper revocation certificate that would need to have been generated by a different key with the 'Certify' action enabled.

How likely or damaging that is obviously depends a lot on who you are, and probably wouldn't be for many people at all. But I assume that's the sort of thing your parent commenter is alluding to.

</comment></comment></comment><comment><USER24> Tangent comment: [https://i.imgur.com/Xm1qRI4.png](https://i.imgur.com/Xm1qRI4.png)

Does anybody know why the comments under this post are like that, at least for me? Is there a particular reason why people from Myanmar (some with latin name?) would comment this much more than any other?

<comment><USER25> Probably this: [https://www.youtube.com/watch?v=oVfHeWTKjag](https://www.youtube.com/watch?v=oVfHeWTKjag)

<comment><USER26> That video doesn't seem particularly relevant to the question; it talks about fake likes, but makes the point that those fake users _don 't_ engage with the content at all.

<comment><USER24> It's from 2014. Fake likes could also do fake comments now, it's also a metric used for engagement.

</comment></comment></comment></comment><comment><USER27> Looks like a logistical nightmare to me. You think forgetting a password is a pain in the ass, just wait until you loose your security key. It won't be one service you have to reset through an alternate verification route, but every single one you ever used! I also foresee potential issues with data corruption on keys, and multiple-keys getting out of sync (e.g. work vs home). And I have no doubt that clever hackers will find ways to get the codes off those keys (they will be plugged into a computer all the time and at the very least even the most cautious are susceptible to phishing). Also, it just doesn't seem as secure as an SMS code b/c the SMS code doesn't exist but for a short window of time and is transmitted by a completely separate communications channel -- but I suppose that's also why the big companies want to get rid of it, SMS costs more money.

The more I think about it, it seems to me that the Internet itself really needs to be a two-channel system. If communication has two separate physical channels then it becomes much easier to ensure security.

<comment><USER28> That's why you buy two keys. No, they don't have anything to "sync".

<comment><USER29> One issue with buying two keys is they internally have different keys, so you need to connect both to each new account which is a pain in the ass and stops you just keeping one somewhere very safe (i.e. safety deposit box, or a safe at a friends house)

<comment><USER11> Hopefully this will be addressed in FIDO 2.0. That is the goal at least.

</comment></comment></comment></comment><comment><USER4> Last time I looked at Facebook 2FA, it didn't allow you to enable it unless you had a browser with old enough cookies from Facebook, which is not possible if you configure your browser to clear all cookies on exit (and close the whole browser at least once a day). Is that still the case?

<comment><USER30> I've used Facebook 2FA for quite a long time now and all of my browsers are configured to clear cookies on exit (and to disallow 3rd party cookies). Didn't have any issues with activating 2FA.

</comment></comment><comment><USER11> As a huge fan of U2F I really love this. I don't use Facebook, but we are starting to cover more and more of the internet. Facebook, Google, Dropbox are huge.

I would like to see UAF also get some more love.

</comment><comment><USER6> Does it rely on SMS as backup, though?

<comment><USER31> I had SMS as my backup and in testing this morning, FB sends the SMS by default, even before you either tap the key or say you want to use another method (like SMS).

That's a big flaw to me. It should only send the SMS if I specifically say, "Use my backup SMS method". I switched to use an authenticator app instead as a result.

<comment><USER20> I'm not sure I see the security advantage to opt-in SMS over opt-out SMS (both are bad). If the button exists to override the hardware token with a text message, the attacker will simply push the button after hijacking your phone number.

<comment><USER31> True that. More of an annoyance then with my phone lighting up with an SMS notification that I didn't need. Reminded me to disable SMS 2FA and stick with the authenticator app.

</comment></comment></comment></comment><comment><USER32> And yet I'm told by other security minded people I should epoxy over my USB ports.

So which is it?

<comment><USER33> Use a Yubikey Nano. You could easily epoxy it in place.

... but physical access is game over no matter how much epoxy you use.</comment></comment>


Ask HN: Surface book performance base swapping? - <AUTHOR> Has anyone plugged there existing Surface Book "screen" to a performance base yet?<p>Also will MS ever sell them separately? I they were around $500 I'd be seriously tempted to trade mine in which is the original dGPU base. <comment><USER2> Tested tried this out, here's the link (minute 6) [https://www.youtube.com/watch?v=UBF3EreWIm8](https://www.youtube.com/watch?v=UBF3EreWIm8)

I'm kind of in the same boat, when I first bought mine, I went with the base model because I didn't want to pay too much for something I'm unsure about. Now that I've been using it for a while I wish there was a way to upgrade.</comment>


Seattle's minimum wage may actually cost restaurant workers - <AUTHOR> http://www.marketwatch.com/story/seattles-15-minimum-wage-may-actually-cost-restaurant-workers-study-finds-2017-06-26 <comment><USER2> First - If workers hours can be cut arbitrarily by employers in a response to an increased minimum wage, then FIX that. Even peoplel paid by the hour obviously need contracts that ensure them an amount of work - ideally a guaranteed full time (40/h week) and any less than that should be the choice of the employee.

I think increased minimum wages are a good thing but it seems like an attempt to cure the symptoms rather than the cause.

<comment><USER3> Then employers will simply wholesale fire other employees. The point is that when costs go up, the demand curve shifts. Forcing businesses to do otherwise would wreak havoc.

<comment><USER2> Having employers that can't provide decent workplaces and decent pay go under is a good thing. That's the _goal_ of these regulations. It's sometimes incorrectly seen as an unwanted side effect of more labor friendly regulations - but it's not. Employers that can't pay a living wage should simply go under.

Having fewer employees work better hours (full time) is also a desired effect.

<comment><USER4> Well your theory kind of flies in the face of most economist's views, which should be a red flag.

I don't think forcing companies to go out of business because they can't "provide wages" for employees makes sense. For one thing, that's not remotely the goal of the business. For another, nothing guarantees that these companies will go under, rather than (as most are doing) simply cutting back on some hours and some jobs.

You seem to suggest that the natural state of the world is a bunch of businesses paying a high wage, and that if we just get rid of all these businesses that are paying lower than that, we'd find jobs for everyone in higher-paying places. The truth is that some people simply _can 't_ provide more than $15 an hour in value to any business, for whatever reason, and _no_ business will _ever_ pay them more. These people will simply remain unemployed.

<comment><USER2> I think that it's more or less if not an explicit goal then at least an accepted reality of unions worldwide that businesses should pay reasonable wages or not be in business at all.

As you point out, this has a number of consequences, all of which are acceptable from the perspective of unions:

\- Low wage unqualified jobs, beneath some lowest threshold of skill simply cannot exist. This level varies between markets, but e.g there are no shoe polishers or elevator attendants in Scandinavia.

\- The natural rate of unemployment is higher than it otherwise would be. Basically instead of having 10% doing low paying jobs, you have 10% on generous unemployment benefits.

So essentially - and in accordance to all economic theory I know - having high wages and few unqualified jobs is certainly possible IF you

\- spend lots of tax money on having an educated workforce

\- have generous unemployment benefits

\- Accept that society basically provides for anyone that doesn't provide value enough - either by training or just supporting them financially. Labor collectives prefer the state to pay these people instead of them driving wages down (because as you point out they don't provide that value)

Basically the scheme is possible if you tax the top N% of earners so much that you can let the bottom M% not have to work crap jobs.

Whether this is an appetizing solution depends on your political preferences of course, I'd say it's a pretty progressive version of social democracy, and it's found for example in the Nordic countries.

</comment></comment></comment></comment></comment><comment><USER5> If one can not afford to pay a living wage for these jobs, then these jobs should not have existed in the first place.

<comment><USER6> Minimal wage is nothing but an instance of price control[1] and "Although price controls are sometimes used by governments, economists usually agree that price controls don't accomplish what they are intended to do and are generally to be avoided."

1\. [https://en.wikipedia.org/wiki/Price_controls](https://en.wikipedia.org/wiki/Price_controls)

<comment><USER7> Would you rather have price controls or a subsidy? People that support themselves on jobs that pay less than minimum wage generally need support from the state to live. So a minimum wage is basically a refusal by the state to subsidize business.

<comment><USER4> Well, you could also look at it as a minimum wage being the government (trying to) force one group of people to subsidize poor people, namely, business owners. I'd much rather the government helps poor people directly, both so that it's on everyone and not only business owners, but also because it doesn't tamper with the market price, which causes all sorts of problems.

<comment><USER7> That's the point, it certainly does tamper with the market price. If somebody is receiving EITC & food stamps, they may be willing to accept a job paying $2 an hour because that $2 an hour will allow them to buy a little bit of meat to go with their rice & beans.

Without EITC & food stamps and other assistance $2/hour wouldn't cover food & rent even working 2 jobs, so they'd be forced to turn those jobs and look elsewhere, most likely to crime.

EITC & food stamps to the employed are a subsidy for the employer and distort the true market price for labour. Perhaps less than a minimum wage does.

</comment></comment></comment></comment></comment><comment><USER8> Genuinely curious: if employers are simply cutting back hours to save paying the extra wages, what's happening with those hours that aren't staffed anymore?

One possibility is that the businesses were already overpaying for labor by staffing more employees for more hours than were needed. But that just turns a minimum-wage hike into a convenient excuse to roll back hours/staff (much as economic downturns tend to be used as a cover for companies to lay off people they no longer needed anyway).

Another possibility is that more hours are being assigned to salaried employees since it doesn't cost extra to have them work more. But that would actually be a good thing -- it would increase the demand for salaried full- time employees, and being a salaried full-time employee is much better than being a minimum-wage hourly employee.

Another possibility is that businesses are just closing down more often rather than pay people to keep things operating. But that seems unlikely.

So what's actually happening?

</comment><comment><USER9> Restaurant workers did fine (under both this NBER study and a prior Berkley one). It was a superset of low-wage employees including those restaurant workers that did poorly overall. This is one of the more interesting results since minimum wage studies in the past have favored studying restaurant workers (for reasons I don't know).

</comment><comment><USER10> Buried lead: study is hugely problematic.

[http://irle.berkeley.edu/files/2017/Reich-letter-to- Robert-F...](http://irle.berkeley.edu/files/2017/Reich-letter-to-Robert- Feldstein.pdf)

</comment><comment><USER11> Working 9.4% less time for 6.6% less income seems like a good trade.

Consuming less is the way to sustainability. Consuming less can be aided by earning less.

<comment><USER12> Consuming smarter can also go a long way, but that often requires earning more and is the route most people would like to take.

I'd rather have an organic steak than no steak.

</comment></comment><comment><USER13> Increasing your wages decreases your wages! I think this propaganda can be found on cuneiform tablets. What an old old, completely bogus argument.

These hypothesis always get flipped when talking about the rich. For them, more money creates an incentive for them to work more!

Yes it makes the poor lazy and the rich hard working...right.

</comment><comment><USER14> From what I heard, this report only focuses on stores with a single location - so chains are not represented.

[http://www.wbur.org/hereandnow/2017/06/26/seattle-minimum- wa...](http://www.wbur.org/hereandnow/2017/06/26/seattle-minimum-wage- earnings)

</comment><comment><USER15> >>The report "is problematic" and its conclusions "unwarranted," he said. Reich co-authored a recent study that argued Seattle's higher minimum wage did not hurt employment.

so of course it may actually not have.

</comment><comment><USER16> Since basic economic theory predicts the result, the "actually" in the title is unnecessary and shows the bias of the headline author.

<comment><USER17> Economic theory predicts that demand for those employees will fall and that businesses will reduce their hours, but doesn't necessarily predict that each employee will end up with less money overall.</comment></comment>


Why your new gas can is ridiculous and evil - <AUTHOR> https://tucker.liberty.me/why-your-new-gas-can-is-ridiculous-and-evil/ <comment><USER2> You know what I'd prefer? An explanation of why exactly these things don't work. Not a page long rant that vaguely covers some problems and then goes on a tangent to the effect of "government makes me sad".

Now, I've never had to deal with the new gas cans- I still have some old ones from the 90s. And, full disclosure, I just read over this now, but the overall theory behind the can seems like a pretty good idea- unlock the spout thing, and press the spout down and gas comes out. Take pressure off, and the spout closes, thus preventing spillage.

I will concede that there's a more than unnecessary amount of child-safety things and locks. Not only would they not stop a very determined child they're just kinda silly. Additionally, the lack of vent seems like a design flaw- and a simple one way valve would solve the problem. Or you could use a mechanism like an olive oil bottle. [http://previewcf.turbosquid.com/Preview/2014/07/07__18_44_07...](http://previewcf.turbosquid.com/Preview/2014/07/07__18_44_07/fp3dstur_v05_p01_01.jpg4b2ee92e-a58c-4a82-bdcb-f370c336b1e8Large.jpg)

All this is to say that I really hate posts where someone talks about a problem vaguely, and then rants about the government without proposing a solution that isn't "go back to the way things are." Is it a solution looking for a problem? Yeah, probably. Did a bunch of unnecessary stuff get tacked on? Seems so. But it doesn't mean there isn't a problem to be solved.

<comment><USER3> They're difficult to use for two reasons:

1} The ones being sold where I live have a release--a sliding thumb lever-- that you have to slide and hold down to release fuel...it's part of the neck of the spout...this ties up one hand which would normally be used to either hold the can by the handle, or support it from the bottom...one hand on the handle and one supporting the bottom provide better control when tipping and pouring...

2} The release on the neck is positioned so that there are only a few inches of "free spout" at the end...this makes it awkward to insert it deeply enough into a car fuel tank filler neck...

The larger and heavier the can the greater the difficulty...

</comment></comment><comment><USER3> This article is funny and spot on...

My house is on 35 acres, which I maintain...at any given time I have around 20 gallons of gas in 5-gallon cans, and 10 gallons, or so, of diesel in my barn...fuel for the mower, Gator, tractor, garden tiller, etc...

>>government "fixed" the gas can. Why? Because of the environmental hazards that come with spilled gas. You read that right. In other words, the very opposite resulted. Now you cannot buy a decent can anywhere. You can look forever and not find a new one.<<

This is so very true...I "baby" my old cans...I want them around until long after I'm gone...

The only real solution for reliably pouring from the new cans, especially into a car, is a long-necked, broad-mouthed funnel...

I've decided to also baby the funnel, in case changes in it's design are mandated at some point... :)

<comment><USER4> I thought I was just dumb when I kept spilling gas when trying to fill the lawn mower with an odd shaped spout.

</comment></comment><comment><USER5> I got one of these new and improved gas cans. It was very similar to the old one, that worked, except it had some spring-loaded thing to close automatically. To put gas in my boat I have to hold this can with one hand and try to twist the stupid spring thing with my other. Doesn't work. I ended up getting rid of the spout and pouring the gas, sans spout, into a funnel.

So yeah, the workaround defeats every supposed advantage of the new design.

</comment><comment><USER6> I was dangerously low on gas and in gridlocked traffic. Rather than risk dying in traffic, I pulled over into a parking lot a couple of blocks away from the gas station, walked over, bought a plastic gas can, filled it, and walked back.

I spent 15 unsuccessful minutes trying to get any of the gas into the tank before giving up and driving anxiously to the gas station. I seriously thought I was struggling to be a functional human being.

I'd buy a heavy duty water spout.

</comment><comment><USER7> Why, it's almost as if government bureaucracies were low-accountability compared to businesses that compete for consumer dollars.

</comment><comment><USER8> I fill up a lawn mower ever week or two in the summer and don't find the tab difficult to use.</comment>


Joomla developer - <AUTHOR> http://www.comnez.com/developer/index.jsp?sub=joomla Hire dedicated Joomla developers instantly to work on your projects. Our US presence helps facilitate all the communication providing you with hassle free project management. Save 70% on development cost. <comment><USER2> Are you searching for one or what?

</comment><comment><USER3> Joomla is still a thing?

<comment><USER4> A popular thing, even!</comment></comment>


The Great Legacy.com Swindle - <AUTHOR> http://idlewords.com/2010/07/the_great_legacy.com_swindle.htm

<comment><USER2> Y'know, not that there's anything wrong with turning a profit from bereavement services but...the best thing that can be said about these legacy.com vultures is that their receipt of a Webby Honoree award is proof positive that the Webbys are full of shit. Hopefully somebody puts these predators out of business.

</comment><comment><USER3> I wonder if the scam goes deeper than you found out. I expected you to come to a head in the story where you paid the $79, and so did several other grievers. Though, I suppose that would be TOO slimy to go unnoticed.

The worst part of this is even if someone came up to replace legacy.com, they'd have a hell of a time convincing existing news papers to switch over. That, and building a new business off of newspapers, even online newspapers, seems a bit shaky right now.</comment>


Kafka: An End or a Beginning? - <AUTHOR> https://lareviewofbooks.org/article/kafka-end-beginning/ <comment><USER2> My initial thought before reading the article was "Well, Spotify did just move off of it..."

<comment><USER3> For those of us who have positioned their residences underneath rocks: is there a link to this?

<comment><USER4> [https://labs.spotify.com/2016/03/03/spotifys-event- delivery-...](https://labs.spotify.com/2016/03/03/spotifys-event-delivery-the- road-to-the-cloud-part-ii/)

</comment></comment></comment><comment><USER5> Queues have both a front and end.

</comment><comment><USER6> I find that Kafka loses his zeal when the uncertainty of an unformed epistemology is removed. It's in the circular questioning of subjectivity and post modernism that his work takes hold. Move beyond that and what was once existential horror in his writing becomes trivial nuisance.

<comment><USER7> My problem with shunting Kafka into post-modernism is it becomes too much a grab bag. Just like they try to vacuum up Cervantes and Sterne, aswell. Kakfa died 40 years before post-modernism; (and Cervantes 343 and Sterne 191).

But it brings to my mind a broader point: McHale's notion:

       intractable epistemological uncertainty becomes at a certain
       point ontological plurality or instability: push epistemological
       questions far enough and they "tip over" into ontological questions.

(I personally prefer the epistemological/ontological definition of modernism/post-modernism, especially here where we have Kakfa who could best be define (if anything) as a modernist writer being shoved into post-modern space.)

So is the shunting of a collective and ancient epistemological and ontological uncertainty an attempt to neutralize its implications? A question I think partly arises from something about your use of 'uncertainty' and 'unformed' here, which keeps occurring to me in terms of the excess of its vital substance and becoming: too much certainty/too much form tipping over into no certainty at all/formlessness. Just as defining the question (and no matter what anyone else argues Hitchhiker's Guide is my favorite example of this in fiction) for the answer of '42' as 'How many roads must a man walk down?' provides a solution, is it any more than a placebo affect? that at its core highlights the instability of our epistemological and ontological positions more intensely than a blank answer would have (and thereby beats us all over the head with a teleological hammer).

</comment></comment><comment><USER8> The author, not the streaming product.

</comment><comment><USER9> I was looking for an article about the Kafka queue system. Is this hackernews or unemployed philosopher news?

<comment><USER10> Please don't post this sort of swipe. It's fine if you're uninterested in (Franz) Kafka; plenty of the rest of us are, and the submission is perfectly on topic.

It's in HN's DNA (not to mention the opening paragraph of [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)) that it covers a wide range of topics, far beyond just computing, tech, and startups and definitely including arts and letters, among other things.

Acting like the rarer species should be wiped out is a lame way to treat this site.

<comment><USER11> On the other hand, when a title is _going_ to mislead and confuse most readers, it would be courteous to extend or clarify the title such as:

" _(Franz) Kafka: An End or a Beginning?_ "

That is, unless the _goal_ is to mislead and feel smug about it.

<comment><USER12> On my screen, it shows up as "Kafka: An End or a Beginning? (lareviewofbooks.org)" which was all the information I needed to determine that it related to the Author before clicking through.</comment></comment></comment></comment>


Windows 8 Release Expected in 2012 - <AUTHOR> http://www.pcworld.com/article/182855/windows_8_release_expected_in_2012.html

<comment><USER2> Wait, what? 128-bit architecture? I'm not sure what the utility of this would be, as 64-bit ints are huge and floating point is already a special case.

With 16-byte pointers, your application would be SUV-sized no matter what you do.

What kind of things need 128-bits to represent? Is this a case of representing 4-up 32-bit ints or something of the sort, that a 128-bit CPU would be basically a 4-way vector one inherently?

</comment><comment><USER3> article from 2009?</comment>


The daily lunch delivery of India's dabbawallahs  - <AUTHOR> http://37signals.com/svn/posts/2882-the-incredible-delivery-system-of-indias-dabbawallahs <comment><USER2> Having grown up in Asia before moving to the West, I've always wondered why we accept such shoddy excuses for lunch around here. You've got limp, cold sandwiches, or reheated leftovers in tupperwares.

Or you spend a pretty dime on some nice, real food by eating out.

Where I grew up, lunchboxes are small, but elaborate - food is neatly compartmentalized like in the article, and just about every place has a steamer to heat it up without the use of microwaves (aka the dessicator).

<comment><USER3> What you're seeing is a low standard of living in action. There's enough surplus labor in India to deliver food from homes to offices everyday. You could do this in the US as well- but be prepared to pay however much labor and transportation costs.

Average productivity in the US is also much higher than in India (that's why wages are higher), but Americans are no more productive when delivering and preparing this kind/quality of food, so this is unaffordable and you have to settle for lower quality lunches (or be willing to pay more).

<comment><USER2> I wasn't talking about food delivery - where I grew up you packed your own lunches, but generally people had much better food for lunch than what you'd see in your average North American office. Employers/schools also took more care in providing the equipment/facilities to heat and cook lunches (far in excess of microwaves, anyhow).

It really speaks to a cultural difference - I feel that fast food culture has trained Americans to tolerate crappy food for lunch (or splurging on eating out). Lunch on a work day is not something to be savored, but rather something to be done with. IMHO there's something America can stand to learn here.

<comment><USER4> What is there to learn? There is no way I'm going to waste my time packing a box lunch regardless of what appliances the company provides to heat it up.

<comment><USER5> Your attitude is exactly the point. In many other countries, they _would_ spend their time packing a box lunch. As an American by birth, I didn't understand this either until I went abroad. At first, it was simply shocking how much time/effort went into food preparation/consumption. But over time, I came to appreciate (and missed upon my return) the much more nuanced approach taken to cuisine in some other countries.

<comment><USER6> In India, the male worker doesn't have to spend his time. It's the wife/mother that does it. Even if the woman works, it's assumed she'll cook 3 hot meals a day.

</comment></comment></comment></comment></comment></comment><comment><USER7> First as mentioned Indian meals take time to cook and there is a strong emphasis on home cooked meals. There is social stigma involved in carrying the tiffin case back.

The workforce for the dhabbawallas is cheap and they live on a fairly low income. The way I understand it only a certain caste are dhabbawallas (correct me if I'm wrong).

Even though the number of deliveries is huge, the people being delivered earn considerably more than the dhabbawallas, they all have office jobs.

Having lived and experienced the Indian mechanism of things I am always impressed when this story resurfaces, but unfortunately knowing India I am very skeptical. They no doubt excel at what they do, but I would take the statistics with a grain of salt.

Ask yourself how it is possible to measure such performance?

The entire mechanism is so informal and excludes any 'reporting' (in the sense of data about efficiency) and is focused purely on delivery. I know a lot of "certified" companies in India that lack basic factory security, hygiene and protocols: they would fail a "real" certification.

<comment><USER8> I do not follow - isn't it all the more amazing that poorly paid, uneducated workers without proper salaries are able to achieve this?

I would measure their performance by inserting random 'canary tiffins' over a period and measuring their loss percentage. You could also track some individual carriers and get a similar measure to combine into the previous metric.

</comment></comment><comment><USER9> The "high end tiffin set" linked from the article costs $85. You could probably buy it for under $20 at your local Indian grocery store. If you are in a large city it's quite likely within 10 miles of where you live/work.

<comment><USER10> are all tiffin sets metal? i'm pretty sure i've seen similar concept bento box stacks that are plastic.

<comment><USER11> Yeah I almost clicked _buy_ until I thought "How will I reheat these, microwaves will not like these!"

<comment><USER12> So now do you understand why tiffin boxes are made of metal. Not that microwaves can't work with plastics or all sorts of plastics.

But because most people in India can't afford to buy a microwave at the first place.

<comment><USER13> We have plastic bowls for use in my office, and a micro. As do most of the other offices - I am in Mumbai, and a micro isn't that hard to afford for the middle class and many firms.

That said, there are a lot of other people who eat their food cold. This is India, so for whatever N=true, N'=true

</comment></comment></comment></comment></comment><comment><USER14> Does anyone else think it's ironic that a company called "Design _Within Reach_ " sells tiffins for $85, which even in America could be had for $20. (And in India, perhaps $10-15)

<comment><USER15> The point of Design Within Reach is not to sell well-designed products at low prices, but to sell well-designed products (mainly furniture) that would otherwise be impossible to buy through normal retail channels. "Within reach" refers to availability, not affordability.

</comment></comment><comment><USER16> It is things like this, why I love capitalism.

Not getting into a political debate, but which other economic system known to man, could allow a system to be created that is more efficient than better capitalized rivals (read FedEx, UPS, DHL) and all packages delivered by people that are illiterate.

I think it is easy to underestimate the logistical challenges of delivering food to 175,000 people all over a city when you have never tried it.

As someone that has worked with a friend try to coordinate lunch orders for just 100 - 200 clients (including buying enough ingredients so there isn't waste, to collecting all orders in time, to delivering lunches on time), let me assure this is no easy feat.

The most ironic thing though is that I think that if you were to plot a graph between the number of customers you have and how easy it is, I think you would see that it initially starts a in dip (i.e. delivering and serving lunch for 1 - 10 people is relatively easy, but as you go up to say 500 people complexity blows up and efficiency - on every scale - plummets) and then after you reach some local maxima (when you are able to afford more people and better systems from the revenues) efficiency starts to pick up again and the graph goes up and to the right.

God bless the free market - wherever it is!

<comment><USER17> These guys only _DELIVER_ pre-packed lunch boxes. Somebody in the lunch- eaters' _HOUSE_ makes the food and it's picked up from there and delivered to the lunch-eater. This is not a catering service (hence the part of of your comment about procuring food doesn't apply).

<comment><USER18> If that is the case, why do they have to bring the empty container back? Why couldn't the person bring it home to their own house?

I understand why you would get it delivered so it is hotter/fresher... but not the return

<comment><USER19> There is a social stigma against carrying your own food.

<comment><USER20> But Shahrukh Khan carries his plastic tiffin packed by Anushka Sharma to work in Rab Ne Bana Di Jodi and his coworkers are in awe!

<comment><USER21> That scene is from a small Punjabi town. It is difficult to carry lunch boxes in Mumbai's local trains.

</comment></comment></comment></comment></comment></comment><comment><USER22> [http://upload.wikimedia.org/wikipedia/commons/4/49/CaseStudy...](http://upload.wikimedia.org/wikipedia/commons/4/49/CaseStudy_MumbaiDabbawallas.pdf)

(shoddy design of ppt, you have been warned!) Page 10 onwards, their system is described briefly.

Another study published by IIM Ahmedabad. [http://www.iimahd.ernet.in/publications/data/2005-09-01ravic...](http://www.iimahd.ernet.in/publications/data/2005-09-01ravichandran.pdf)

HBR's case study from last year, for those who want a paid article: [http://hbr.org/product/the-dabbawala-system-on-time- delivery...](http://hbr.org/product/the-dabbawala-system-on-time-delivery- every-time/an/610059-PDF-ENG)

Yet another case study: (paid article) [http://cases.ivey.uwo.ca/cases/pages/home.aspx?Mode=showprod...](http://cases.ivey.uwo.ca/cases/pages/home.aspx?Mode=showproduct&prod=9B04D013)

A similar one, comparing NYC. [http://etidweb.tamu.edu/classes/idis344/Is%20IT%20a%20necess...](http://etidweb.tamu.edu/classes/idis344/Is%20IT%20a%20necessity%20-%20lunch%20delivery%20system-3p.pdf)

Mumbai dabbawallahs are pretty cool in their methods! (dabba = box, wallah = suffix, that says person)

</comment><comment><USER23> NYT wrote a pretty good article a while ago on these guys: [http://www.nytimes.com/2007/05/29/business/worldbusiness/29l...](http://www.nytimes.com/2007/05/29/business/worldbusiness/29lunch.html)

</comment><comment><USER24> <http://www.youtube.com/watch?v=N25inoCea24> youtube video of a TED talk by the president of Mumbai Dabbawala Education Centre. Closed captioning would have helped non-indian viewers, this commentary on the video might help [http://www.hindu.com/mp/2011/03/14/stories/2011031451160400....](http://www.hindu.com/mp/2011/03/14/stories/2011031451160400.htm)

</comment><comment><USER25> Definitely fascinating. Don't forget, however, that many of these Mumbai dabbawallahs live a precarious existence.

Perhaps the fear of homelessness and hunger encourage the high success rate. This is not a model I'd like to replicate in my own business.

<comment><USER26> Yeah, the last thing you want to do is give poor people opportunity.

</comment></comment><comment><USER27> I am sure some techies are thinking "I can write software to optimize this system and increase their revenue/profit. I will not charge them for the software, and will make money from the money they save.....". Just ensure your software can guarantee an accuracy rate close to theirs.

<comment><USER28> I bet they are employing mobile phones now.

<comment><USER12> That is already there from a long time. Mobile phone charges have become dirt cheap. Sometimes free calls to some 10 numbers, billed per second(1ps per second).

There are pre paid cards. For even 25 rupees(25 cents). You can even avail internet access for a day! From some carriers. I hope you are getting a glimpse of how messy the market is here.

</comment></comment></comment><comment><USER29> I totally remember seeing these dudes when I visited India. Dabbawallah roughly translates to "box guy" (or in context, "lunchbox guy"). They also have these guys called subgiewallahs who are basically walking farmers markets...

</comment><comment><USER30> I'm reading "The Starfish and the Spider" right now, though I'm early into the book, this system fascinates me. I find the illiteracy which both videos touched on equally fascinating as the system evolved around the workers' abilities rather than finding workers able to fit the system.

</comment><comment><USER31> Fascinating article and videos. Thanks for sharing.

Chaotic yet organized systems like this fascinate me.</comment>


Microsoft has joined Khronos, WebGL working group - <AUTHOR> https://twitter.com/neilt3d/status/498539402407063553 <comment><USER2> They implemented WebGL in IE, so sitting this out would just leave them having to implement a standard without input into the process.

Also, for old monopolist Microsoft, standards were a bane because they meant smaller players could interoperate with its software, and even sometimes influence its future via standards committees. For new underdog-in-certain- markets Microsoft, standards are a blessing because it means they can interoperate with larger players' software, and even sometimes influence its future via standards committees. I'm not sure how much that's taken hold culturally within MS, though. (And, of course, there are many places they're still not the underdog.)

<comment><USER3> I doubt there's really a "new" Microsoft. They're just in the "Embrace" phase of their usual 3-step process.

<comment><USER4> This seems such an old fashioned outlook now. MS doesn't have, and probably will never again have, a monopoly on the browser environment; they have no choice but to be good web citizens.

</comment></comment></comment><comment><USER5> It's interesting to see so many people supporting webGL. Other than the "same X, but now X runs inside a browser" novelty aspect, I have yet to see any evidence that webGL does anything useful. To be fair, in this respect, it's no different from flash or javascript or any of the other technologies that people use to produce inferior replacements of native applications.

<comment><USER6> Running in a browser offers an (imperfect) security sandbox on a desktop PC, so people don't have to download and run untrusted executables. It also offers portability, and a certain amount of "copy protection".

If your application is inherently networked, it works just fine in the browser.

<comment><USER5> The sandbox is a feature afforded by the underlying OS and CPU architecture. I didn't quite understand your point.

With regards to game distribution, I don't see any particular advantage that a browser has over something like Steam. You don't need to download multiple gigabytes either. You could design a game to stream levels/assets/etc on- demand. In any case, even with webGL, a game would need to do that.

<comment><USER6> _The sandbox is a feature afforded by the underlying OS and CPU architecture_

Absolutely not; the sandbox of Javascript apps is entirely within the browser. The CPU architecture may theoretically prevent a userspace app from breaking into ring 0, but that's not the interesting thing; you're trying to prevent random apps from gaining access to all the tasty data in userland.

"Please do not download and run random executables" is a lesson that security people have been trying to get across for a while. Running a native game executable involves trusting it not to be malware. Running a webgl or HTML5 game does not.

(The sandboxing of webgl may be dodgy, which is a weakness here.)

<comment><USER5> >Absolutely not; the sandbox of Javascript apps is entirely within the browser. The CPU architecture may theoretically prevent a userspace app from breaking into ring 0, but that's not the interesting thing; you're trying to prevent random apps from gaining access to all the tasty data in userland.

I don't know why you felt compelled to state a categorical denial when the facts dispute it. Please read up on how security tokens work in Windows, for e.g.

[http://msdn.microsoft.com/en- us/library/bb625957.aspx](http://msdn.microsoft.com/en- us/library/bb625957.aspx)

> Running a native game executable involves trusting it not to be malware. > Running a webgl or HTML5 game does not.

There is no difference between those two executions in modern operating systems that implement mandatory access control.

</comment></comment></comment></comment></comment><comment><USER7> That's good to see. Now if they could support OpenGL on Xbox and WP / Windows RT, that could be even more useful.

<comment><USER8> Nobody wants OpenGL on XBox. If anything, we'd want a PS4/Mantle style hardware level API. In practice since the hardware is so similar between XBox and PS4, the APIs would probably be pretty similar too...

On the other hand, the use of Direct3D is a competitive advantage for them. It made ports easier with the XBox 360 and it probably still makes them easier for the XBox One.

<comment><USER9> Would have to agree. The future of Microsoft is one development platform across Windows, Windows RT, Windows Mobile and XBox.

If as a developer I could have one codebase and target all three platforms it would be pretty compelling.

<comment><USER7> Except that MS is losing ground. Gaming is now spilling to other platforms and Xbox / Windows will be pushed aside with time with more competition. Developers would prefer to have a good common and open API instead of using 10 different proprietary ones.

<comment><USER10> Then where is the pressure to get opengl on the consoles? In theory right now you could write some engine that used openglES 3 and ran on Android, iOS, OSX, Windows, and Linux. Your only missing parts are the three consoles, none of which show any interest in supporting write once run everywhere.

I mean, I know why - it is because the entire console model is license deals, app store cuts, and exclusives. If you could write your games and seamlessly run them everywhere, console manufacturers lose their primary pitch to consumers. Especially since this console generation isn't amazing value hardware wise, you can build a computer as powerful as either for the same price as either.

And peripherals are an awful argument, because they are all wifi / bluetooth / usb based, nothing stops these companies from selling their accessories like the Move, Kinect, Wiimote, etc as pc peripherals with open APIs besides their complacency.

<comment><USER7> _> Then where is the pressure to get opengl on the consoles?_

Valve is just entering consoles scene. It's too early to call that pressure, but they at least plan to disrupt it. Time will tell.

 _> it is because the entire console model is license deals, app store cuts, and exclusives._

Yes, that's why this sick approach needs some serious disruption. Linux gaming looks like one.

 _> if you could write your games and seamlessly run them everywhere, console manufacturers lose their primary pitch to consumers._

Exclusivity is a weird pitch. Real pitch of consoles should be in ease of access, usability and user friendliness.

 _> you can build a computer as powerful as either for the same price as either._

That's exactly what consoles should be about - plug and play. No building for those who don't want it. All of that doesn't preclude using cross platform technologies. Let console makers compete on hardware (Asus, Dell whoever) and not on locking developers into their walled garden proprietary OS and APIs.

</comment></comment></comment></comment></comment></comment><comment><USER11> So are they going to join, sabotage, and abandon WebGL like they did with OpenGL?

<comment><USER12> Unlikely, but that would've been cool. The monopoly of HTML etc. on the web has to be stopped somehow.

<comment><USER13> The monopoly of an open standard? What's wrong with you?

<comment><USER12> Call it what you want but the end result is obvious: I cannot use anything but HTML to build a browser-based GUI. It already killed the Flash and Silverlight. It is slowly spreading the metastases into mobile and desktop as well.

<comment><USER14> > It already killed the Flash and Silverlight.

Most people consider that a good thing, considering that both of these technologies were abominations that required proprietary plugins full of security holes, that didn't even run everywhere you needed them.

<comment><USER15> > both of these technologies were abominations

I'll give you that they were buggy, but Flash enabled a LOT of cool stuff to be delivered on the web that HTML still can't do. Go visit Newgrounds or Kongregate and see what people have been doing, basically unchanged, since the late 90s.

I'm not sad that it's gone, but it was pretty great at what it did.

<comment><USER16> Yes, Flash has some cool functionality in it, but by not being an open standard, it also held the web back because third parties could not implement it and Adobe's development model did not scale.

While Apple refusing to embed Flash on iOS is what killed it, truth be told at that time Adobe wasn't capable of delivering a mobile version that worked well, as they lacked the resources for it, just how they lack the resources to deliver a supported and polished Linux / NPAPI version, which was dropped. The version that was bundled with Android, with all due respect, was horrible. Flash only worked well due to the Windows monopoly, but the approach eventually broke down due to mobile devices.

HTML5 may not be so evolved, but at least it works on my Android in both Chrome and Firefox, it works on my MacBook, it works on my Ubuntu Linux, it works on my Windows Phone that I keep around as a paper holder and it works on my iPad. And if portability and instant updates and everything else that makes the browser great are not that important, then you're better off going native.

<comment><USER17> >HTML5 may not be so evolved, but at least it works on my Android in both Chrome and Firefox, it works on my MacBook, it works on my Ubuntu Linux, it works on my Windows Phone that I keep around as a paper holder and it works on my iPad.

I dislike HTML5 for this reason. In the heyday of Flash you could sidestep most of the bloat of the web with a click-to-play plugin setting or by not installing the extension at all, and 99% of the sites that relied on Flash completely for navigation etc. weren't worth browsing in the first place. Now that many of the capabilities of Flash are built into the browser, you don't really have a way to avoid superfluous animations and awkward nonstandard interfaces and whatnot. Every time I have to use a Wikia wiki, my computer and I each shed a single minimalist tear.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> I wonder if Microsoft will adopt OpenGL ES for Windows Phone (and desktop Windows), too.

<comment><USER19> They already did: [http://msopentech.com/blog/2013/12/20/msopentechcontributest...](http://msopentech.com/blog/2013/12/20/msopentechcontributestoangle/)

<comment><USER7> ANGLE is not a proper OpenGL support, it's a workaround. Better than nothing of course, but still second class citizen.

<comment><USER20> Care to explain?

<comment><USER7> It's not a native OpenGL support, it's a translation layer (so more overhead naturally).

</comment></comment></comment></comment></comment><comment><USER21> Khronos, not Kronos.

<comment><USER22> Thanks. Fixed.</comment></comment>


When searching google for wikipedia a wikipedia searchfield is now first result - <AUTHOR> http://www.google.com/search?q=wikipedia

<comment><USER2> And now they seem to be automatically installing new "search engines" for you in Chrome, with the default keyword as the name of the website. So now, if I type "site:en.wikipedia.org blah" into my Chrome addressbar, it automatically redirects me to [http://en.wikipedia.org/wiki/Special:Search?search=blah&...](http://en.wikipedia.org/wiki/Special:Search?search=blah&go=Go), instead of sending the query "site:en.wikipedia.org blah" to Google.

You can remove this in "Options->Basics->Default search->Manage". But still, I found this seriously irritating for three reasons:

1\. Wikipedia made the (IMO quite sensible) decision to enable "noindex" in talk pages, deletion debates, etc. to prevent random Google surfers from accidentally running across all the libelous/embarassing content and other crap that ends up in project space. Now that stuff becomes more widely exposed agian.

2\. I want to search for occurrences of the word/phrase "blah" on Wikipedia, not go straight to page "blah". "Blah" may be a phrase with some meaning, but the Wikipedia page "blah" may be about some idiot garage band or website who chose it as a catchy name for themselves --- and since "Wikipedia is not a dictionary", that page won't have any information about the actual phrase "blah" I'm looking for.

3\. I plain old don't like the Wikipedia search interface.</comment>


The AI Revolution: Our Immortality or Extinction - <AUTHOR> http://waitbutwhy.com/2015/01/artificial-intelligence-revolution-2.html <comment><AUTHOR> This is part two* of a great long-form essay on the topic of a technological singularity, and its impact on humanity. Even if the majority of HN users are familiar with the concepts, the prose of this essay is very readable, and it's a great piece with which to introduce non-technical people to the topic.

[*] Part one is here: [http://waitbutwhy.com/2015/01/artificial-intelligence- revolu...](http://waitbutwhy.com/2015/01/artificial-intelligence- revolution-1.html)</comment>


Unix-like virtual shell inside browser - <AUTHOR> http://cb.vu/ <comment><USER2> Very interesting. It seems that each visitor is in a self contained environment. I made a simple HTML called "test.html" that I could access from <http://cb.vu/test.html>. This file was only visible in my own browser,

<comment><USER3> Indeed, there is minimal communication between your browser and the server. Nearly everything happens locally in your browser. Many responses from the commands you can use are canned. Watch the source code to see how it's done ;-)

</comment></comment><comment><USER4> the password for root is...root

Interestingly, I ran rm -rf / as root, and it acted like it wiped out everything. reboot made it act like it was rebooting, and refreshing the page showed "you broke it!" until I deleted the appropriate cookies. Fun!

<comment><USER5> If you refresh the page 4 times, the page shows:

 _You can use "fortune" you know..._

</comment></comment><comment><AUTHOR> This has been built using terminal.js : <http://www.masswerk.at/termlib/index.html>

This sort of in browser shell seems to be useful for building stuff like "MongoDB Browser Shell" <http://mongo.kylebanker.com/>

<comment><USER6> I wish I knew about terminal.js before I started working on an implementation of a shell in the browser: <http://tsh.ashafa.com/>

I needed more than the traditional input text type or textarea for input I saw all the time while I was researching a solution.

<comment><USER7> I've been working on something like this as well, and your approach is closer to what I've done than terminal.js. To me, it makes more sense to pass the commands back to the server for parsing and handling - let JS just be the display handler. Oh, I like the tab completion stuff too.

Your source code indicates it may have an Open Source license on it. Do you have the raw source available somewhere? Happy to share what little I have done so far.

<comment><USER6> Thanks and yes I will put the entire source on github as soon as I clean it up. The current un-minified javascript can be found here:

<http://tsh.ashafa.com/static/global.js>

It was really a quick experimental hack that turned into something worth dedicating a little more time to. Not my best javascript at all.

</comment></comment></comment></comment><comment><USER8> Trying the traditional bash fork bomb gives a rather fun screen. Try entering the following

      :(){ :|:& };:

<comment><USER9> Well that was fun :P "If problems continue, install linux"

</comment></comment><comment><USER10> I hope Chrome OS includes something like this. Ssh support would be especially useful.

<comment><USER11> Google Native Client opens up a world of possibilities for client-side apps that still live within the Browser > Tab > DOM.

I'd mostly just want a TTY w/ OpenSSH, VNC, and RDP. Usermode Linux would be nice too.

</comment></comment><comment><USER10> Surprised vi works, but hitting backspace made my browser go back in the history.

<comment><USER12> Backspace doesn't work in chrome 4.0.266.0 (r33992)

</comment></comment><comment><USER13> Ubiquity allows a similar interface, at an arguably better abstraction level: <https://mozillalabs.com/ubiquity/>

<comment><USER14> Hey, I wanted to meet up with you in Boulder (Qualcomm interview guy). I couldn't find your email, so I'm spamming all your comments, which is probably against the law. Please email me at email@example.com, or read my longer comment: <http://news.ycombinator.com/item?id=1078343>

</comment></comment><comment><USER15> Doesn't work in iPod! :(

It must be because you need an input or text area to make the virtual keyboard to appear.

</comment><comment><USER16> If you want to try, type "invaders" (without the quotes), and enjoy...

</comment><comment><USER17> Seriously cool! Thanks Colin, for sharing this with the world :-)

</comment><comment><USER18> Pretty cool.. I did mostly play snake thought.

</comment><comment><USER19> And so the circle is complete.

</comment><comment><USER20> Try invoking ed =).

<comment><USER21> Looks like you can even use vi.

</comment></comment><comment><USER22> please port lynx :)</comment>


Ask HN: Do you dream about code? - <AUTHOR>

I had a dream about coding.
There was a new C# keyword 'bargo' which returns the value of the last but one function in the call stack. Someone had refactored all my code to make heavy use of it and I was completely lost.
Does anyone else have dreams about code? How is the code/language/environment in your dreams different from what you use in real life? <comment><USER2> I've had a nightmare about getting stuck inside a pure function. I was trying get myself out using console output functions. I couldn't get out because all my member methods were mutators. Wasn't able to cast myself to string.

Makes no sense, i know.

<comment><USER3> Oh god I'm sorry I normally try to write more substantial comments but I laughed way too hard at this comment I had to thank you.

</comment></comment><comment><USER4> If I'm stuck on some coding/logic problem I sometimes dream of repeatedly going over the problem.. rehashing the process that isn't working over and over again... Its one of those times when you wish you could get some stupid song in your head just to push that out. heh

</comment><comment><USER5> This is a great question. Wish it had gotten more discussion.

When I've been working on a hard programming or design problem for several days, I often get a sort of repetitive dream where I'm going over and over the pieces of the problem. It's as if they are building blocks and I am turning them over and over in my hands, except they're ideas and not physical objects. The dreams rarely make direct technical sense and it's not like I wake up with solutions, but it still feels like part of the creative process.

<comment><AUTHOR> Me too, I wish it had got more discussion. I guess I shouldn't have posted it on a Sunday morning.

</comment></comment><comment><USER6> Sometimes when am stuck, I get clues in a dream about the problem.

<comment><USER7> I've had this. I remember getting stuck when I was 17 on some ridiculous C string parsing problem. I'd been at it for hours when I gave up, went to bed, dreamed about it, woke up and wrote the solution in under a minute.

It was kind of a surreal experience given the amount of effort I had put in the evening before.

</comment></comment><comment><USER8> I had a dream before while I was learning c# : it's like I was walking on top of a chunk of code in c#.

</comment><comment><USER9> Yeah, there are times when I'll toss and turn all night dreaming about coding. Usually that's only when I've been on a serious working binge and drank coffee late in the evening though.</comment>