Translation from VC-Backed PR Jargon to English of Magic Leap CEO Statement - <AUTHOR> https://daringfireball.net/2020/05/abovitz_magic_leap_translation <comment><USER2> $2.4B wasted on this.

They weren't smashing atoms together to discover world-changing new physics. They didn't send people to space or develop some new revolutionary type of transport that could transform society.

They made some really average AR glasses.

Two point four BILLION dollars.

The Tesla Model S cost ~500M to develop from start to finish[0], so Magic Leap has spent 5 times that amount.

The ENTIRE Starlink satellite network will cost ~$10B total to develop, build, and deploy [1]. So Magic Leap spent a quarter of that.

Apple developed and released the original iPhone on a budget of $150M. Magic Leap has spent 16 times that.

These aren't apples to apples, of course. But I think it puts in perspective just how much of a scam Magic Leap is in general.

[0] [https://teslamotorsclub.com/tmc/threads/model-s- development-...](https://teslamotorsclub.com/tmc/threads/model-s-development- costs-so-far.7294/)

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

[2] [https://en.wikipedia.org/wiki/IPhone_(1st_generation)](https://en.wikipedia.org/wiki/IPhone_\(1st_generation\))

<comment><USER3> You could say that none of it was "wasted", people earned their salary there (I assume) and learned something, that led to consumption and investments elsewhere.

Unless someone literally burnt the money, it did some good.

Then again, yea, $2.4B is just ridiculous, wonder what Jeri Ellsworth and Tilt5 ([https://www.tiltfive.com](https://www.tiltfive.com)) could have done with those resources...

<comment><USER4> "people earned their salary" and "learned something" aren't great arguments.

Building a bridge that collapses minutes after construction also entails workers earning salaries, and perhaps learning something. that still doesn't mean it's a good use of funds, it's waste. you want the investment to create actual value for someone.

<comment><USER5> People have tendency to abandon this line argumentation immediately when it's applied to something they admire and have been hyped up. Wasted money was actually R&D.

Example that gets almost everyone: Space Shuttle.

It was supposed to be reusable space truck that reduces cost. It was several times more expensive than conventional approach with non-reusable rockets and shuttle. It was infrequently used. It drained NASA budged from anything productive. Even those combined manned+cargo missions could have been achieved cheaper with double launch. It was objectively failure based on the goals and purpose of the project.

They developed so much new technology and inspired people. It was simply great piece of engineering and PR. We learned a lot.

<comment><USER6> That being said, I believe the SLS gave many more spin-offs than the Magic Leap

I wonder if there were missions that would not be possible without it (maybe the Hubble launch and the AMS launch and installation) though most likely they would be adapted to work without it.

<comment><USER5> Are you satirizing? Because you make exactly the two invalid arguments I mentioned.

<comment><USER6> I am not, I'm referring to missions where the Shuttle arm was used

Yeah, maybe they could be a double launch or worked in some other way.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> How come VCs are not learning from examples like this? Perhaps get engineering consultants take a look at the tech, provide their independent assessment of the tech and guide them to not make these mistakes again?

Hindsight is always 20/20 except when you also have foresight which is maybe 20/40? Surely, Juicero with foresight was a bad idea.

Or ostensibly, these things are not that straightforward as they seem to be?

<comment><USER8> People act like Juicero was claiming they had some crazy proprietary way of squeezing bags, and when it turned out you could squeeze them by hand the game was up, but that's just not true. Nespresso hasn't collapsed because some plucky journalist ripped open the little capsules and stuck them in a Cafetière. We all know nespresso is just coffee in little pods.

Juicero was selling a lifestyle product to people who wanted super premium juices. It was for the sort of person who buys stuff from Gwyneth Paltrow, has a siphon coffee machine and gets teenagers blood injected into their face to stop aging. While that's not the vast majority of us, it doesn't mean there isn't a market for it.

<comment><USER9> Nespresso does not come with an insanely steep price, you can't squeeze the little capsules by hand :) and it has actual use cases:

* I would never drink the stuff some of my colleagues like, and vice versa, so we all buy our preferred capsules and are all happy.

* I have 3 variations depending on time of day or how I feel, and my favorite is (to my own surprise) a really cheap supermarket brand with compostable capsules which is not actually even from Nespresso

* I don't have to deal with the dirt and messes with loading and emptying the machine.

* Even my most clueless colleagues and guests can put a capsule in, push a button and obtain coffee. I assure you some of them couldn't operate anything much more complex than that.

* Capsules are sealed so they retain taste for longer. I don't drink enough to go through a bag of raw coffee before it loses its taste.

<comment><USER7> I think Nespresso makes the best espresso shot, even better than a coffee shop. Nespresso is exactly the same everytime.

Also their pods are manufactured in Switzerland with extreme care for quality and precision.

</comment></comment></comment></comment><comment><USER10> 'spatial computing in enterprise' << for some reason I expect this to be the result of a summer intern's project

</comment><comment><USER11> Do we have any evidence of the $350mm raised? Might the e-mail have gone out on a term sheet, as opposed to anything binding having been signed?

On a whim, I tried to see if the SEC's EDGAR [1] showed any recent Forms D by Magic Leap. Not that surprisingly, it looks like they haven't ever bothered filing one.

[1] [https://www.sec.gov/edgar.shtml](https://www.sec.gov/edgar.shtml)

</comment><comment><USER12> For anyone wondering about how much Google invested in them, it was at least $542 million [1].

[1]: [https://www.businessinsider.com/magic-leap-google- investment...](https://www.businessinsider.com/magic-leap-google- investment-2014-10?op=1&r=US&IR=T)

</comment><comment><USER13> Wow, they managed to raise another $350m.

What a strange world we live in.

<comment><USER14> VC money printer go brrrrr.

</comment></comment><comment><USER15> This is my first time hearing about Magic Leap, and it is quite a story. Reminiscent of Theranos. Was the retinal projection tech ever real, even in an imperfect, non-miniaturised form?

Also, I stumbled upon a _Variety_ piece [1] about a Magic Leap conference that sounds straight out of HBO's _Silicon Valley_ :

>However, Magic Leap decided to go a different route. When its CEO Rony Abovitz took the stage at the beginning of the conference's opening keynote, he vaguely framed the company's technology as a remedy to political and other divisions plaguing today's world, postulating: "Our new medium of spatial computing is fresh. It doesn't carry the baggage and negative headlines that are dominating the news today."

...

>"The conversation that we are starting here goes on for decades," proclaimed Abovitz. He went on to talk about Magic Leap's idea to build city-wide AR information layers — an interesting idea, but not anything we should expect to materialize any time soon, as he freely admitted, while inexplicably bringing up the spectre of fascism:

>"There is gonna be other companies proposing alternate x-verses. There will be all these competing universes and systems, like there is competing governments. There is monarchy, there is democracy, there is fascism, and there is progressive, liberal thought. And these holistic systems will be how governance might happen. How many people live their life. And this is not tomorrow, this might be a few years from now. But you set the stage for that right now."

>Abovitz seemed to sense that there was still some work to be done before Magic Leap could defeat fascism in the Magicverse — and he promptly proposed to host a Burning Man-style gathering to get it done:

>"In order to continue this conversation, we probably kind of need a Burning Man in the desert. Like a kind of Magicverse event where we hang out for a few days, do a vision quest, build weird things. So more on that later, can't commit to it 100%, but we think it'd be cool."

>There were some other odd moments that morning. A third-party developer read a poem to the audience. Science fiction author and Magic Leap chief futurist Neal Stephenson talked close to 10 minutes about virtual goats. The three-hour keynote didn't feature a single live demo.

[1] [https://variety.com/2018/digital/opinion/magic-leap- leapcon-...](https://variety.com/2018/digital/opinion/magic-leap- leapcon-1202978949/)

<comment><USER10> retinal projection tech is pretty old actually, from the HIT lab at UW ([http://www.hitl.washington.edu/projects/vrd/](http://www.hitl.washington.edu/projects/vrd/))

"The VRD, based on the concept of scanning an image directly on the retina of the vi ewer's eye, was invented at the HIT Lab in 1991."

</comment></comment><comment><USER16> "Magic Leap: Spatial Computing for Enterprise"

you gotta love whoever come up with "Spatial Computing for Enterprise".

</comment><comment><USER17> Who put in $350 million more? Did anybody? So far there's just an internal email from Magic Leap management.

<comment><USER18> Someone suffering from sunk cost fallacy maybe

</comment></comment><comment><USER19> An entertaining read, but I don't believe for one second that this is how it was for most of the life of the company. Perhaps toward the end this became their reality.

It's really more of a case of drinking too much of your own kool-aid and biting off more than you can chew.

I believe that everyone from the top down really did believe they were creating an amazing future. It reminds me of the similarly named company General Magic from the 90's. I tried it out in the day and the documentary is simultaneously sad and joyous. Hats off to Magic Leap for trying. But.. they should have released sooner and often rather than trying to create an entire medium and ecosystem behind a curtain for v1.

</comment><comment><USER20> Predicting the future is notoriously hard.

I think plenty of successful products were once in a shaky/buggy/bulky state. The hype was high on AR and only a few experts had a good understanding of the constraints, especially about optics, physics, and sensors.

</comment><comment><USER21> Realistically, which "enterprise" would buy this?

<comment><USER22> Given that HoloLens already exists, I guess, they're looking to leverage their investor selling skills on some enterprise execs that don't need this stuff...

<comment><USER23> Who will then force it on to their subordinates who have no use for it.

<comment><USER24> This. I have worked and developed on the HoloLens; it is 20% cool tech demo and 80% cardboard propped up by Microsoft's over-eager marketing (think Xbox Kinect). Only difference between them and Magic Leap is that Microsoft has a large swath of existing gullible enterprise customers who will happily buy whatever superfluous products they can be talked into buying, whereas I guess Magic Leap's core competencies are on the opposite end, selling to gullible VCs.

</comment></comment></comment></comment><comment><USER25> "We have closed significant new funding and have very positive momentum towards closing key strategic enterprise partnerships"

So meaningful...

<comment><USER26> Rofl. The last startup I worked for had "very positive momentum towards closing key strategic enterprise partnerships" from the day I joined to the day we went down like the Hindenburg.

</comment></comment><comment><USER27> Very smart people might have been duped into investing alright, but it's not because they were duped to believe in the tech or the product, rather it was because they were duped to believe that a bigger sucker will come along as from their previous experience one usually did eventually.

</comment><comment><USER28> ELI5 what constitutes spatial computing platform for the enterprise? $500 measuring devices (aka rulers)?!?

</comment><comment><USER29> When I visit [https://www.magicleap.com/](https://www.magicleap.com/) without cookies enabled, I'm redirected to a non-existent page.

</comment><comment><USER30> Don't hate the player, hate the game

</comment><comment><USER31> I think this is harsh. The CEO surely must be acting in good faith to his investors?

<comment><USER13> The CEO has actually stepped down: [https://www.theregister.co.uk/2020/05/29/magic_leap_ceo_rony...](https://www.theregister.co.uk/2020/05/29/magic_leap_ceo_rony_abovitz_steps_down/)</comment></comment>


The Google Electricity play - <AUTHOR> http://gaurablikestech.com/2010/01/09/google-energy/

<comment><USER2> Think of it as a hedge against any type of electricity disruption and it makes more sense to me. If they control their own electricity they gain more flexibility and if it is clean it makes them look all the better.

</comment><comment><USER3> He who controls the electricity...

</comment><comment><AUTHOR> Broadband play? Perhaps</comment>


The Thoughts of a Spiderweb - <AUTHOR> https://www.quantamagazine.org/the-thoughts-of-a-spiderweb-20170523/ <comment> awinter-py In social organisms this is called [https://en.wikipedia.org/wiki/Stigmergy](https://en.wikipedia.org/wiki/Stigmergy) and means the way that instructions can be 'written' onto the environment (i.e. ant pheromones).

In theory no set of instructions makes sense outside a compatible environment. All instructions are implicitly bound to a reality where they make sense.

</comment><comment><USER2> The idea of neural processing and signalling happening _outside_ what we generally think of as the nervous system has me wondering about how oders are processed by insects.

E.O. Wilson has written of a "chemical grammar" of ants, and the relative characteristics of, say, danger or alarm signals, versus food or "friend" signals.

An alarm signal should propogate quickly, be easily recognised, and _dissipate_ relatively quickly (no need in being alarmed long after the danger has passed). There's little concern that it be identifiable to other species. Small, light, volatile chemicals serve this.

A food or "friend" identifier should be persistent, fairly durable, and _not_ be the same between different species (for various reasons). Larger, heavier, and less-volatile chemicals serve this.

The thought's occurred to me that with simple neurological systems, insects may have adapted neurochemicals to serve as exosomatic message transmitters (or maybe I'm getting this backwards and neurotransmitters have evolved from simpler chemical signalling). Which would make the "hive mind" a reality in mire than just metaphor.

Extending the concept, trees and plants with their massive surface areas make for a potentially very capable chemical emission and detection system. It was only after thinking that the branches (and roots) of a tree resemble the dendritic structures of neurons that I caught myself remembering that "dentrite" means "tree". So, yeah, doh!

It also suggests that whilst individual _trees_ don't think, _forests_ might....

Rampant speculation, but I'll toss it out there.

</comment><comment><USER3> I love the concept of "Human Cognition as Spider Web" analogy, because it certainly explains why I have, err, drastically faster synaptic response, recall, free association, and occasional synesthesia than most people I meet. Essentially a fiber optic network that needs a Controller of sorts (conscious mind) and a Library (long term memory) and bam, anywhere you want to go and anything available is nearly instantaneously available. That's when the "Dead Ends" and creative association kick in, funneling the energies downstream.

A lot of what gives this perception validity, to me, is the scientific research and discoveries regarding the elasticity and compensation dynamics of an injured brain. Sure, there are some basic paint-by-numbers functions (ex: sympathetic nervous?), but regarding the grey-matter and our notion of consciousness, it's a much more distributed, almost holographic model...or, just a really kick-ass web of energy and information...

In turn, this is why I hope when my mortal battery finally drains or gets shut off, my energy thingy rolling around in my human noggin can return to the Universal source from which it shoved it into this meatbag.

</comment><comment><USER4> Isn't this what we call "muscle memory"? To regard this as an "extended brain" looks a bit like sensationalism to me. My keyboard and my shortcut-utility aren't part of my extended brain, but highly productivity-enhancing tools, as is the web to the spider.

<comment><USER5> It depends on where you personally draw the line between self and other. It's arbitrary really. Your example of a keyboard as an extended mind may be perfectly valid if you extend your sense of self outwards if only just a bit.</comment></comment>


Ask HN: Any Connections at LinkedIn? - <AUTHOR> Trying to get support from an employee, any help would be much appreciated :) <comment><USER2> I don't know, have you tried linkedin?</comment>


Web Framework Benchmarks Round 7 - <AUTHOR> http://www.techempower.com/benchmarks/ <comment><USER2> For all those interested in hackernews comments from the previous rounds, enjoy:

Round 6: [https://news.ycombinator.com/item?id=5979766](https://news.ycombinator.com/item?id=5979766)

Round 5: [https://news.ycombinator.com/item?id=5727012](https://news.ycombinator.com/item?id=5727012)

Round 4: [https://news.ycombinator.com/item?id=5644880](https://news.ycombinator.com/item?id=5644880)

Round 3: [https://news.ycombinator.com/item?id=5573532](https://news.ycombinator.com/item?id=5573532)

Round 2: [https://news.ycombinator.com/item?id=5498869](https://news.ycombinator.com/item?id=5498869)

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

Lots of solid discussion.

</comment><comment><USER3> Summary: if you want performance, use Java, Scala, Go, Clojure, Lua, or C++.

Honestly, now with all the great Scala frameworks, Clojure, and the ability to run Rails, plus Cassandra, Storm, etc, I'm a little creeped out that I'm actually strongly considering building my current new project completely on the JVM.

<comment><USER4> I'm a fan of Go and an even bigger fan of Lua, and I'm not sure I agree with your summary. Go and OpenResty can push 300,000 "Hello World" plaintext responses a second, and some Java stuff can do x2 that, so JVM frameworks are _strictly_ better? And something called cpoll_cppsp trumps a _sane_ language choice? Don't be cute. :)

It is perfectly fine to not squeeze every drop from your hardware and pick Go or Lua. In the same vain, Flask may be x20 slower at a meaningless benchmark but you'd note that the ones that involve _actual work_ , you know, the kind your complex app will actually perform, the more involved it is the more the difference shrinks. All the way down to x4, in other words not an order of magnitutde.

The real takeaway summary should probably be: a well made framework like flask doesn't have so much overhead that the productivity gains it offers are not worth trading a bit of performance for.

A terribly made framework (I won't name names) will bite you in the ass. Choose carefully.

<comment><AUTHOR> I think the idea of a "meaningless benchmark" has become a dogma. Can you possibly know all the complexities that an app will contain when benchmarking a framework? No, but that doesn't make baseline benchmarks useless. Part of the reason for including the most basic (CRUD-ish) operations as separate benchmarks in their tests is so that you can make comparisons between basic "Hello, World" operations and more complex operations, which gives you a bit more insight into the overhead of each framework.

I'll take that any day, over guessing which framework is fastest.

<comment><USER4> Agreed, I should have avoided that particular phrasing.

</comment></comment></comment></comment><comment><USER5> I was surprised not to see Revel included in the round 7 results. You can filter results by it but nothing is shown.

This is significant because, on round 6, Revel was performing better than raw Go in at least some of the test scenarios, which is not something you can say about many frameworks.

Was there ever an explanation why Go without any frameworks was performing worse than Revel? Simply because not much effort had been put into optimizing the Go code?

<comment><USER6> I was also confused that when I switched to EC2 instances I didn't see ANY go.

</comment></comment><comment><USER7> I have the dubious honor of the slowest framework on the test on page #1! For some reason the i7 tests perform really badly for Phreeze, whereas the EC2 tests it performs near the top of all the PHP frameworks.

I've been too busy with work to look at the tests but my goal is to make a proper showing in round #8!

<comment><USER8> Thanks, jakejake. Your participation is always appreciated, especially your good spirit.

Yes, if you have time, please do help us resolve the issue (and I am guessing it is some configuration issue) for Round 8.

</comment></comment><comment><USER9> Slightly glad to see ASP.NET improved a little (at least the stripped/raw/barebones version).

Slightly sad to see the Mono performance is still abysmal.

Edit: link to the blog. It was submitted earlier, but apparently got killed:

[http://www.techempower.com/blog/2013/10/31/framework- benchma...](http://www.techempower.com/blog/2013/10/31/framework-benchmarks- round-7/)

<comment><USER10> ASP.NET`s performance can be improved further, but that requires application specific tuning. That said, it's pretty damn good, for a full framework.

I'm impressed by the Java options. Definitely something to consider if absolute performance is the requirement.

<comment><USER11> Performance should improve massively with the use of async..

<comment><USER12> There were a variety of experiments with async and I don't think there has yet been any data to show that it improved performance of this benchmark.

[0] [https://github.com/TechEmpower/FrameworkBenchmarks/pull/272#...](https://github.com/TechEmpower/FrameworkBenchmarks/pull/272#issuecomment-18108704) [1] [https://github.com/TechEmpower/FrameworkBenchmarks/issues/31...](https://github.com/TechEmpower/FrameworkBenchmarks/issues/315#issuecomment-18938468) [2] [https://github.com/TechEmpower/FrameworkBenchmarks/pull/339#...](https://github.com/TechEmpower/FrameworkBenchmarks/pull/339#issuecomment-19427936)

</comment></comment></comment></comment><comment><USER13> [http://www.techempower.com/benchmarks/#section=data-r7&hw=i7...](http://www.techempower.com/benchmarks/#section=data-r7&hw=i7&test=query&f=rpfnk-35t-bxu8)

If you notice the specific filters I've set, PHP actually outperforms Go for many cases. That's actually nice to see (PHP gets better with each release version). Well, if there was something like Coffeescript, but for PHP, then there's no better time than now to make it.

I really love the simplicity of Ruby, the performance of Golang/JVM and the massive popularity of PHP and it's compatibility with budget hardware (Shared hosting, etc). If there was a "Write your code in Ruby and we'll compile it to PHP" kind of generator/converter/service, that would be so awesome :D

(If anyone knows something like that that already exists, then I would be extremely thankful).

<comment><USER6> This is interesting, but why is there such a huge gap between raw php, and most of the php frameworks?

The one PHP framework that seems to do well is yaf. However, Yaf is actually written in C and is a php extension. I would expect it to do better than all the php frameworks, but that doesn't account for the huge gap between raw php and the other frameworks.

<comment><USER14> Assuming that the PHP frameworks are not just all terribly written (which seems unlikely), what this shows us is that the PHP interpreter is very slow, but the libraries that PHP uses are fast. The raw PHP benchmark doesn't actually have very much PHP code, so the slowness of the interpreter doesn't matter much, while the PHP frameworks (other than Yaf) all have a great deal of PHP code.

</comment></comment></comment><comment><USER15> From the "JSON serialization" requirements:

> For each request, an object mapping the key message to Hello, World! must be > instantiated.

Why mandate how the benchmark is implemented? What if some frameworks could be faster by not instantiating an object? For maximum speed, you'd want to stream-process the input into output while materializing as few intermediate objects as possible.

Benchmarks should be defined in terms of their observable inputs/outputs. Otherwise it's like defining a car's 0-60 measurement with a rule that says "the car must then take gas from its tank and inject it into the engine." And then a Tesla could only compete by adding a gas engine that it doesn't need or want.

<comment><USER16> For JSON serialization, I'd assume it's because they're testing object serialization.

<comment><USER15> Clients of a system don't know or care if the server actually constructed an object and serialized it. They care that they get the reply they expect, and do not care how it was constructed.

<comment><USER16> Right, but then you're just testing how fast a framework can vomit out a small string and some headers.

I'm not saying it's an especially useful benchmark, but it's intended to test something besides raw response speed.

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

<comment><USER16> I wholeheartedly agree. But like said:

> I'm not saying it's an especially useful benchmark, but it's intended to > test something besides raw response speed.

</comment></comment></comment></comment></comment></comment><comment><USER17> In an era when VMs are bought by the RAM size, this benchmark still does not show RAM usage, or performance at a specific RAM limit. In such a benchmark JVM is allowed to take advantage of its weakness. :)

<comment><USER8> We do have a fairly long-standing issue to add collection of resource statistics while tests are running [1]. It has not yet been implemented, however. I do want to get that implemented sometime soon because I too would like to see CPU utilization (some frameworks _do not_ successfully saturate all of the cores!), memory utilization, and IO utilization.

[1] [https://github.com/TechEmpower/FrameworkBenchmarks/issues/10...](https://github.com/TechEmpower/FrameworkBenchmarks/issues/108)

</comment></comment><comment><USER18> I'm rather unimpressed by the implementations of the Python benchmarks, and surprised there isn't a single mention of gevent - that alone would have speeded up, say, Bottle by nearly an order of magnitude.

We use uWSGI + bottle + gevent for REST APIs and a relatively humble box can reach flood a gig Ethernet link with _useful_ replies. And, of course, any decent implementation will cache computed results, etc. (but toss Varnish in - which we haven't, yet, since there's no need - and you'll outperform anything else for cacheable replies).

</comment><comment><USER19> With all the nice alternative frameworks available for the JVM these days, including some pretty micro/bare-bones alternatives, I wonder if Java will find new favour with startups or if they'll stick with Rails. The old "the Java ecosystem is too complex/over-engineered" excuse falls down with stuff like Play or Grizzly.

I fully realise the language itself is annoying and clunky and that Scala is not necessarily the answer. I'm just saying that there are some serious upsides to consider beyond language aesthetics.

<comment><USER20> Which is more expensive, servers or developers? Which is more expensive, server or opportunity cost?

In a lot of cases, performance of the server isn't the determining variable in the overall cost calculation.

In addition, the relationships between those variables likely changes over time.

I'm guessing that for _most_ startups, HR expenses and opportunity costs are pretty important relative to actual server performance.

Obviously, if the point of your startup is some kind of high-performance computing thing, the equation is tipped more towards server performance. But, you probably aren't using off-the-shelf frameworks in that case, either.

<comment><USER19> Not to beat a dead horse, but ask Twitter. I expect their answer would be something like "Migrating off a non-performant solution to Java was more expensive than just doing it right in the first place."

Also, my point was that the newer jvm frameworks aren't much more complex or time-consuming than Rails so developer cost isn't such an issue. That said, not much compares to Rails for getting stuff up and running quickly.

<comment><USER21> Cost is relative to the maturity of the business. They may not have had the funds or time to do things the right way the first time, and if they had tried, they might not have ever made it into near-unlimited-budget-land.

<comment><USER19> Fair enough, back then the newer, sleeker jvm frameworks may not have existed. But now, perhaps there's no such excuse.

Maybe these options will become really compelling once Kotlin is released. It compiles to both the jvm and JS so it will hit the performance, convenience and "fun to write" sweet spots all at once...or so I hope.

</comment></comment></comment></comment></comment><comment><USER22> Why Erlang-based frameworks removed in Round 7?

<comment><USER8> We were unable to correct a freezing issue that we ran into with the Rebar package manager. We removed Cowboy and Elli until this can be resolved.

See [https://github.com/TechEmpower/FrameworkBenchmarks/issues/49...](https://github.com/TechEmpower/FrameworkBenchmarks/issues/495)

This less forgiving stance with respect to glitches comes from our intent to publish a round of tests every month from this point forward (assuming we have the manpower to do so). In order to pull that off, we need to be less forgiving with problems that we don't have the know-how to fix immediately. We investigated Rebar for a bit but ultimately conceded defeat, skipped the tests, and posted the issue linked above. We'll revisit it again for Round 8.

</comment></comment><comment><USER23> Go's numbers are quite impressive considering how young the language is. That combined with the concurrency primitives and ease of deployment makes Go very appealing.

</comment><comment><USER24> Be very suspect of the results - for instance in python land you have:

wsgi:

        import ujson
        ...
        response = {"message": "Hello, World!"}
        ...

tornado:

        obj = dict(message="Hello, World!")
        self.write(obj)

What you have is the slower way to contruct a dictionary and then passing to the Python native JSON vs. a C optimized JSON for output.

<comment><USER25> Just to expand on that (I had to check it for myself) - in my ipython (ageing core2, two cores at around 6k "bogomips"):

        %timeit d={"message": "Hello, world"}

10000000 loops, best of 3: 103 ns per loop

        %timeit d=dict(message="Hello, world")

1000000 loops, best of 3: 298 ns per loop

        sys.version
        Out[24]: '2.7.3 (default, Jan  2 2013, 13:56:14) \n[GCC 4.7.2]'

So, pretty big difference.

<comment><USER2> Yes, but!

At 103ns per iteration, you can do 9.7 million iterations per second. At 298ns per iteration, you can do 3.4 million iterations per second.

Let's look at the wsgi numbers for json serialization:

      wsgi-nginx-uWSGI: 109,882 rps
      bottle-nginx-uWSGI: 65,793 rps
      wsgi: 65,755
      ..

Now, let's look at the best case comparison: 109,882 rps vs 3.4 million iterations per second. Is cutting iteration time down to 1/3 significant (298ns vs 103ns)? Yes. Is it significant in the overall context? No.

With a 31x difference between 109,882 and 3.4 million* (and, since this is comparing to an i7, that 31x is probably closer to the ballpark of 100x), this simply isn't likely to be the place where optimization will help much. Put simply, the {"message": "Hello, world"} vs dict(message="Hello, world") cost difference is likely insignificant when compared to the cost of the rest of the request.

With that said, this sounds like a change that should be committed as part of a pull request! Why? A couple of reasons:

\- It may still help the performance in a minor way (at the very least, it shouldn't hurt it)

\- We prefer idiomatic code and, assuming the literal {} notation - vs dict() - is idiomatic for such a case, this would be a good change.

Your point about this is also interesting:

      What you have is the slower way to contruct a dictionary
      and then passing to the Python native JSON vs. a C
      optimized JSON for output.

Please do consider a pull request for both. We love community contributions.

* Yes, I know these aren't directly comparable numbers, but they compare well enough in this case.

 _Edit_ : Fixed the literal {} vs dict() mixup that e12e pointed out in my comment.

<comment><USER25> Note, I'm not the one that noticed this, I just tried the difference between literal construction "{}" and using dict().

Good points on the overall (likely) impact on the benchmark(s).

> We prefer idiomatic code and, assuming dict() is idiomatic for such a case, > this would be a good change.

I think you mix up two things here: dict() is slower (presumably method look up and maybe class instantiation? Just guessing here) -- and I'd say using the literal notation is in general more idiomatic:

[http://docs.python.org/2/tutorial/datastructures.html#dictio...](http://docs.python.org/2/tutorial/datastructures.html#dictionaries)

<comment><USER2> Oops, yes. I did mix up dict vs the literal version in the comparison. Thank you for the correction.

And yes, I noticed that you weren't the one that noticed the original possible performance issue. What I do appreciate is that you actually went and tested the performance difference.

</comment></comment></comment></comment></comment><comment><USER26> I'm curious as to why Django was paired with gUnicorn and only gUnicorn for its tests. I would have loved to see it benchmarked with uWSGI, gEvent or something with a little more gusto.

<comment><USER16> Probably because the testers aren't experts in all frameworks and languages and deployment options, and don't have infinite time and resources to try all combinations of options to test stuff.

Maybe suggest some updates to the people doing the benchmarking. Or, god forbid, do the testing yourself and post some results for people.

<comment><USER26> Looking through all your comments, I see one vein of similarity between a majority of your words: you're especially, unnecessarily, and consistently impolite. Please, a little internet civility. My question was merely curiosity, and I'm (gasp) well aware that the testers at techempower don't possess infinite time or resources. Your reply was useless and in no way appropriate. Have a bit of respect for yourself.

<comment><USER16> Ok?

You wanted to know why they didn't test whatever you thought was the optimal setup for your use case, and the answer should've been obvious - there's dozens of frameworks across multiple languages and OS platforms. If you look around on this thread and those for previous iterations of the benchmarks, a consistent response from the benchmarkers is that they didn't test some specific scenario because they lack the expertise to do so.

The tests are on github. Go write one that suits you and send a pull request, or, god forbid, do it yourself and make a post about it on HN and get yourself some karma. But as it stands, your post was lazy and trivial. I've said similarly dumb things in the past, gotten downvoted or called out, and we all moved on.

I'm sorry your fee-fees got hurt because you said something dumb, and I pointed it out in terms that failed to indicate respect for you. I upvoted your response as a gesture of love and understanding.

</comment></comment></comment></comment><comment><USER27> Are there enough HN readers interested in contributing new benchmark scenarios for their favourite language?

Ideas I had were: \- Generating a nested JSON structure weighing in at 30kb (from a database) \- Other more-real-word scenarios which I haven't thought up yet ;)

<comment><USER8> I like your way of thinking. You may want to read and contribute to our "Additional Test Types" issue at GitHub [1]. A test type with a larger JSON payload is on the list.

[1] [https://github.com/TechEmpower/FrameworkBenchmarks/issues/13...](https://github.com/TechEmpower/FrameworkBenchmarks/issues/133)

</comment></comment><comment><USER28> For Round 8, it would interesting to see Cognitect's ([http://cognitect.com/](http://cognitect.com/)) new Pedestal framework ([http://pedestal.io/](http://pedestal.io/)) for Clojure. Pedestal is Ring compatible but it doesn't use Ring.

Instead, Pedestal's new _interceptors_ abstraction decouples http requests from threads. This provides better concurrency support because it enables processing a single request across multiple threads ([http://pedestal.io/documentation/service- interceptors/](http://pedestal.io/documentation/service-interceptors/)).

<comment><USER8> I agree. I'd like to see Pedestal added. I've created a new GitHub issue to let contributors know we're looking for an implementation [1].

Incidentally, the Pedestal team gave their fans a free idea that I really liked in August [2]. Do it for fun and glory.

[1] [https://github.com/TechEmpower/FrameworkBenchmarks/issues/58...](https://github.com/TechEmpower/FrameworkBenchmarks/issues/583)

[2] [https://twitter.com/pedestal_team/status/364945233814884352](https://twitter.com/pedestal_team/status/364945233814884352)

</comment></comment><comment><USER29> I have honestly never heard of any of those fastest frameworks. I thought I knew a lot, but most of these are pretty obscure.

</comment><comment><USER30> Is it sad that I all I care about is if Django beats Rails?

<comment><USER31> Honestly, that's what I began looking at also. Django and Rails are compared frequently - even if those comparisons aren't hostile.

This is the first time I've seen this benchmark, and it was really really interesting to see how Djangos performance degraded as more queries were executed. They mention that the lack of connection pooling is likely a big factor. I never realised how much that could affect an application.

These results are really interesting!

</comment></comment><comment><USER32> 84 frameworks and no GWT? The original cross-compiling web framework, being used for Adwords, Adsense, Google Play store, Amazon AWS, Google Groups, and lots of other huge deployments?

JRebel's web framework comparison this summer had GWT as the front runner, pitted against Spring MVC, Play, Grails, etc.:

[http://zeroturnaround.com/rebellabs/the-curious-coders- java-...](http://zeroturnaround.com/rebellabs/the-curious-coders-java-web- frameworks-comparison-spring-mvc-grails-vaadin-gwt-wicket-play-struts-and- jsf/)

Glaring omission for a comprehensive comparison, IMHO.

<comment><USER8> See my reply elsewhere in this thread concerning Meteor [1]. Some frameworks are _opinionated_ , for lack of a better term, to a degree that makes it difficult to shoehorn them to provide implementations of our very fundamental/simple test types.

If you or anyone is willing to give it a try, however, we would gladly accept a pull request.

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

</comment></comment><comment><USER33> Just saw Matthius give a talk at Scala.io in Paris on his meisterwerk, Spray.

Surprised it came in so high (6), no wonder Spray was acquired by Typesafe...and why Spray will take place of Netty in Play stack.

</comment><comment><USER34> Do they list the ruby versions they use? Also, what's up with the "errors" column?

<comment><USER8> Updating the versions in the Environment details became a game a whack-a-mole, so I removed that information from the Environment section for now. Maybe some day I'll come up with a nice way to automatically pull it from the GitHub repo or meta-data about each test. For now, you can find some details in the Rack script [1]: ruby-2.0.0-p0.

We'd be happy to receive a PR to update these versions if anyone is interested in crafting one.

The errors column is a sum of non-200 HTTP responses and socket connect, read, and write errors. In practice, it tends to be predominantly 500-series HTTP responses, meaning the web server acknowledged the request but was too busy to assign it to a worker process or thread.

This can cause the latency of some frameworks to appear artificially low because the 500 responses tend to come back very quickly once they start.

Incidentally, if you hover over the error values, you'll get a success rate percentage.

[1] [https://github.com/TechEmpower/FrameworkBenchmarks/blob/mast...](https://github.com/TechEmpower/FrameworkBenchmarks/blob/master/rack/setup_ruby.py)

</comment></comment><comment><USER35> I'm impressed by bottle-pypy, and a bit surprised about the gap between it and flask-pypy.

<comment><USER36> I use bottle in production and it's fantastic.

I'm curious to see what happens to performance when v.12 is released.

</comment></comment><comment><USER37> ASP.NET/C# definitely improving.

Rails is disappointing. Slow to be expected for interpreted language framework but that is really sh __ __slow.

<comment><USER38> I have a feeling it is less about ASP.NET/C# improving and more likely their tests improving. Baseline perf has not went up much in years.

<comment><USER8> That is correct. We have received many contributions from the community (I would call them subject matter experts, but they seem very humble to me, so I'm not sure what they'd call themselves) to improve the C# tests. It looks as if they have helped quite a bit, as I pointed out in the blog entry that accompanies Round 7.

</comment></comment></comment><comment><USER39> Again, a totally useless benchmark. I really feel all these benchmark tests are useless, if they are not in the realm of any real world app. So why not create a crud app mimicing benchmark, test writes and reads, and calculations instead. In the real world it comes down to the ease of development, deployment and maintenance. This is where the traditional web languages still win, and ill want to bet you can ship software faster than ever these days when using a proved web framework.

Speed is not the only factor, and usually not even a factor that has to be accounted for, lets be reasonable, 99% of any web apps dont reach the state that they even need to scale to 10000s of user actions per second.

Id be interested to see how hhvm/php whould compare though.

<comment><USER40> Useless? Not at all, but it's just _data_. It has to be interpreted, and how you do that depends on your needs. If nothing else, it's interesting from a technical standpoint to see the huge difference it performance.

To think that a benchmark like this tells the whole story of the "best" framework is wrong. Of course it is. It's also wrong to think that it tells the whole performance story. Of course it doesn't. But that does not make it useless.

 _Id be interested to see how hhvm /php whould compare though_

Now you're just arguing yourself :)

</comment></comment><comment><USER41> In the previous tests Grails was also tested, I don't see it back in this round anymore?

<comment><USER8> See my reply elsewhere in this thread [1] concerning a new less-forgiving approach we've adopted to glitches/errors. It's not the most polite way to run the project, and I apologize for any oversights and errors, but it's just a necessity since we don't have expertise in everything.

With Grails specifically, a very late PR arrived that unfortunately broke the test implementation for us, so we removed it from the Round 7 test. We aim to push new rounds on a monthly cycle, so I hope that anything that is missing in one round won't be missing very long.

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

<comment><USER42> Perhaps you could add a second table on each page of "Did Not Complete" entries.

Because people just aren't going to read the notes. They'll skip to the results.

<comment><USER8> That is a good idea. I'll add that to the GitHub issues.

</comment></comment></comment></comment><comment><USER43> I am absolutely shocked that Ruby kicked so much ass-- in the latency department. It's actually a pretty significant margin when you think about how long some of those simpler requests probably took the server to complete and then the latency to return the request.

Also, anyone out there have any good real world experience with other scala persistence frameworks? I was surprised to see play-anorm do so "relatively" poor compared to other scala frameworks. Though I'm quite, admittedly, naive in how "big" each of the other frameworks are (only used play and scalatra).

Please forgive any misspellings or grammar errors. This was typed on my iphone.

</comment><comment><USER44> PHP and node.js neck to neck?

I'd really like to see the chart showing RAM usage for these tests.

<comment><USER45> This has puzzled/surprised me over multiple benchmarks. I had assumed that node.js would be faster at pretty much everything than PHP (especially for concurrency).

Time and time again though, these benchmarks show PHP outperforming node.js. I'm sure node.js will have lower RAM usage than PHP but as I'm more interested in reqs/s, I'm going to reconsider using node.

<comment><USER46> PHP is just a thin layer on top of C. Of course it will perform decently. PHP frameworks are usually designed in a dumb way and thus perform badly. Usually they load all or most of their files into memory with every request, even though only couple files would be enough.

<comment><USER44> I'd really like to see Yii framework included in the test as they claim to only load what's needed.

</comment></comment></comment></comment><comment><USER47> So the first framework ever (Java Servlets) is still pretty much the fastest? I wonder what that says about where development is heading.

In my previous project I've actually used straight servlets and found them quite RESTful and elegant - HTTP GET calls a function, you run a SQL query, render results using a template. What else does a framework really need? I much prefer that to the beast that is Spring. In fact, that's pretty much what people use tornado+express for these days - map a URL to a function.

</comment><comment><USER48> Caching is always faster than any web framework, so I don't think a faster web framework add much value to most companies. Choose a framework that makes it easy to add caching.

<comment><USER8> I assume you mean reverse-proxy caching and not back-end caching. Not all use cases are suitable for reverse-proxy caching. Blogs, news sites, and the like are very suitable. Applications that are heavily personalized or work with private data are unsuitable for reverse proxying.

Our test cases are explicitly concerned with exercising performance when reverse proxying is not suitable, for whatever reason. If reverse proxying works for your use-case, definitely consider using it.

</comment></comment><comment><USER49> Can someone tell me what is the difference between php and php-raw?

<comment><USER50> In the tests that use a database, this distinguishes using an ORM vs. direct SQL queries. From the guide on the filters panel:

We classify object-relational mappers as follows: Full, meaning an ORM that provides wide functionality, possibly including a query language. Micro, meaning a less comprehensive abstraction of the relational model. Raw, meaning no ORM is used at all; the platform's raw database connectivity is used.

</comment></comment><comment><USER51> One issue I have with these frameworks is the scaling pattern/path

With Rails I might do:

1\. Fresh rails app

2\. Add page caching / CDN

3\. Add database/query caching

(I have no apps large enough to require anything past here)

4\. Sharding the DB?

Rails is awesome because each step is concise (via the language, ruby) and many other people have demos / documentation on how to do them.

Sure, your framework of choice may be fast at stage 1, but how easy is it to go to 2, 3 and so on when I need to?

<comment><USER52> Those are all basic optimizations that most make as their apps grow, I doubt there is a single framework in that benchmark that couldn't handle all of them easily.

</comment></comment><comment><USER53> Nice work, but a bit useless without Erlang. :-(

</comment><comment><USER54> I'd like to see what this test looks like once you add event-machine to the ruby frameworks.

</comment><comment><USER55> It's strange that Vertx has very poor performance when it performs database queries.

<comment><USER56> I thought so too, so I looked at the source. It's communicating with a MongoDB persistor over the event bus rather than querying the database directly. So the poor performance is because there's an extra layer of communication happening, which is kind of misleading for a benchmark like this.

<comment><USER57> Vert.x was in our original batch of tests (round 1). At the time, its documentation showed that using the persistor and event bus was the standard intended mode of communicating with a database. If someone can point us to documentation showing that is no longer how you're supposed to use a database with Vert.x, we'd be happy to accept a pull request that changes the test. Otherwise, I think it's valid as is, and not misleading.

</comment></comment></comment><comment><USER58> > We use the word framework loosely to refer to any HTTP stack—a full-stack > framework, a micro-framework, or even a web platform such as Rack, Servlet, > or plain PHP.

Yep, that's the problem of these benchmarks. Apples and oranges.

<comment><USER6> Wait, why is this a problem? Nobody is suggesting you blindly pick the #1 framework on the list without thought. It IS however very interesting to see how things compare on one benchmark. It also provides some empirical evidence that JVM languages are still king if you care primarily about performance.

</comment></comment><comment><USER59> According to the charts, PHP performs well when there are multiple queries and in the case of Data updates.

I wonder of they setup PHP with APC cache (opcode cache) which is basic and easy setup to speed up PHP.

<comment><USER50> Yes: [http://www.techempower.com/benchmarks/#section=motivation](http://www.techempower.com/benchmarks/#section=motivation)

"Have you enabled APC for the PHP tests?" Yes, the PHP tests run with APC and PHP-FPM on nginx.

</comment></comment><comment><USER60> What happened to the Go on EC2 data? It appears to be missing.

<comment><USER8> With Round 7 we have adopted a less forgiving approach to the test runs. In previous rounds, we would expend a non-trivial amount of effort attempting to ensure all of the tests worked correctly on both i7 and EC2.

But when we're busy with other projects, this becomes a real bottleneck. We wanted to get Round 7 out and be able to do future rounds on a monthly basis. In order to pull that off, we simply need to reduce our own bottleneck and ask the community to do more of that work. Round 7 was the first with a preview round and the community submitted a bunch of PRs prior to the final run.

To be as clear as possible, I absolutely do not blame the missing Go data on EC2 on the community. It's just the nature of attempting to herd all of these cats, er frameworks. :)

I'm fairly sure it's a configuration problem either in the Go test implementation -or- our test-suite. And this part may be obvious, but it bears repeating: except in very rare cases, test absence should not reflect poorly on the framework itself.

<comment><USER60> Please post a link to where we can go to help contribute to your benchmark work. Thank you.

</comment></comment></comment><comment><USER61> No JSF or plain JavaEE?

<comment><USER50> JSF may not be a good fit for these benchmarks, as discussed in this issue on the project: [https://github.com/TechEmpower/FrameworkBenchmarks/issues/30...](https://github.com/TechEmpower/FrameworkBenchmarks/issues/307)

</comment></comment><comment><USER62> I would like to see Casablanca in the next rounds as a good C++ contender:

[http://casablanca.codeplex.com/](http://casablanca.codeplex.com/)

<comment><USER63> I just read the word "microsoft" and instantly kill my tab.

</comment></comment><comment><USER64> According to this nodejs is barely faster then PHP. Does this have to do with the nodejs http server vs nginx or more to do with the language itself.

<comment><USER65> That's node vs bare PHP, which has limited utility. Performance drops like a rock if you use any kind of framework - see cake, CI, symfony all at the very bottom.

</comment></comment><comment><USER66> Well, if every language would have a sufficiently smart compiler, the world would be fine.

</comment><comment><USER67> Can you add Meteor for Round 8?

<comment><USER8> There is a category of web frameworks that imply specific web application architectures which make them somewhat difficult to shoehorn to our test types. Meteor is one of those, as are JSF and GWT. We'd welcome an implementation that attempts to match Meteor to these test types, but acknowledge that might be awkward.

</comment></comment><comment><USER68> tree-frog is also a framework that needs to be included. It is based on c++ and follows rails thinking. So you get both rails way of doing things and c++ performance.

<comment><USER8> Treefrog _is_ included. It's one of the new frameworks in Round 7.

[http://www.techempower.com/benchmarks/#section=data-r7&hw=i7...](http://www.techempower.com/benchmarks/#section=data-r7&hw=i7&test=json&f=0-0-9zlds)

</comment></comment><comment><USER69> PHP benchmarks are extremelly outdated and not even using PHP 5.5 with OPCache (that is now native). Python and Ruby implementation choices are also really weird.

\- Laravel Version 3.2.14

\- PHP Version 5.4.13 with FPM and APC

Don't waste your time with this crap.

<comment><USER43> Not to be an ass, I don't know much about their approaches and Php (APC in particular)... But wouldn't enabling caching sort of defeat a portion of the test?

Wouldn't it just be better to compare caches/caching mechanisms?

<comment><USER70> While other sensible language interpreters have a feature like byte-code caching built-in in them, PHP for quite a while did not, because someone was monetizing a proprietary cache add-on named ZendOptimizerPlus!

They released it as part of the language in 5.5 because alternative APC cache got just good enough and everyone was installing it by default.

So, to answer your question: yes, APC should be used on any PHP benchmark if performance is in question.

</comment></comment></comment><comment><USER71> What's wrong with rails data update?

</comment><comment><USER72> why no template rendering?

<comment><USER57> The Fortunes test exercises server-side templates. You can see the requirements for each test in the "Source code & requirements" section: [http://www.techempower.com/benchmarks/#section=code](http://www.techempower.com/benchmarks/#section=code)

I think we used to have a brief description of each test in the results section as well, and they somehow got lost in this round. We should add them back; how is a new reader supposed to know what "Fortunes" means?

<comment><USER8> The requirement summary is still there for each test, but it has been moved _below_ the results table. I am experimenting with this re-arrangement to see what people think.

</comment></comment></comment><comment><USER73> such a waste of time and money, I really dont get it...

<comment><USER70> It is a SEO booster for that company, but don't tell anyone.

<comment><USER73> I even got punished with bad karma for that :D</comment></comment></comment>


Bootstrapped, Profitable, & Proud: smartassess - <AUTHOR> http://37signals.com/svn/posts/2409-bootstrapped-profitable-proud-smartassess <comment><USER2> I like how the name is much clumsier to say correctly than the fun way.</comment>


Show HN: Price comparison for attraction tickets, tours, and activties - <AUTHOR> https://www.ticketlens.com/en <comment><USER2> OK, be CAREFUL. I checked a couple of this and it seems like it compares only third party websites, so make sure you check the OFFICIAL website for the attraction. An example: the Vatican Museum and Sistine Chapel, on this website the lowest is 27 euro but from the official website you can get the same fast track ticket for 17(+4) euro.

Maybe you can find something good here, but always do some extra research.

<comment><USER3> > compares only third party website... the official website (was cheaper)

Not surprisingly all the links are affiliate tagged "&partner_id=2FA2B&partner_visitor_id=9lvgkk3kpaa8&psrc=partner_api" so yeah, they only want to show you things that will give them a kick-back.

So not really helpful as a one-stop-shop.

<comment><AUTHOR> Currently for us the limiting factor is API availability. Most of the official sites don't offer an API so we would need to scrape them one by one. For sites which offer an affiliate program we joined to finance the project but our ranking is not dependent on what we earn but strictly on price.

</comment></comment></comment><comment><USER4> As someone who is currently planning a trip to NYC and has been comparing CityPass to its competitors (and versus just buying individual tickets)... Thank you! I will be using this site this weekend to help me make my decisions.

<comment><AUTHOR> Hope it will be useful for you. Please don't hesitate to give us feedback. Have a nice weekend in NYC!

</comment></comment><comment><USER5> Looks cool, good name as well, I can see myself trying to remember it next time I'm on holiday and the connection between the functionality and the name is tight. How are you monetizing, and what is your vision for the project?

<comment><AUTHOR> Thanks

</comment></comment><comment><AUTHOR> A bit more context. We created a price comparison for attraction tickets, in- destination tours and activities. We were surprised to lear how much you can save by choosing the best provider (check out New York City).

</comment><comment><USER6> Everything in Las Vegas is showing up in Euro prices, even though I am located in Las Vegas and would like to see dollars.

Also if you look at "The Mob Museum" one vendor has the lowest price, which is 15, but its only because they offer a child ticket, and that price is being compared to the adult tickets on other websites.

Not sure how you can solve that but it seems like a significant obstacle to finding the actual best price.

<comment><AUTHOR> Thanks for the feedback. You can change the price to USD in the top bar of the page. We are working on a smarter way to set the currency on first visit. In regards to the Mob Museum we will take a look and fix. Sometimes the APIs we use are not very specific in regards to child / adult pricing.

</comment></comment><comment><USER7> I just did a quick check for WTC tickets in NYC, and the prices were wrong. [https://www.ticketlens.com/en/g6262](https://www.ticketlens.com/en/g6262)

All of the vendors had the exact same price of $26.00

Are you relying on an affiliate feed or something? If so, why? Those are notorious for being out of date quickly, and definitely not reliable at all.

<comment><AUTHOR> We just checked again and the prices are correct. Some vendors charge a booking fee which they do not show at the first page but only if you proceed to checkout. E.g. the last offer for $29 has $3 booking fee. We always show the full price including all fees.

<comment><USER8> Booking fees are not showing up , I tried the Empire State building, cheapest being $35 (Normal price is $38). There is a $3 booking fee per ticket.

<comment><AUTHOR> We corrected the problem see: [https://www.ticketlens.com/en/g6248](https://www.ticketlens.com/en/g6248) the parent page: [https://www.ticketlens.com/en/p680490/new-york/empire- state-...](https://www.ticketlens.com/en/p680490/new-york/empire-state- building) will update soon. Unfortunately this specific site is a bit complicated with the fees. Which underscores how in transparent this market is.

</comment></comment></comment></comment><comment><USER9> I clicked on London, and got Stone Henge listed ?!

There needs to be some geographical search options, you don't seem to be able to search by area either.

<comment><USER10> Miami shows Kennedy Space Center as an attraction, that is over 3 hours away.

<comment><AUTHOR> Thanks for the feedback

</comment></comment></comment><comment><USER11> Congrats! I have rarely seens such a fast website from Austrian developers. :) Would be interested in your tech stack for that project.

In additional to that, if you are looking for SEO / performance marketing or have any questions, just ping me.

Liebe Grüße aus Linz Thomas

</comment><comment><USER12> Hey! My company ([https://qbix.com](https://qbix.com)) makes something very complementary to this: apps for communities.

We are looking to integrate ticket sales for festivals and so on.

Would you like to collaborate? Email me at the username greg and domain is qbix.com

<comment><AUTHOR> Will do!

<comment><USER12> Looking forward

</comment></comment></comment><comment><USER13> I like the site. It's easy to find stuff in multiple ways. Easy on the eyes.

imo the only thing missing for me are destinations for drinkers like Napa / Sonoma and beer country in the Northwest US. I'm sure there are more places in France, Germany, and Ireland

<comment><AUTHOR> Thanks for the feedback! There is more destinations coming. So stay tuned ...

</comment></comment><comment><USER14> Very neat, I can see myself coming back to this for literally every urban destination.

<comment><AUTHOR> Thanks!

</comment></comment><comment><USER15> London in city passes it seems that "explorer pass" is repeated.

<comment><AUTHOR> Noted</comment></comment>


Show HN: Online web application to unroll long Twitter threads - <AUTHOR> https://mythreadreader.com/ <comment><USER2> It seems like there are several tools like this. What makes this one different or better than the others?</comment>


Gource – a software version control visualization tool - <AUTHOR> http://gource.io/ <comment><USER2> Used it. But although overall idea is good (I'm a fan of code visualization, source code mining etc.) I had problems to really get anything useful from Gource. Animations looked beautiful but had I really understood better project which I worked on? Not really. It showed me just figures of people that shot laser beams into files. I learned Who and When edited which File - but it was all - it didn't me any more edition patterns or insights.

</comment><comment><USER2> nonetheless I think this tool could be awesome for presentational purposes (but not as awesome when comes to project analysis).</comment>


Fur ball in WebGL - <AUTHOR> http://jsfiddle.net/anvaka/Fsjej/show/

<comment><AUTHOR> Ported this guy from Flash (<http://wonderfl.net/c/7au5> ) to JavaScript. Microsoft is really missing out with WebGL support, but I know why people are saying that plugins are dying...

<comment><USER2> I'm pretty impressed that in Chrome, the WebGL version has a considerably better framerate than the Flash version.

<comment><USER3> Same in Firefox. The Flash version is stuttery, the WebGL one is smooth.

<comment><USER4> Interestingly, my Firefox (13.0 on Ubuntu 11.04) consistently freezes for any WebGL example. The CPU load will just go full whack and nothing is every displayed. Eventually, I have to kill the process and restart the browser. Does anyone experience the same effect?

</comment></comment></comment></comment><comment><USER5> Nice! To be fair to the Flash version, it appears to be using the 2D drawing API (equivalent to HTML5 canvas). If the Flash version used Stage3D, performance would probably be equivalent to WebGL for this demo, since most of the work would be offloaded to the GPU.

</comment><comment><USER6> The Flash version is not antialiased correctly for the number of steps it transverses though the masses move at a consistent frameratem, stuttery does not apply in correlation to the WebGL example. Change the FPS setting and it works smoother, AA aside.

The WebGL one has the distinct Javascrip cyclic micro pause in Firefox depending on number of browser tabs opened. It plays perfect on the latest Chrome.

Congrats.

</comment><comment><USER7> Ahh, but can you comb it? :)

</comment><comment><USER8> Very impressive compared to the Flash version. Minor nit: resizing the window make Furball do strange things. Google Chrome 19.0.1084.54 on Mac OS X 10.7.4</comment>


Methods Videos Are Making Science Smarter - <AUTHOR> http://www.newyorker.com/tech/elements/how-methods-videos-are-making-science-smarter

<comment><USER2> My lab has been asked to do JOVE videos in the past, and there's not really a great incentive for labs to do them. JOVE essentially shuts down your lab for two weeks, you have to pay for the entire process (20K was the estimate we got), and then basically no one cites you.

<comment><USER3> I expect that providing videos (etc.) to show methods and facilitate both replication and identification of methodological errors is going to become a requirement (much as publishing data and placing hypotheses in escrow prior to data collection). So while there may not be much in the way of incentives now... just wait.

<comment><USER4> Once it becomes a requirement, though, it'll be a reasonable line item in a grant budget, and so a much less financially daunting proposition.

</comment></comment></comment><comment><USER5> Is there any open access equivalent of jove.com?

</comment><comment><USER6> Why not use a mobile phone and iMovie to make a science video?

I found some instructions for the same on youtube.

Link: [https://www.youtube.com/watch?v=nMrWtCkhNHM](https://www.youtube.com/watch?v=nMrWtCkhNHM)

</comment><comment><USER7> can't watch any of them without signing up or you work in the ivory tower. pity, it would have been nice to use as an instructional aid. and no way i'd shut my lab for 2 weeks - if you're interested send your own damn post-doc for visit...</comment>


The Setup – Bjarne Stroustrup - <AUTHOR> https://usesthis.com/interviews/bjarne.stroustrup/ <comment><USER2> It is a bit of an understatement to call Bjarne a "C++ Developer".

<comment><USER3> Reminds me of: [http://i.imgur.com/BHC7fbI.jpg](http://i.imgur.com/BHC7fbI.jpg)

<comment><USER4> And: [http://41.media.tumblr.com/e0362c13cd821416b7056f60849b8a99/...](http://41.media.tumblr.com/e0362c13cd821416b7056f60849b8a99/tumblr_n7t5fbaZTf1qz4fjzo1_400.jpg)

</comment></comment></comment><comment><USER5> Interesting to see someone famous who _doesn 't_ use a Macbook.

Makes me really want to know what Ken Thompson uses.

</comment><comment><USER6> I like how his idea of the optimal machine shows just far we have to go when it comes to our computers.

<comment> vezzy-fnord It's already there, though some integration work is probably in need of being done. The hard part is convincing people to leave their cruft for it.

<comment><USER7> Would you elaborate?

<comment> vezzy-fnord "Able to perform perfectly when disconnected from the web" is really vague since it already exists. You'd still have access to the broader Internet and your local device, obviously.

"Able to act as an interface to other systems" is a matter of network transparency and authenticating to a remote node manager. Example: drawterm(8).

"Simple and predictable to use" is subjective, but generally lends itself well to systems built around exploiting a few Grand Abstractions to compose higher functionality. Inferno, Spring, etc.

"Stable, never needs rebooting" is already the case for big iron and mainframe systems, among plenty of standard microcomputer server racks. Microkernel architectures with autorestarting of failed drivers and well-defined communication boundaries greatly aid availability and reliability. The more important thing besides never rebooting is maintaining orthogonal persistence with frequent checkpoints so that rebooting isn't a big deal when it finally happens.

</comment></comment></comment></comment><comment><USER8> Article is a bit low on information, would've liked to see more detail.

<comment><USER9> Me too, but he said he was being intentionally terse.

</comment></comment><comment><USER10> Inventor of C++'s dream setup is simple and stable.

</comment><comment><USER11> I wonder if his Surface runs Windows, or if he runs Linux.

<comment><USER12> I have met Bjarne a couple of times with his Surface and it is running standard Windows. I mentioned it once and his response was basically "Windows works best on it so I stick with it". Like he said he likes a simple and stable environment and Windows does provide that.</comment></comment>


CVE-2015-1593 – Linux ASLR integer overflow: Reducing stack entropy by four - <AUTHOR> http://hmarco.org/bugs/linux-ASLR-integer-overflow.html

<comment><USER2> This bug certainly needs patching, but its severity is very low. The lack of ASLR isn't in itself security vulnerability.

</comment><comment><USER3> ASLR turns some unsuccessful buffer overflow attacks into system crashes. About all that can be said for address space randomization is that it's better than doing nothing. It has the useful feature that it makes it harder to reproduce buffer overflow bugs, which allows developers to avoid the work of finding and fixing them.

 _" We must do something. This is something. Therefore we must do this."_ \- Yes, Minister

<comment><USER4> That's pretty much what were left with for unsafe code protection eh? And still stuff gets through... I'm wondering why we don't have runtime code rewriting, where the loader reorders code fragments, inserts unconditional jumps in places, etc. to make exploitation harder.

<comment><USER5> It is suspected that Denuvo DRM does the whole in-memory rewriting

applying something like that to prevent memory-based abuse and the such would be interesting

</comment></comment></comment><comment><USER6> > All Linux versions prior to 3.19-rc3 are affected.

I'm using 3.14.15 (and yes, I greatly enjoy the number) and I'm not affected.

</comment><comment><USER7> I'm guessing "RandomCode" is a new username for "TempleOS"?</comment>


A mini redis in 411 lines of Python - <AUTHOR> http://github.com/bpollack/miniredis/blob/master/miniredis.py <comment><USER2> We use Redis in a large production site, and I could see something like as useful for automated testing. Also, if I wanted to add something to Redis, it would be much, much simpler to prototype it with miniredis in Python before hacking it into Redis proper in pure C.

<comment><USER3> Wouldn't it be completely useless to prototype something in python? Both memory and speed would be completely different.

For automated testing, redis is easy enough to start and stop. It compiles without dependencies and a simple "make" does the job :)

</comment></comment><comment><USER4> Not this stuff again. Yes, basically any service you can think of can be implemented trivially, if you don't have to worry about things like concurrency, performance, scalability, etc.

This might have been a nice learning experience for the author, but it's definitely not hacker news.

<comment><USER5> The code handles concurrency the same way that redis handles concurrency. It's single threaded.

<comment><USER6> Redis 2 is multithreaded. The weird thing for me is that MiniRedis is 1/4th the speed of Redis 2 (using redis-bench, included with Redis 2, to measure), which means that being both single-threaded and written in a relatively slow scripting language didn't hurt performance that much. I haven't taken the time to figure out why; I thought Redis would be much faster.

<comment><USER7> Because Redis is in part I/O bound, this is why Redis 2.0, and even more Redis 2.2 (currently git master) are using the spare CPU in order to use less memory, with specially encoding for small lists, sets, hashes.

Btw 25% the speed means a lot slower :) My guess was that the difference for small keys that the redis-benchmark is stressing would be smaller.

I think that with big lists or using the SORT command the difference will be bigger.

Cheers, Salvatore</comment></comment></comment></comment>


Second Thoughts About the Autopilot - <AUTHOR> http://www.nytimes.com/2010/05/18/business/18pilots.html?hp <comment><USER2> One thing that came to mind when reading this is that I think most (all?) railroad locomotives make use of "dead man" switches that force someone to perform an activity on a regular basis. I'm not sure if this would be effective in the case of an airplane, but perhaps something a little "smarter" than a simple button to push would be the answer. Perhaps something could force you key in (on a rotating basis) the current airspeed, pitch, etc... every so often if you're on autopilot and have not touched the controls in a while. Anyone familiar with current aviation systems know if anything like this is in place already?

<comment><USER3> My close familiarity is with light aircraft, such as my 2-axis autopilot- equipped Skylane. In nav-coupled mode, my airplane can fly the cruise portion of the flight essentially unaided, though I obviously don't just take a nap until we get there.

In a slow aircraft, you have plenty of time to get bored and have your attention wander off, so I use a 15-minute timer and every radio call directed at me as a trigger to monitor how well I'm managing the flight. Are there times that I've had those triggers clue me in that I was "screwing up"? Absolutely. Have I used that as a trigger to land and sleep, eat, or just walk around to refresh myself? At times.

That said, I believe that every pilot who has done any amount of travel in their airplane has had the experience of screwing something up from diverted/divided attention. Whether it's busting an altitude or airspace assignment, transmitting on the wrong frequency, or simply missing several radio calls, it happens.

My point of view is that the autopilot is important improvement in safety, especially in clouds or an abnormal situation, and I wouldn't want to add a system that requires additional button-pushing from the pilots that might compromise safety in a critical situation where the autopilot is providing meaningful off-load from the pilot. Aircraft and lives have been lost over trivial distractions in the past.</comment></comment>


Getting Started with Ember.js - <AUTHOR> http://blog.balancedpayments.com/getting-started-with-ember.js/

<comment><USER2> To give Ember some criticism, we're struggling with debugging at the moment:

The main issue [https://github.com/emberjs/ember.js/issues/2817](https://github.com/emberjs/ember.js/issues/2817) is that the run loop in Ember disassociates the invoking action from the event handler which makes figuring out what fired what a PITA.

That and the stacktraces are useless makes hunting down bugs often more difficult than it should be.

I don't know how this contrasts with other JS frameworks but we definitely feel the pain with this issue.

<comment><USER3> Oh god yeah. It really sucks. This is going to be a pain with anything async right now though.

<comment><USER2> I assume there's a way to add context information into the run loop when firing events for debugging purposes. This would largely solve the first half of the issue (who fired the event). The second half, where the error happened, seems like it's just a bug in the way Ember is recording errors.

<comment><USER3> This I'm not too sure about. I know they're moving this to [https://github.com/ebryn/backburner.js](https://github.com/ebryn/backburner.js). I'll read through the code sometime tonight and figure out what's going on.

</comment></comment></comment></comment><comment><USER3> In Ember.js, templates get their properties from controllers, which decorate a model.

On Controllers: Controllers are used to decorate your models with display logic, not to handle business logic. Models have properties that are saved to the server, so they should be responsible for that.

On Views: Views should be used to create reusable components or for sophisticated handling of user events. For the most part, Handlebars should get you 90% of the way. You shouldn't be making too many views in Ember.

<comment><USER4> All good points. I think one of the toughest parts with Ember is that there are a lot of places to put things, so it's sometimes hard to figure out the _right_ place to put things. I'm always looking to learn from people that know more. :)

We're putting as much business logic in models as possible, but are finding there are times when we need something more similar to a traditional MVC controller to coordinate actions. Handling things like form validation and coordinating multiple models doesn't seem to fit nicely in the models. How have you handled those type of situations?

<comment><USER3> When someone submits a form with invalid data, and the server marked it as such, the record in the transaction will have the isValid flag set to false . Your controller then acts as a proxy between the model and the template. Because controllers are long-lived, the content of that controller will contain the invalid record.

Now your template can have a {{#unless isValid}} and you display whatever error message there. The user keeps interacting with the form, and every time the submit button is pressed, the cycle repeats again until the record is valid, for example. The thing is that it is the model that has the to be responsible for persistence, so it is the one that marks the record as invalid. The controller would handle decorating the template, (show the error message).

Now if you want to do client-side validation, you'd write a view (which really should be called component in my opinion) which would handle that logic. Notice that for the last example, all we used were templates. The view only came into play when more complicated handling of events is made (client side validation).

To coordinate multiple models, you can use controller.needs (which calls another controller into play, letting you access its model and use stuff like nested resources much cleaner).

[http://emberjs.com/guides/controllers/dependencies- between-c...](http://emberjs.com/guides/controllers/dependencies-between- controllers/)

</comment></comment></comment><comment><USER5> I ran into the same issue the author describes, RE: getting Ember to work with a non-Rails-style REST API. After spending quite a bit of time trying to figure out Ember Data, I reverted to Backbone, since it's dead simple to link a model with any API endpoint. All in all, a pretty frustrating experience.

<comment><USER2> Absolutely, there's a nice looking project for Ember called ember-model ([https://github.com/ebryn/ember-model](https://github.com/ebryn/ember-model)) which looks promising for addressing this shortcoming.

<comment><USER3> The main goal in that project is to provide primitives on top of $.ajax that are required by ember. Key thing to keep in mind is that it's just $.ajax under the covers.

<comment><USER2> It looks like most of the complexity in ember-data is to do with transaction management and references. We decided to forgo both of those and haven't really lost anything because of that.

It's opinionated way of dictating your JSON payload etc was also a factor in the decision to drop it. If you use RoR as a backend it's a perfect tho I assume.

<comment><USER3> Yup. It's about making sure that the data layer and the view layer are in sync. That's where it gets hard. Other than that, it's just $.ajax. ebryn's project is the wrapper so you can plug into that stuff.

What you're losing is responsiveness in the UI. You're going to have to dictate when the call is made, and some may even be blocking. For stuff like submitting a form, or navigating to a new page, that's not a big deal, right? The user has to press a submit button, or the url changes, so then you handle the event. But once you're requirements are real-time, and data-intensive, (DIRTy) then handling all these events is really going to be a nightmare and that's where ember-data is great.

Lots of folks knock ember-data, but it's pretty great if you're using it for real-time data intensive applications, which is really what this is made for.

<comment><USER6> I have experimented a lot with Ember.js but not used it for any serious projects. It took a while getting a grip on Ember-data. I don't know if this will help anyone but I took the example (front end only) code from "The Source for the Ember Get Excited Video", forked it on github, and added a trivial Ruby Sinatra REST service. It seems to work, but if you see any errors please let me know: [https://github.com/mark-watson/bloggr- client](https://github.com/mark-watson/bloggr-client)

<comment><USER3> I can give this a code-review later tonight. I'll contact you on github.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Why Ember.js, and what other frameworks did you guys evaluate?

<comment><AUTHOR> Happy to go into more details about the choices between Backbone, Angular, and Ember. It ultimately boiled down to the community and readability (I personally thought Angular templates were a bit harder to read).

Regarding Backbone, I had used it before and I felt that I had to write a lot of boilerplate as the application grew, which is exactly what something like Ember was designed to prevent.

<comment><USER8> Did you look into the frameworks built on top of Backbone like Marionette?

<comment><USER9> Or Chaplin: [https://github.com/chaplinjs/chaplin](https://github.com/chaplinjs/chaplin)

I honestly don't think either of them do a good job of promoting their absolutely awesome work. I tell everyone I can about them, but they really need some presence at conferences or some big companies releasing case studies.

</comment></comment></comment></comment><comment><USER10> "We wanted to build our dashboard in JavaScript to separate the both front-end and back-end development as well as leverage the power of Balanced's RESTful API."

Does this mean they have a back-end layer before the REST API or is the front- end communicating with the API directly?

<comment><USER2> Hi Kiro,

We wrote a simple Python back-end service that stores authentication information -- if you think of the dashboard as a rich client, it needs some way to persist some items that are unrelated to the API such as email address and password login credentials, so that's what this simple service does.

However, Balanced's API has CORS-support enabled, so we can make API calls to the API from the Ember app directly (no need to proxy through a back-end service).

This will reduce latency to the user to give a perceived feeling of responsiveness once implemented. Interestingly, simply implementing the dashboard as an AJAX app and having the requests fire in parallel as opposed to serially with our existing dashboard has already given a massive performance boost.</comment></comment>


Pmarca long form tweets made readable  - <AUTHOR> http://www.yvoschaap.com/pmarca/

<comment><AUTHOR> Following the already abandoned blog [http://pmarcatweetsasblogposts.tumblr.com/](http://pmarcatweetsasblogposts.tumblr.com/), I automated grouping Marc Andreessen's tweets by topic for better readability.</comment>


C:// CDN on the Bitcoin Blockchain - <AUTHOR> https://c.bitdb.network <comment><USER2> Neat! It'd be nice to see a comparison of cost+replication factor of C:// versus, say, Filecoin which is designed specifically for storage and allows tweaking replication factor. Or maybe even Ethereum using logs instead of storage.

<comment><AUTHOR> Yeah, that's a great idea. I may do an analysis myself. I love that the mental models for both c:// and b:// are so much simpler.

b:// — [https://news.ycombinator.com/item?id=20026014](https://news.ycombinator.com/item?id=20026014)

</comment></comment><comment><USER3> Ouch, that website is annoying and makes my eyes hurt</comment>


1st International Competition on Plagiarism Detection - <AUTHOR> http://www.webis.de/pan-09/competition.php

<comment><AUTHOR> They are allowing vendors of commercial plagiarism detection software participate -- I'll be interested to see if any of them do. The cash prize isn't enough to make them go for it (500 euros) but the good publicity might. I know if I were a school, I'd be more inclined to buy from a company that won this competition.

</comment><comment><USER2> Let me get this article and idea straight, incase I missed something...

Plagiarism is a problem for copyright holders since they want to ensure that they don't get plagiarized. HOWEVER it is a very expensive task and does not bear as much fruit as it might.

Automation of this will bring many many financial benefits to the copyright holders by reducing costs and increasing detection rates.

And all this work is to be done for a measly 500 euro??? I remember reading a job posting of a guy wanting someone to write a windows-like OS for $500, which is compatible with all windows apps but is more stable/secure/bug free.

Good luck getting competitors!

<comment><USER2> Sorry I misunderstood a bit, you are not required to give up your software, just the results it seems.

<comment><USER3> You do have a point however. Much like the "recover a disk that has been zeroed out" competition, the prize seems somewhat small for the magnitude of the task.

Admittedly, the prize is more then an order of magnitude higher, (and just requires software), so there might be more takers.</comment></comment></comment>


The Post-it wars - <AUTHOR> http://www.guardian.co.uk/artanddesign/gallery/2011/aug/30/post-it-wars-pictures <comment><USER2> These ones are nice but they are not the most impressive that you can find in Paris! This site is full of pictures : <http://www.postitwar.com>

Examples: * Wonderful Ryu : [http://www.postitwar.com/post/9123236665/ryu-it- a-dassault-s...](http://www.postitwar.com/post/9123236665/ryu-it-a-dassault- systemes) * Multiple stairs assassin's creed : [http://www.geeksaresexy.net/2011/08/30/enormous-post-it- assa...](http://www.geeksaresexy.net/2011/08/30/enormous-post-it-assassins- creed-art-pic/)</comment>


Story of Average Indian 'Techie' - <AUTHOR> http://yuvi.in/blog/story-average-indian-techie/?src=hn

<comment><USER2> The sad reality for me living here is that you -- yes you even with all your PC'ness --- are going to take one look at any one with an Indian accent or a name and you will use a stereotype to estimate his or her technical capability. Thats how it is and it sucks big time !</comment>


Black Hat Recruiter Tactics - <AUTHOR> http://blog.nahurst.com/black-hat-recruiter-tactics <comment><USER2> A friend just had this happen at his consulting company:

"Discrediting an employee's current company - Black hat recruiters will contact an employed potential candidate and tell them that their current company is in a precarious financial state and offer to find the employee another job. Black hat recruiters will even do this to employees of their own clients."

He let one of his employees go and they went to a recruiter to find a new job. Next thing you know, everyone at the company was getting called by him saying they were in financial trouble and that he could find them work.

A few days later he calls my friend up and says "I know you've been losing a few employees, I think I have some good candidates if you're hiring."

From my dealings with recruiters, this is almost standard practice.

</comment><comment><USER3> I'm based in the UK, and last year spent a couple months dealing with recruiters whilst trying to find a new position.

I dealt with several companies, and got several job interviews. All the positions were as described, and I never got any nasty shocks.

I may just have been lucky, but is anyone from the UK coming across these shady recruiter tactics, or is the problem US centric?

<comment><USER4> I personally suspect several job offers I have recently been asked to apply for (this is in Europe) do not actually exist, the sole purpose being to get hold of well-qualified candidates' CVs.

<comment><USER5> Yes, CV harvesting is still going strong. I think your suspicions are well- founded, even if you're fortunate enough to never have been exploited that way.

</comment></comment></comment><comment><USER6> _Nothing's worse than getting to an interview and finding out that you know COBOL from the hiring manager reading it off your resume._

This is true, especially since I _do_ know COBOL...

</comment><comment><USER7> I thought this would be about getting a job doing black hat programming...bummed when it wasn't</comment>


Top 6 advantages Ubuntu 11.10 has over OS X & Windows - <AUTHOR> http://nerdbusiness.com/blog/ubuntu-advantages-over-windows-mac-osx

<comment><USER2> Virtual Desktops are insanely cool - You mean like those that OS X has and that a billion utilities for Windows give you?

The Community support is awesome - And there isn't ##windows or ##macosx, or sites like stackoverflow.com in addition to all the articles written by the 90%+ who use OS X or Windows?

Unity is better than ever - Unity being better than ever is an advantage over earlier versions of Ubuntu, not OS X and Windows. What happens if I connect my Dell laptop with an ATI card to a TV to watch a movie?

Beautiful Themes - They are beautiful indeed, but not very polished. OS X and Windows have huge teams whose only job is to make sure that the UI not only looks good, but also is functional and doesn't break down in all sorts of situations.

An enormous free software library - Can I run iTunes on it and sync my iPhone properly? I also want to watch Netflix and Hulu full-screen. Sometimes I like playing that Angry Birds game, is that on there? No? I can't do any of those things? But you say there's a 3D modeler there, as well as something called DDD?

Ubuntu is Free & Open Source - Because all developers and nerds rewrite parts of the kernel the way they work. Also, how does the OS being open source prevent the OS vendor from making huge changes to it? If Canonical introduced a breaking change to your application are you going to fork the OS or fix your app?

Ubuntu is a great OS and arguably the best Linux distro out there, but this article performs feats of logic I have never thought possible.

<comment><AUTHOR> Great counter. Regarding the prospect of Canonical introducing a breaking change to your app - obviously you fix your app. But the larger point is that you can trust Canonical more than Microsoft or Apple that they won't introduce a breaking change to your 'business model'.

</comment></comment><comment><USER3> I agree virtual windows increase productivity.

I've been using them in windows for years via <http://virtuawin.sourceforge.net/>

Works just as good as the linux counterpart.

<comment><USER4> Wow- thanks for that. I didn't know it existed.

<comment><USER5> Well based on the article leading with the virtual desktop as a reason UB is 'better' than OS X, you'd think that someone obviously didn't know. Lion came out almost 4 months ago.. UB isn't breaking new ground with that feature.

<comment><AUTHOR> Fair enough, but is mission control as fluid as Ubuntu's virtual desktops? Like SuperKey + S to quickly zoom out and CTRL + ALT + up/down/left/right to slide screens? And can you set it up to have like 9 or 20 some screens? I ask because I honestly don't have OS X running on any systems atm. But I have a feeling OS X cannot match Ubuntu's depth on this feature.

</comment></comment></comment></comment><comment><USER6> Has the author of this article never used Spaces on OS X? The very first point seems to indicate they have not.

<comment><USER5> And mission control is even better -- especially with dual or triple monitors.

<comment><USER7> Actually, mission control is a giant step back. Spaces prior to Lion were actually more useful and usable. Now they have turned to a gimmick to impress the clueless in the apple store. This is one of the many reasons I have not updated my macs to Lion, and if they continue this way I may just install Ubuntu on them.

<comment><USER8> I'm not clueless (I'm a CS graduate, I've cut my teeth on Sun OS) and I find it more useful than Spaces. YMMV, but when you assume you make an ass out of you and me.

<comment><USER7> I never said you are clueless, but I have been using OS X for a while now and it seems ever since iOS and massive iPhone uptake Apple has modified their OS design to dazzle rather than actually do work. They often take good ideas and concepts out of the OS and put something in that feels like a hindrance and step backwards to users who depended on the functionality and behaviour.

</comment></comment></comment></comment></comment><comment><USER9> This list sucks.

On the other hand, I've been running Ubuntu 11.10 on my notebook for almost 24 hours now and it is pretty nice. I think the biggest improvement is Unity. Unity sucked in 11.04. But now it feels right. It's got the smart ideas from Gnome3 while leaving behind the holier-than-thou stuff (i.e. the removal of the minimize button). I will say that Unity in 11.10 has a number of bugs. None of them show-stoppers but it's crashed on me a few times -- but it automatically restarts so it's not a big problem.

A few minor hardware issues specific to my Lenovo notebook also seem to have been resolved by default.

I agree with a couple posters that Ubuntu seems to be trying to copy a lot of OS X and bring it to the PC. They are at least doing a half decent job.

</comment><comment><USER10> I always get the impression that Ubuntu is trying to be OSX for PCs. I know it's more than that, I don't have a use for it myself, and I won't hold it against you because you use it.

The point being that OSX is the one to emulate (in the non-computing sense) if you're going to do it, and I have to say, Ubuntu now looks better than Windows does, which is always so damned ugly. At least I found myself liking what I saw.

But actually whilst we're on the point, what the hell are Microsoft spending their money on? Mac OSX has been around for 10 years and you would have thought MS would just take a pile of cash, hire the best graphic artists out there and catch up. What's stopping them?

</comment><comment><USER11> I was really hoping for compelling reasons, because I do love ubuntu, but this list is /really/ subpar. The number three reason to get ubuntu over windows or os x - "Unity is better than ever"...? Within that, its "on par" with os x's dock. "Free software" Again, eh. I can get a lot via brew or ports, and compile most other things on os x. I love ubuntu, but I can't imagine sending this list to anyone Im trying to convert.

<comment><USER12> True, but then again you're pretty much always able to compile X on platform Y. That doesn't make X a feature.

</comment></comment><comment><USER13> I run linux on my laptop full time, but that article doesn't really do desktop linux much justice. It's a softball article at best.

</comment><comment><USER14> I love a Linux environment over Windows and increasingly as 10.x progresses OS X, but none of the things on this list would be reasons I would cite.</comment>


Game Theory and the joy of shutting down Google Reader - <AUTHOR> http://rogueleaderr.com/post/46782448771/the-game-theory-of-google-reader

<comment><USER2> This is pretty bitter lemonade, but I have to agree with _If Craigslist would just take a lesson from Google and shut down completely, it would be one of the best days ever in tech._

<comment><AUTHOR> Sometimes a spoonful of bitterness helps the lemonade go down. Or something like that.</comment></comment>


Study finds potential breakthrough in determining who's at risk for heart attack - <AUTHOR> http://exactlyscience.com/archives/11419.html <comment><USER2> Word for word blogspam of

[https://intermountainhealthcare.org/news/2017/03/major- study...](https://intermountainhealthcare.org/news/2017/03/major-study-of- atherosclerotic-plaque-deposits-shows-potential-breakthrough-in-determining- risk-for-heart-attacks/)

with study author credits removed.

</comment><comment><USER3> Thanks very much for adding this - I just found out I have a Lipoprotein(A) measurement 383 nmol/L, so yeah, any discussion about understanding the present condition of a person's plaque deposits is helpful.</comment>