On concepts and realities - <AUTHOR> http://www.chris-granger.com/2012/04/22/on-concepts-and-realities/ <comment><USER2> Great. But please don't take too much notice of feedback at this stage, it's more likely to distract* you from your core goals.

Focus on expanding the concept, listen to a _small_ group of critical people you can trust for feedback and you'll build the tool we're all supporting you to build :)

As an aside: to truly 'fix' files, you need to 'fix' version control. That's out of scope for Light Table, but it's something that could be addressed by a parallel project (if someone else fancies looking at it).

* i.e. complicating things so you can support Java/C# - few of those devs will ever use Light Table, and if the concept is a hit then you'll have Microsoft and Oracle waving big wads of cash at you to support their platforms.

<comment><USER3> I don't know what you have in mind for "fixing" version control, but I'm actually working on something like that with a friend.

The basic idea is to diff and merge ASTs rather than long strings. We have some more specific ideas about specific features and advantages, but since we have almost no code yet I won't get into them. We should (since this is actually for school, we _have_ to) have a working prototype several weeks from now, so I'll talk more about it then.

We're not really fixing "version control" _per se_ ; rather, we're building a tool that you could use in tandem with existing systems like Git. So we'll help with diffs, interactive merges (maybe even automatic conflict resolutions) and some other stuff but let the actual storage and versioning stay with Git (or any other VCS).

I can't make any promises, but if we get something interesting working I'll be sure to post it here. We actually tried to do something like this for a hackathon once, and it sort of worked, but was really a big hack throughout. Hopefully we'll get it right this time.

<comment><USER2> That's pretty much what I had in mind: diff at language level not at text level.

Actually, ideally you would have content-aware DIFFs. So source code has one visualiser, images another, each binary format another.

That would make the experience much better.

</comment></comment></comment><comment><USER4> A small piece of advice: Don't try to do everything at once. I think it would probably be better to start with something similar to a standard text editor with one or two bonus features and evolve that over time to your final product. Bringing in a bunch of radical new ideas all at once seems like it probably isn't going to work very well.

I put in $50. I think this project could be really cool if it turns into more than just vaporware. Best of luck to you.

</comment><comment><USER5> > "Our communities are wildly different from language to language, so much so > that idioms even contradict each other..."

> "The way Clojure developers work is very different than the way C developers > do..."

This couldn't be more true, and makes the $200,000 investment goal a heck of lot more reasonable. Imagine the difference between developing and testing HTML5 games with Javascript and creating business CRUD apps with Rails. It's very ambitious when you think about it, which is why I'm just as eager to see how this project evolves in the next couple of months.

Light Table has a huge potential to be dynamically multilingual. Each of these languages and platforms have vibrantly unique communities, and being able to speak to all of them will be the "thing" that makes it worth using.

<comment><AUTHOR> Dynamically multilingual is a good way of putting it. Editors can, for the most part, serve a single set of features to many different languages, but something like an environment has a much harder time doing that. Context matters. Really trying to nail what works in different contexts is arguably the greatest value that will come out of the project.

</comment></comment><comment><USER6> Sorry, but grey on grey is unreadable.

I could install custom style sheets. But now I choose to ignore unreadable pages.

Perhaps other people are also ignoring what you have to say, but not letting you know?

<comment><USER7> Grey on grey is fine for me, but the typeface is definitely too light with too much space in the counters (how would a type-designer say this – does it make sense to call the face too "open"?) Looks pretty though.

<comment><USER8> Open is a good term. By chance, what OS/Browser are you on? I've been trying to gather some feedback about the "extended" fonts available now via @font- face and how people's OS also play a part in that.

</comment></comment></comment><comment><USER9> This site is seriously hard to read. There is not enough contrast between the text and its background.

</comment><comment><USER10> Instant results etc are fun things to play with, but they will not matter for most use cases there are.

For me it's these two lines you mentioned:

1) You should never have to look for documentation

2) Files are not the best representation of code, just a convenient serialization.

First one is easily doable and there are a lot of plugins that help you with that.

The second is what makes this project interesting and almost made me write my own editor the moment I first saw Light Table.

Files are indeed good way to serialize stuff, but handling each separate section of code as independent (and at the same time, dependent on other sections of code) could actually be a better way. At least it's something I'd like to try.

That's also something that's doable for most languages there are.

Only thing needed are the rules that tell what parts are separate, and additional logic that links those parts to the parts that are called from that one to connect the whole thing as one big entity.

</comment><comment><USER11> Why was the (originally edited) title of this submission changed just recently? It was "Light Table - My goal" until it had 100 points, which made it completely obvious what it was about. Now it's been changed to the author's original title which explains absolutely nothing.

<comment><USER12> From the guidelines:

> You can make up a new title if you want, but if you put gratuitous editorial > spin on it, the editors may rewrite it.

What I'm saying is you're right, some editor obviously didn't read the guideline properly. Even if "Light Table - My goal" were somehow gratuitously editorial, the title of the blog post is a horrible choice to replace it.

</comment></comment><comment><USER13> Love the idea but I think a big way to get a ton more backers will be to set better levels for additional languages.

If you think about it $100,000 for python is fairly steep. Not unreasonable, but take me for example. I develop primarily in ruby. If you add a ruby tier, I will back the project. But I think you should make add language tiers and make them a bit easier to reach.

If you do the foundation properly, the difference between adding Python and Ruby should be small. Perhaps if you set Python at $250k/275k and then make ruby and other languages an extra ~$25k you will gain the support of a HUGE ruby audience and open up other big audiences.

Here's a +1 to ruby, and to doing it at much less than $100k.

<comment><USER14> Actually, I think you're vastly underestimating the amount of resources for each Lang to work out well. The key point is semantics. As currently presented, light table is exploiting languages whose semantics can live on a js substrate

If anything, I think they're optimistically underestimating the engineering work for addin js backends for other languages (assuming that's how they plan to have es languages integrated in.) :-)

<comment><AUTHOR> The backends can be written in any language that has support for TCP and JSON. :) Forcing people to write parsers/analyzers/etc in a language other than the host is bound for failure in the long run.

That, however, is a subject for a later post.

<comment><USER14> Ok, sounds like a sensible approach that prevents the editor from crashing! :-)

</comment></comment></comment></comment><comment><USER15> Don't worry about the haters, just keep working.

Having just gone through 9 months of rapid iteration on a product, I've learned so much, both about building good products and about accepting (or not) feedback.

Can't wait to see what Light Table brings to the...um...table.

<comment><USER16> Haters, no. Critics, yes. Anyone who asks an interesting question or poses an interesting problem shouldn't be ignored completely as long as it seems relevant to what the creator is trying to do. Judging by the timeliness of this post however it seems like he's doing a fine job of that.

<comment><USER15> Why shouldn't they be ignored?

It's easy to be a critic, much more difficult to put your money where your mouth is.

<comment><USER16> Because when they make a persuasive argument, it forces you to work harder. To confront the issues that other people are bringing up. If you don't want that then you can make software just for yourself. Otherwise it's best to keep an open ear, even if the voices do nothing to change your direction.

Criticism is no science, and sure they might not be making the same thing as you but that doesn't mean they don't have anything valuable to say about it. You could be a brilliant programmer but absolutely no imagination when it comes to UX, in which case a little user criticism would go a long way and may even bleed a little into the program architecture.

<comment><USER15> I'm not arguing that criticism isn't valuable, I'm just arguing that it isn't valuable when you are still in the early stages of building your idea. Build it based on what you think it should be, see if people use it, and then accept feedback.

The people criticizing you, especially this early, are obviously not your customer.

</comment></comment></comment></comment></comment><comment><USER17> > while it may seem that live evaluating a compiled language like C is far > off, I believe that given the motivation someone will find a way

I wonder how close Cling[1] is to this ideal.

[1] <http://root.cern.ch/drupal/content/what-cling>

</comment><comment><USER18> Great positive response from the OP -- I saw the critique on the idea at the start of today and already he has made a reply that gracefully deflects most of the criticisms raised about the idea.

Most of us are probably aware by now that some of the features that the OP is offering has already been done. It was pointed out that Eclipse supported docs everywhere, for example. I agree that these are _principles_ that have a much higher purpose than promising some neat features: they will guide and define the development of this product.

I, almost many others, find what the OP is doing very intriguing and I am eagerly watching how Light Table will develop into a product that perhaps we can use one day.

</comment><comment><USER19> This post convinced me to contribute to the project.

I thought it was a great idea at first, but didn't contribute because of the odd kickstarter levels and my own faulty perception that the project was to create a fleshed out version of the initial demo.

Clearly stating that the priority is on your ideals was a great idea:

      - You should never have to look for documentation
      - Files are not the best representation of code, just a convenient serialization.
      - Editors can be anywhere and show you anything - not just text.
      - Trying is encouraged - changes produce instantaneous results
      - We can shine some light on related bits of code

</comment><comment><USER20> I like the idea, I think it's a right step into the future of coding. Beta Access @ $15 Pledge would be nice though, since ppl would certainly donate more money if they saw how cool the IDE is.

<comment><USER21> I assume "beta access" means you'll be providing some feedback as well, which can't apply to the lowest donation level. And I can't believe there wouldn't be screenshots and videos as the IDE develops.

</comment></comment><comment><USER22> Its too early in the day to get into these many details. The primary focus must now be

        a. Set of goals.
        b. Fastest way to get to the set of goals.
        c. Building a community and getting them to contribute.

Anything else and we would be prematurely optimizing. And falling through a unproductive rabit hole.

The primary focus at this time must be to worry about a basic usable product with a extensible mechanism and growing a community. The faster you get something out, the more awesome it will be. After this kind of a built up, not having a quick release or a bad release will disappoint a lot of people.

Will be nice to see something in the next 6 months.</comment>


Alcoholic liver disease rates soar among younger people - <AUTHOR> https://www.usatoday.com/story/news/health/2020/02/20/alcoholic-liver-disease-rates-soar-among-millennials/4802917002/ <comment><USER2> Annoyingly, there doesn't seem to be any information about _why_ this is happening. It's somewhat hard to believe that people are actually drinking a lot more than they did 10/20/30/40 years ago.

One life tip to be aware of: Acetaminophen (Tylenol) is horribly toxic when combined with alcohol. Don't do it.

<comment><USER3> There are a lot of studies as to why this is happening:

[https://www.uk-rehab.com/alcohol-addiction/why-is- alcoholism...](https://www.uk-rehab.com/alcohol-addiction/why-is-alcoholism- on-the-rise/)

[https://www.ashwoodrecovery.com/blog/alcoholism-rise-not- slo...](https://www.ashwoodrecovery.com/blog/alcoholism-rise-not-slowing-see- latest-stats/)

[https://www.npr.org/sections/thetwo- way/2017/08/10/542409957...](https://www.npr.org/sections/thetwo- way/2017/08/10/542409957/drinking-on-the-rise-in-u-s-especially-for-women- minorities-older-adults)

[https://www.medicalnewstoday.com/articles/325135#Economic- gr...](https://www.medicalnewstoday.com/articles/325135#Economic-growth-may- explain-global-trends)

<comment><USER2> Thank you for the links. Only the last seems to speak to the statistic I'm interested in, which is per capita consumption changes over time.

In short, it sounds like change for the US is rather small, and actually negative for Europe. Given that, once might theorize that more people are drinking heavily, etc. (which might be covered in these links, but I haven't looked closely yet)

Here's part of the last page:

At the global level, the team found that the total volume of alcohol consumed per year increased by as much as 70% between 1990 and 2017, from 20,999 million liters per year to 35,676 million liters per year.

"Before 1990, most alcohol was consumed in high-income countries, with the highest use levels recorded in Europe. However, this pattern has changed substantially, with large reductions across Eastern Europe and vast increases in several middle-income countries, such as China, India, and Vietnam," explains Manthey.

Moreover, he adds, "This trend is forecast to continue up to 2030, when Europe is no longer predicted to have the highest level of alcohol use."

In Europe, alcohol consumption — among adults, per capita, per year — decreased by 12%, from 11.2 liters to 9.8 liters between 2010 and 2017. The same figure increased by 34% in Southeast Asian countries, from 3.5 liters to 4.7 liters.

Over the same time period, alcohol consumption saw a small increase, from 9.3 liters to 9.8 liters, in the United States, and from 7.1 liters to 7.4 liters in China, though it decreased in the United Kingdom, from 12.3 liters to 11.4 liters.

The researchers also observe that in most of the countries that they studied, the volume of alcohol consumed seemed to increase at a faster rate than the number of drinkers, suggesting that the average volume of alcohol intake per individual is set to rise.

More specifically, alcohol consumption per capita is likely to increase from 5.9 liters of pure alcohol per year in 1990 to 7.6 liters in 2030.

</comment></comment></comment><comment><USER4> The article says people's bodies vary greatly in their ability to handle alcohol without harm. And it also says that harm to the liver often shows no symptoms until so much damage has been done that it's too late.

So does that mean the rational course is to just not consume alcohol at all, or at least stay at very low levels, like a single drink a week?

</comment><comment><USER5> Its foolish to think any amount of alcohol is ok for you.

<comment><USER6> I'm going to have to disagree, not because you're wrong but because you've gone full Sith(Never state an absolute). Alcohol is probably required for some vital chemical pathways in the body. Just because something is dangerous doesn't mean our body doesn't need it and has ways to mitigate the damage similar to how our bodies handle reactive oxygen species.

[https://www.ncbi.nlm.nih.gov/pubmed/3530279](https://www.ncbi.nlm.nih.gov/pubmed/3530279)

<comment><USER7> Nearly 2 billion of world population adheres to a religion that expressly prohibits alcohol consumption, and I'm sure a very good amount out of that makes it to a ripe old age.

<comment><USER8> Sure, but that wouldn't disprove the notion that alcohol might have some benefit.

There is evidence that ethanol enhances the liver's ability to properly manage its fat stores, and thus might be protective against steatosis [1]. But this is controversial, and it seems that experts are largely unwilling to endorse alcohol consumption in the presence of any liver problems [2].

1 - [https://academic.oup.com/mend/article/21/10/2541/2738565](https://academic.oup.com/mend/article/21/10/2541/2738565) \- He L et al. Dose dependent effects of alcohol on insulin signaling: Partial explanation for biphasic alcohol impact on human health.

2 - [https://sci-hub.tw/10.1002/hep.29753](https://sci- hub.tw/10.1002/hep.29753) \- Bellentani S et al. Two drinks per day does not take your fatty liver away.

<comment><USER6> I'm also unwilling to endorse alcohol consumption, I'm just an avid reader.</comment></comment></comment></comment></comment>


Einstein's boyhood proof of the Pythagorean theorem (2015) - <AUTHOR> https://www.newyorker.com/tech/elements/einsteins-first-proof-pythagorean-theorem <comment><USER2> The Ontario Science Centre once had a "proof" that was made using wooden strips that were about an inch wide and perhaps a quarter of an inch deep. There was a right angled triangle with squares on each side. It looked just like typical diagrams except that (a) it was mounted on the wall, (b) the triangle and the squares were covered with glass, (c) there was exactly enough coloured liquid inside to fill the square on the hypotenuse. Every minute or so, the triangle rotated in such a way as to allow all the water from the square on the hypotenuse to flow into the squares on the other two sides. Of course, the fit was exact. I remember watching the exhibit, thinking about it, and suddenly feeling a greater depth of understanding, not of geometry, but of trigonometry! Of course, not a proof, but a brilliant exhibit. (Here is a similar demo on youtube: [https://www.youtube.com/watch?v=CAkMUdeB06o](https://www.youtube.com/watch?v=CAkMUdeB06o))

<comment><USER3> That is a great demo. Why isn't it a proof? In a sense, isn't a concrete fact of reality better than an abstract proof?

<comment><USER4> It only shows that the Pythagorean theorem holds for that one particular set of side lengths. A mathematical proof requires that you show it is true for all possible side lengths.

An analogy would be that I take two equal-length sticks and say "given any two sticks they will be the same length". I have an example (the two sticks I'm holding) but this does not amount to a proof of my statement (and the statement is obviously incorrect).

<comment><USER5> It's interesting to wonder if a contraption might be built whereby some slider adjusts the sizes of the two smaller squares, while maintaining the right angle (i.e. keeps the corner on a circle with the hypotenuse as diameter). It would be much more mechanically complicated and harder to build, but pretty awesome.

<comment><USER6> That's easy enough, but it changes the total area, which means some kind of drainage is required, which complicates the demonstration of equal-area squares.

<comment><USER5> As long as you don't change the size of the large square, the total area of the two smaller squares must be the same. That's just a restatement of the Pythagorean Theorem.

</comment></comment></comment></comment></comment></comment><comment><USER7> Since we are on HN and talking of the Pythagorean theorem, I must mention E. W. Dijkstra's proof. [https://www.cs.utexas.edu/users/EWD/transcriptions/EWD09xx/E...](https://www.cs.utexas.edu/users/EWD/transcriptions/EWD09xx/EWD975.html) he proves the generalization sgn(α + β - γ) = sgn(a² + b² - c²) also by using similar triangles. Incredibly neat.

<comment><USER8> Whoa, that IS neat. Thanks for sharing! A key part of his reformulation is π = α + β + γ (the sum of the internal angles of a triangle equal 2 right angles). That statement is, funny enough, equivalent to the parallel postulate.

Going on a tangent now: lately I've been thinking that the "dead horse" of the Pythagorean theorem is actually trying to tell us that flat (as opposed to fractal!) dimensions come from composable self-similarity (squares).

<comment><USER7> Yeah if the parallel postulate is out then this obviously doesn't stand. Starting from the North Pole, walking down the prime meridian to the equator then turning right and walking along the equator finally turning right to the north again at the right point so you walk through New Orleans creates a triangle on a sphere with three right angles...

</comment></comment></comment><comment><USER9> This is the most succcinct proof, it's an ancient Chinese visual proof:

[https://www.dbai.tuwien.ac.at/proj/pf2html/proofs/pythagoras...](https://www.dbai.tuwien.ac.at/proj/pf2html/proofs/pythagoras/pythagoras/pythagoras7.gif)

It's not labelled this way but notice that the BIG squares are identical, having sides of a+b. Only the four triangles are rearranged. Just subtract the four identical triangles.

In the second arrangement, a c^2 area is present in addition to the same four triangles. In the first arrangement this had been rearranged to an a^2 and a b^2 area.

It's important to assure yourself the triangles are the same and the big square is the same - there is no tiny hidden sliver or something, and right angles are preserved, there are no shenanigans.

second explanation of same:

[http://www.math.toronto.edu/colliand/notes/pythagoras.html](http://www.math.toronto.edu/colliand/notes/pythagoras.html)

<comment><USER10> This is beautiful.

To be honest the second image with the tilted c² is enough. From that picture alone you can figure the outer square has the same area as the inner square + 4 times the triangle area:

(a+b)² = c² + 4(ab/2)

a² + b² + 2ab = c² + 2ab

a² + b² = c²

<comment><USER9> Thanks. Your proof works, I could follow it.

Yours does use some elementary algebra[1], which wasn't used in the Chinese geometric proof. I wonder if ancient Chinese mathematicians could simplify (a+b)^2 symbolically, or even did symbolic algebra this way?

(When I referred to "ancient Chinese visual proof" I wasn't bullshitting, but I didn't find a source with the exact 2-part picture, though this makes same claim using same pictures: [http://www.researchhistory.org/2012/10/24/earliest- evidence-...](http://www.researchhistory.org/2012/10/24/earliest-evidence-of- pythagoras-theorem/) )

I'm sure they knew that the area of triangles, which you also use, is (ab/2) - but the purely visual proof needs nothing more than the knowledge that the area of a square is the square of the length of its sides. (And I guess some obvious facts like that no matter how you divide an area the sum of the areas of its parts will be same - the reason I mention tiny slivers is in some fake geometric proofs this intuitive knowledge is abused.

For example, see this excellent description:

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

Before you open the solution, you can look at the trick for as long as you want, you won't figure it out.)

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

</comment></comment></comment><comment><USER11> Einstein's 1949 article in the Saturday Review is "Notes for an Autobiography" [0]. It's worth reading.

0\. [https://archive.org/details/EinsteinAutobiography](https://archive.org/details/EinsteinAutobiography)

</comment><comment><USER12> > Einstein's predictions, during a solar eclipse in 1919—was asked if it was > really true that only three people in the world understood the theory, he > said nothing. "Don't be so modest, Eddington!" his questioner said. "On the > contrary," Eddington replied. "I'm just wondering who the third might be."

for another side of eddington, see 'empire of the stars' [[https://www.amazon.com/Empire-Stars-Obsession-Friendship- Bet...](https://www.amazon.com/Empire-Stars-Obsession-Friendship- Betrayal/dp/061834151X)] quite a fun read, i picked it up on a whim, and could not just put it down over the course of a 8hr train ride :)

<comment><USER13> You may wish to include the entire sentence:

> When Arthur Eddington—the British astrophysicist who led the team that > confirmed Einstein's predictions, during a solar eclipse in 1919—was asked > if it was really true that only three people in the world understood the > theory, he said nothing. "Don't be so modest, Eddington!" his questioner > said. "On the contrary," Eddington replied. "I'm just wondering who the > third might be."

It's hard to understand without it.

<comment><USER14> If you are alluding to some nuance, I probably missed it.

<comment><USER15> In the first quote it is implied that Einstein is being asked the question. Then it isn't clear who Eddington was. The questioner, I thought at first. Then no, a phone typo of Einstein? I found it confusing and the larger quote cleared it up.

</comment></comment></comment></comment><comment><USER16> Every time Pythagoras is brought up, I can't help but think of the cult of Pythagoras as well.

One of the tenants is the refutation of beans. For what reason, I have no idea. I've always found it strange that a mind so capable was also equally capable of such folly.

</comment><comment><USER17> Trying to figure out the proof of a² + b² = c² by myself, without looking up the solution, was somehow exiting. Being exposed to a riddle and trying to find the solution is kinda cool.

However, not solving it after 10 minutes left me feeling a bit dumb... :)

<comment><USER5> This is a general problem with mathematics education. See [http://toomandre.com/travel/sweden05/WP-SWEDEN- NEW.pdf](http://toomandre.com/travel/sweden05/WP-SWEDEN-NEW.pdf)

Real (non-trivial, non-obvious) problems that someone hasn't seen before can take hours, days, weeks, years, whole careers, or sometimes centuries to solve. Some of them later turn out to be impossible (and for many we still just don't know).

 _Real_ math education would have students grappling with relatively open- ended problems that take significant amounts of rumination and some cleverness to solve. It would explicitly encourage/reward close critical reading, creative brainstorming, planning, strategic thinking, generalization and specialization, executive control (e.g. time management), error checking, and clarity of exposition (including when asking for help after being stuck). There would be no shame in throwing out incorrect hypotheses, asking for clarification, getting stuck on a problem, making subtle mistakes which could serve as good examples for future improvement, etc. But skill and stamina at such work must be trained slowly, starting from an early age.

The problem is that current (US) math education instead pre-chews everything, assigns students lists of exercises almost identical to what they saw someone solve before, and mostly tests memorization/recall and willingness to do the same trivial task over and over for hours despite being terribly bored, under purely extrinsic motivation.

For people used to such math homework, the standard response to a single problem which takes >5 minutes to work through is to give up.

<comment><USER18> _The problem is that current (US) math education..._

Worth noting that the US tried the kind of math education you are suggesting (called the New Math initiative) and it failed miserably. The math education we are seeing today is largely born out of a counter reaction to that failure.

<comment><USER5> The New Math was something fairly different than what I am suggesting. It was an attempt at an alternate curriculum for primary/secondary school based on higher-level / more abstract mathematical topics, partially displacing study of arithmetic.

The New Math curriculum per se wasn't so terrible, though it certainly had flaws (like anything invented from scratch out of context and not slowly developed and tweaked over time in response to feedback in a real-world setting). The bigger problem was that the proponents of the New Math didn't have much buy-in from students, parents, teachers, school administrators, or the broader society, didn't really do any outreach or teacher training, didn't really produce enough supporting materials, and just dumped the curriculum on schools without support.

Parents and teachers didn't know what to make of the curriculum (were unqualified to teach with or assess it), and didn't feel involved in the process, and as a result there was a lot of opposition.

But what I'm talking about is not teaching different subjects per se, but teaching whatever subject in a different way, focused more on solving problems and thinking than on precisely mimicking teacher's demonstrations or memorizing formulas. The current typical math pedagogy is patronizing, emphasizes memorization/recall and very careful attention to details (sometimes irrelevant details about formatting), teaches students that they shouldn't try to think for themselves and teaches them to conflate getting the right answer with being "smart" or "good at math" and that anyone who makes a mistake or doesn't know how to get the answer is "stupid" or inherently incapable.

</comment></comment></comment></comment><comment><USER19> A friend of mine used to describe this as a "one-line proof". Never heard it ascribed to Einstein before, though.

</comment><comment><USER20> Had to stop reading long enough to see if I could prove it myself using similar triangles. This is definitely cleaner than what I came up with though, which involved creating a similar triangle with side b1 set equal to side c of the original.

</comment><comment><USER21> Can anyone point to a proof that for similar non-isosceles right triangles, the area is proportional to the square of a side? Can that be generalized to other shapes?

<comment><USER22> When you scale a figure, say by doubling all distances, the area quadruples. Scale by factor k and the area goes up by a factor k^2. So if the area proportion between the triangle and the square is T:S, and we scale both figures by the same factor k, we get areas k^2* T and k^2* S respectively.

But k^2* T:k^2* S = T:S.

</comment></comment><comment><USER23> I remember watching a documentary once, and it kind of made the case that Einstein wasn't an isolated genius, but more like Mark Zuckerberg. Basically organizing and putting together other scientists work,then unfairly getting all the credit. Anyone seen this documentary before? Its been years since I watched it, so memory is vague.

<comment><USER24> For what it's worth, organizing other scientists work from a new perspective and having a unified framework is the highest form of genius a scientist can achieve. That is why for example Einstein is credited with relativity rather than Poincare.

</comment></comment><comment><USER25> I find this style a bit frustrating to read. I just want to know what his proof is, but there's so much fluff in the article that the actual meat is kind of hidden. So anyway, "his" proof is to drop a height to the hypotenuse and use similar triangles. Ah, right, I know this proof and I remember it as the canonical proof my grade 9 geometry textbook presented.

<comment><USER26> this is the New Yorker not an maa article. it's supposed to be entertaining for a typical New Yorker reader. I swear man some people are so tone deaf it's frustrating: the whole world doesn't cater to people like us. at least try to make at attempt to empathize.

edit:

besides it's literally labeled steps 1-5 (i had no trouble skipping the "fluff" and finding the proof).

<comment><USER25> I'm sure other people like this style of article. I'm just telling you I don't.

Even the steps 1-5 are a bit fluffy for me. If you had just told me "drop a height to the the hypotenuse and use similar triangles" I would have known what was meant, more succinctly.

Do you have a suggestion on where to get unfluffed math news? I sometimes look at the AMS notices or Terry Tao's blog, but they don't cover quite the same breadth as things like Quanta magazine. I don't know where to get the big news for major events from an unfluffed source. Usually by the time the news has hit Quanta magazine or the NYT, it has already been circulating somewhere else long enough to be old news. I just don't know where else to look.

<comment><USER26> [http://www.scimagojr.com/journalrank.php?category=2603](http://www.scimagojr.com/journalrank.php?category=2603)

<comment><USER25> I guess, but that's a bit of a firehose. Is there really nothing intermediate between the NYT and just scouring all the journals? Something like the AMS notices or Terry Tao's blog, but slightly more frequently updated?

<comment><USER27> Check out Quanta magazine

</comment></comment></comment></comment></comment></comment><comment><USER28> (2015)

<comment><AUTHOR> Thank you. I edited the title.

</comment></comment><comment><USER29> If you use noscript, the images of the proof will not appear making it nearly impossible to follow.

<comment><USER30> Sympathetic, but noscript compatibility has been out the window for a decade at least. You can't reliably book travel, interact socially, read email, buy basic retail items, etc, without being extremely selective about providers. I'm with you philosophically, but that ship sailed long ago.

<comment><AUTHOR> The thing is that there is no particular reason for non animated images to require javascript.

<comment><USER31> Lazy loading

<comment><USER32> They're <10KiB a piece, most of them.

If the New Yorker would use the proper format of SVG here (or even PNG — the diagrams are all JPEGs), they would likely compress even better; most of them also include a ton of whitespace either side of the actual image. Testing one of them, the size falls by ~28% if you correct for all this.

On mobile, where my connection is less reliable, I also have a strong distaste for lazy loading: it squanders all the time available from when I started reading until now. Then, when the image is finally in view, then we start the long haul of fetching it, and risk that I've again lost good connectivity.

<comment><USER33> Conversely, I like that it doesn't waste my data if I only get 1/2 way through an article and have to close it because I'm out and about and the world around me may interrupt me reading something on my phone.</comment></comment></comment></comment></comment></comment>


The Depth of eBay's Problems 1: Disappointed Buyers - <AUTHOR> http://bits.blogs.nytimes.com/2007/12/17/the-depth-of-ebays-problems-1-disappointed-buyers/

<comment><USER2> _[Meg Whitman, eBay's chief executive] wasted $2.5 billion on Skype under the "I better do something to justify my existence plan." She could have bought the Kinko's chain for the EXACT same price. To the penny. What a coup that would have been. What a great combination of services and opportunities. Oops, FedEx bought it instead._

Wow. Word to MY mother.</comment>


Google Kills Wave - <AUTHOR> http://googleblog.blogspot.com/2010/08/update-on-google-wave.html <comment><USER2> _Wave has not seen the user adoption we would have liked._

Did Google believe that this was going to succeed as a _consumer_ product, à la Facebook?

Wave, as it exists today, is a great tool for _corporate_ communications. With the right interfaces, integration, and extensions it could definitely displace Exchange and Lotus Notes. Eventually, as a protocol, it had the potential to transcend email.

Maybe Google just hoped Wave would appeal to a different market than it really does.

\----

PS #1: I'm sure that corporate uptake of Wave in its current form was limited as well because of the absence of a reasonable client/server that you could run on your own network.

PS #2: Hopefully there are enough of us who like the protocol that, over a number of years, we can build Apache Foundation-quality F/OSS implementations of the needed components.

PS #3: It would be truly ironic if, say in 10 years time, Google finally integrated the Wave Protocol with Gmail because there had been enough private (but federated) uptake as an email replacement.

<comment><USER3> We use it exclusively for our meeting status reports, etc.

It's just a wicked solid tool for meetings and out-of-band document collaboration. I'd love to see it continue. I'm sad it didn't get the adoption they wanted, but I also wonder what they expected when they didn't even really try to integrate it with GMail.

If they could go back and time, exclude Buzz from Gmail but instead add Wave, I think they'd have better success for it.

<comment><USER4> _If they could go back and time, exclude Buzz from Gmail but instead add Wave, I think they'd have better success for it._

No question. Wave should have been an alternate view of your Gmail account. Instead it was a completely distinct environment that you had to manage separately, which most people aren't going to be bothered to do.

<comment><USER5> The main reason I didn't like it is a very simple one, and it has to do with automatic sign-in to Google properties based on whether you're logged into Analytics or Gmail or the like.

Since we use a corporate email for Analytics but personal ones for Wave it meant having to switch logins all the time. Might sound trivial but actually put me off using the product at all.

<comment><USER6> If you had an apps account, you could have requested Google Wave. We got it a while ago.

</comment></comment></comment></comment></comment><comment><USER7> It failed because it was completely invisible.

Facebook spams your inbox. They _make sure_ you know that you have an account and that people are trying to reach you (or tell the world about their cat, etc).

With wave, it's silent. There was activity on a wave I was following in January. I found out about it in March. Someone replied to something I said on July 21st. I'm only just finding out _now_. What kind of a communication tool is that? It's like they're selling a phone that can't ring.

The other UI and social issues were important but weren't fatal. If Google had actually _notified_ users when they got new messages, they would have logged into wave, sent more messages and wave would have lasted longer.

Instead, messages were sent but never read, so Wave lost all the momentum it had.

<comment><USER8> You pose an interesting problem. It was (eventually) supposed to replace email, so I'm assuming it was envisioned everyone would check wave every day, or have it constantly open, etc.

Except it hadn't replaced email, so would the better alternative been to have Wave spam your email with updates? Seems kind of hypocritical..

<comment><USER9> The point is that Wave is never going to replace email over the night, so in the beginning it's very useful to get an email whenever something interesting happens. As you receive more and more emails, you realize that it's a lot easier to just keep Wave constantly open and you'll turn off email notification.

But before that point Wave does not deserve its own tab, and because of the lack of email notifications it's very easy to simply forget about checking Wave.

</comment></comment></comment><comment><USER10> Sorry, but this is Google's fault. Right when all us geeks were HUNGRY to start trying out this system, only a handful of us received invites, and when I did, it took WEEKS or longer for anyone else I worked with to get an invite IF they ever did.

So, Wave was useless to me to begin with and by the time it was available to everyone, I wasn't interested and neither were any of my co-workers.

I would blame the launch for the failure of this one.

<comment><USER11> I think that Google saw that artificial scarcity worked well with gmail and thought the same would be true for Wave. The problem, of course is that a Gmail account didn't depend on anyone else having one to be useful. Wave, in theory was an open standard as well, but in practice, Google was and is the only provider.

<comment><USER12> I think more a more likely explanation is that they lacked the infrastructure to roll it out effectively. If that's the case then they should have just waited until they could deliver.

It's pure conjecture of course!

<comment><USER13> It wasn't so much that they lacked infrastructure as that the early versions didn't scale so well.

I got a very early invitation, and it was pretty slow, and got worse as they added more users. They fixed that of course, but it did slow down the roll- out.

<comment><USER14> So why not have another rollout? Sponsor some contests? Hold more demos in tech conferences? Build a Wave-to-Twitter gateway? Build a demo site which gives every HN article it's own wavelet, or whatever?

</comment></comment></comment></comment></comment><comment><USER15> I feel bad for the Etherpad guys, who as I understand it, sold AppJet to Google to work on Google Wave: <http://news.ycombinator.com/item?id=977015>

<comment><USER16> I still miss etherpad. I use some of the alternatives, but it's not the same :(

alternatives: <http://etherpad.org/etherpadsites.html>

<comment><USER17> Google docs is very similar to what etherpad used to be. All be it far less user friendly you can watch others edit and update in real time.

<comment><USER18> <http://www.wsu.edu/~brians/errors/albeit.html>

<comment><USER17> Thanks for pointing that out.

</comment></comment></comment></comment></comment><comment><USER19> This really makes me sad. I work in media, and I have found that the collaborative aspects of Wave really made that process easier. I scored an entire film earlier this year, and the producers and I only used Wave as our collaboration space. It was _beautiful_. Keeping track of various versions of each cue was easily 10x easier than my usual mode (email/FTP/Skype/Phone/etc).

We started off with a collaborative list of every cue needed during the first run through, and then let that list grow bigger and bigger with inline replys. Wave's built-in media features meant that I could paste mp3's into the space and let the filmmakers hear my work immediately, and then download the file to put into the project. This meant that when it came time to FTP the big, uncompressed files, it was _only_ the finals, which made things a _lot_ easier.

Likewise, collaborating with temp music was a breeze-- the filmmakers even scored a few sections of the film with temp music and then put the video right into the conversation. (No more folders full of giant quicktime files with different scores).

I know that I'm going to miss that experience. Oh well. Perhaps someone will take the open-source'd code from Google and build a better product.

I'm not holding my breath.

</comment><comment><USER20> I, for one, am very dissapointed by this. Even worse I feel somehow partially responsible. I have been a huge proponent of Wave in theory, but even after getting into the early beta I just never found myself /using/ it. I blame this mainly on it lacking the social graph I cared about.. But I thought I could just bide my time and in 5 years it would have taken over.

I am starting to feel like I will have to deal with "MY REPLY IN RED" company chain email threads from hell forever now.

<comment><USER21> I blame it on never understanding the UI, the way it did things, or its usefulness. It's like a chat you can't delete things from, and everyone sees what you type and all your mistakes? And you can post pictures?

I just don't get it.

<comment><USER22> The incredibly powerful, federated, open protocol/platform was what excited us geeks.

The client always sucked and was, at the most generous, a tech demo of things the protocol/platform was capable of.

<comment><USER23> And the problem is that the client is what Google marketed.

The client should have been nothing but a tech demo. The potential power of Wave was in that it could move totally arbitrary data between independently federated servers, and had support for robots that could manipulate that data in arbitrary ways.

It could have been a Facebook/Twitter/Flicker/Whatever killer, but Google got tied down with working on the bloated UI rather than building out the platform and letting others handle the frontend of it.

</comment></comment></comment></comment><comment><USER24> That didn't take very long now did it? I never even got around to checking it out.

Aren't they afraid that the next product they announce in this fashion will be met with some scepticism from potential early adopters, who might think 'I'll wait for a bit to see if it stays', which in turn will lead to a cycle where it gets harder and harder for google to release new stuff and get it adopted?

edit: would be nice if they open sourced the code.

<comment><USER25> They launched Wave in May of 2009. It's not like they yanked it all that quickly.

<comment><USER26> Microsoft announced, then released, spent $250M on advertising, and then killed a new phone in that time.

<comment> brown9-2 To be fair, Google did the same thing in the same time frame with the Nexus One, minus the ad budget.

Sometimes disrupting existing markets and paradigms takes time, patience, and several iterations.

(I'm still disappointed at how quickly they stopped the direct-sale idea with the Nexus One)

<comment><USER27> The biggest problem with selling the Nexus One direct was support. Carriers didn't want to support a phone that hadn't branded and Google couldn't accept that people don't want to ask a community message board and wait a few days for a reply when their phone doesn't work.

<comment><USER28> The community message board support model doesn't work for google. My current peeve is this god-awful bug thread for adding an additional account to an Android phone:

      http://www.google.com/support/forum/p/android/thread?tid=6981e6d970e2f29f&hl=en

</comment></comment></comment></comment></comment></comment><comment><USER29> It seems that at their scale, Google doesn't bother to (is unable to?) evolve individual products, rather they pivot by launching and killing entire projects.

The same thing happened with Google's 3D world product, Lively, and the following comparison of Lively with IMVU by Eric Ries is pertinent:

 _"By the time they [Google] actually managed to launch something, they were building the product that we had already discovered was not the right product 100 iterations ago.

"But they launched it with such high fanfare and expectations; they were so convinced they got it right, that it was actually the mismatch between the expectations that Google--one of the most public companies in the world--put behind this product, and then its pathetic results...

"The product wasn't a bad product and it's not like nobody wanted to use it (of course they wanted to use it for stuff that embarrassed Google) but it was the mismatch that really caused them to have to pull it; it was very embarrassing for them...

"Even after they launched they really didn't give it enough time to learn and iterate because they had set the wrong expectations, a classic big-company [inaudible]."_

[<http://venturehacks.com/articles/lean-startup> \-- starting at 6:35 in the audio]

<comment><USER30> This is really a key point. Outside of a few wave template buttons, has any of the core interface problems with the Wave client been addressed since the initial semi-private-invite-only release? Wave seems fundamentally the same to me as a user as it did a year ago when I first saw it. Yet users in general have complained about the same problems the entire time, none of which appear to have been addressed.

</comment></comment><comment><USER31> From last year...

"Poll: What do you think of Google Wave?"

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

</comment><comment><USER32> The problem with useradoption of wave largely came from their invite-only strategy. It's a social tool that requires my friends to have an account for it to be of any use. If they don't have invites and can't join it's useless.

It's amazing that Google didn't see this.

<comment><USER33> That is dead-on the reason I stopped using it.

Woot! I got an invite.

Dang, none of my friends did.

Well... when can I get them one.

Forget about this. Meh. Back to email, IM, IRC and Twitter.

<comment><USER34> I managed to invite my friends, only to find one non-geek who didn't know how to install Chrome Frame, and couldn't run anything but IE on her work machine (corporate policy).

The overhead of using IM group chats when she was in the conversation, and Wave when it was the rest of us, was too much, so we just dumped Wave.

</comment></comment></comment><comment><USER35> Kudos to Google for understanding this and cutting their losses (relatively) early. I remember reading about their effort to cut down on useless products and focusing on the core search/AdWords/Gmail/etc, this is the effect of that.

I really hope Buzz is next.

<comment><USER36> The complement of Release Early/Often is probably Kill Early/Often.

EDIT: spelling fixed, thanks!

<comment><USER37> You know what the complement of Kill Early/Often is? It's me never letting my shop use a new Google product ever again.

People _invest time_ in adopting these technologies. Sure, with a little startup you take into account the fact that they might not be able to survive, but with Google you think hey, okay, let's use this thing. And you start developing your process around it. And then you get burned when it gets dropped with "Oh well we lost interest, okay we love you, bye bye!".

So today, my guys would have been better off sticking with their lousy wiki that having switched to Wave (despite the fact that they liked it and felt it increased their productivity - personally, I never warmed up to it).

Fool me once...

<comment><USER38> Yep, same here. I gave a friggen' talk about Wave at a TechCrunch event. I used it. I wrote an article about it. Inc.com wrote a "personal viewpoint" column where they presented me as a Wave supporter.

Google just lost all credibility with me as an early adopter. From now on, I'll wait 2 years before I start supporting a new Google product, since they apparently have no staying power.

<comment><USER37> Imagine how these guys feel:

<http://completewaveguide.com/>

</comment></comment></comment></comment></comment><comment><USER39> Does anyone else here think that Etherpad could have been more successful than Google Wave?

<comment><USER40> Personally I still use Etherpad more than Wave through the open source implementation.

</comment></comment><comment><USER41> That was fast. I remember watching the announcement (in person) and wondering who it was really meant for. At the time it felt like a solution in search of a problem.

What I _did_ really like was the work they'd done on change-set propagation. Don't have a link to the session on hand, but it was quite interesting.

<comment><USER41> And here it is:

[http://code.google.com/events/io/2009/sessions/GoogleWaveUnd...](http://code.google.com/events/io/2009/sessions/GoogleWaveUnderTheHood.html)

</comment></comment><comment> k-zed Honestly I'm amazed by how unanimously friendly Hacker News (and Reddit) are to Wave.

It was the anti-suckless - overengineered, XML and web-based, anti-privacy, pampering users instead of educating them (e.g. in a corporate environment, using a VCS together with IRC is a much better way to exchange information). I would've expected at least one contrary voice somewhere :)

I say good riddance.

</comment><comment><USER30> It's a nice case study of too much engineering and too much technology, with far too many unnecessary features to start with, with too much of a roll-out (the basic feature demo took over 45 minutes) to too few people without nearly enough thought into actual use cases of a rather complex piece of software that simply didn't perform that well in real world scenarios.

"What's a Wave?" - should be answerable in a couple of sentences, I don't think it ever achieved that level of refinement before being put out into the world.

Even though the basic idea was great, performance of the software in-browser has never been that great, server performance was problematic, especially when waves became too long, no export option of collaborate waves to documents, no real integration with email. Plus it was hard to organize waves. After it went pseudo-public nothing really new happened to it and old weird problems like the funky scrollbar were never addressed.

That being said, I've used it on a number of projects, a couple quite big six- month ordeals, and found it an amazing collaborative environment if you disciplined your team a bit and organized things well at the start of the project.

The concept, combining several, different, modes of communication in one environment is pretty sound actually, I just think that the modes were combined a little too singularly. Certain things like real-time chat and document collaboration are fundamentally different things that should have been relegated to different parts of the interface rather than jammed into one place.

"But despite these wins, and numerous loyal fans, Wave has not seen the user adoption we would have liked." Duh, the rollout was rather botched and given what I think I've detailed it's no wonder.

"What is Wave" should have been "a document collaboration tool with real-time side-channel chat and group email" would have been better for the use-cases my group fell into.

What I was really excited about, and what never seemed to materialize in terms of a release from Google, was that ability to run my own Wave server and federate with other Wave servers. _That's_ what I wanted, and what never happened.

</comment><comment><USER42> What suprises me is the short lifespan of the product to the public before killing it. While some of us may have had Wave invites for a while, it has been only been open to the public for less then 3 months.

<comment><USER43> And the vast majority don't even know that it exists.

</comment></comment><comment><USER44> I liked it, just didn't like the interface. I was an early adopter and very excited about the protocol. When I was looking at it, there wasn't enough client specification to bother working on an alternative client (ie: emacs). Hopefully that has changed (or will change before Google drops support).

I found it really useful for collaborating with multiple parties. It allowed us to work on a document and keep the conversation all in one place yet clearly separated. Sometimes email can make that distinction difficult or unclear.

At least it's not entirely closed source. :)

<comment><USER45> This is what I thought. I wasn't going to pay attention until they specified the client protocol (Wave _needs_ an Emacs mode). Most of the complaints I've heard about Wave stemmed from its AJAX-heavy user interface. How many people had new enough browsers to even use Wave?

</comment></comment><comment><USER46> Wave was simply over-developed internally, and by the time it was released it had evolved an esoteric, private feature set and interface that had suited the Google beta testers. I for one was simply bewildered by the interface and found it difficult to incorporate into my workflow.

</comment><comment><USER47> I wanted to like wave. It just always seemed like a solution looking for a problem.

</comment><comment><USER48> Is it just me or is the source not easily discoverable? I found the wave protocol sources, but i can't really find the individual components. If anyone could point me to the right repo it would be much appreciated!

</comment><comment><USER49> I guess my new wave client <http://micro-wave.appspot.com> is a little more dead.

<comment><USER44> No, the protocol and a basic server implementation are still open source. You will need a new provider I guess. Keep it alive!

</comment></comment><comment><USER50> Given there seems to be real demand for this product, it may well be an opportunity for a startup to build a competitor.

</comment><comment><USER51> If Wave was launched with the Gmail integration of Buzz I think we would be discussing a completely different outcome.

<comment><USER52> Is buzz doing any better?

<comment><USER53> I think the problem is two-fold both with Buzz and Wave. First the implementation and the adoption.

I think Wave idea is awesome, but their implementation (and performance) has been always an issue. My communication is already fragmented over so many places I don't want another domain for another form of communication. They should have added wave into Gmail by default. Wave always had horrible performance issues (still does).

Buzz doesn't solve any communication problem that I can't use it on any other popular services. So Buzz adoption doesn't make sense to me whether its integrated to Gmail or not.

Buzz is a "me too" product. Wave was not.

</comment></comment></comment><comment><USER54> You can't make people solve problems they don't have. If Google failed with the Hype Winds at their backs, then I doubt anybody can do it.

<comment><USER55> That's an interesting perspective. I would state it somewhat differently, though. I think Wave solved _too many_ problems simultaneously, making it overly complex in some ways and hiding its true utility in others.

</comment></comment><comment><USER56> That sucks, we left basecamp/campfire for Google Wave and it was a really good fit for us (collaborative work with a distributed team).

</comment><comment><USER57> I said it before and I'll say it again: wave solved all of the wrong (easy) problems of communication and failed to tackle any of the hard problems. The result was a highly polished mashup of existing communication forms based on cutting edge technology that made for an excellent demo but a very poor (or at best niche) product. See also: the Segway.

P.S. Re: hard vs. easy problems: Wave tackled some hard challenges in the implementation space, which I think may have led the engineers into thinking they were building something innovative and worthwhile. However, the important bit is whether or not you've actually solved anything in the problem space.

</comment><comment><USER58> Wave may have been an idea whose time is yet to come.

When I played around with the beta my brother and I agreed that it was too slow to be useful. That was the last time I touched it.

This was mostly because I was working in a company where getting people to document was enough of a difficulty without introducing new software. If I'd worked somewhere with a bunch of early-adopters, it would have been a fantastic tool.

On the other hand, Wave seems like a tool that almost replicates all of the benefits of being in the same room as someone. I don't think there's a better way to do a distributed workplace. (Of course, I haven't tried.)

<comment><USER3> > When I played around with the beta my brother and I agreed that it was too > slow to be useful. That was the last time I touched it.

Slow? I can only assume people who said this weren't using the latest FF or Chrome. I've never considered Wave slow at all.

<comment><USER59> The Chrome team valiantly tried to incorporate it into our design process, but stopped using it precisely because it was painfully slow.

</comment></comment></comment><comment><USER60> I don't think Wave as a product failed. I think it failed as a product Google imagined/wanted it to be. They expected Wave to replace the way we use email. I didn't buy it then and I don't buy it now, after the fact. The tech was cool and useful but changing consumers habits and especially on something like communication is very very hard. So I am not really surprised it did not get adoption. I agree with some of the comments below that if it was integrated tightly within Gmail, it would worked better and PERHAPS it would helped more users try it, like it and adopt it ..slowly.

</comment><comment><USER61> So, that leaves us with 0 popular GWT applications? Or did Google build anything new / ported something old with it?

</comment><comment><USER62> I think it was grievously hurt by google's slow-start "invite" thing.

It was a catch-22. You needed people to collaborate with for it to catch on, but you needed to wait a long time to invite people.

</comment><comment><USER63> When more people say "I tried it, haven't really used it though" than "I use it regularly" you know your product has failed.

<comment><USER64> You could say that about Twitter, though, and it's difficult to find anyone today who considers Twitter a failure.

</comment></comment><comment><USER65> I wrote this elsewhere; it summarizes my opinion. I'll just add that, in addition to the below, Google also simply needs to allow sufficient time for such a new paradigm (albeit an amalgam of many separate, older, established paradigms) to gain adoption.

\--

I find this quite disappointing. Wave as a concept -- and apparently its underlying implementation -- is brilliant. It pretty much exactly fixes a number of significant barriers I've repeatedly, persistently encountered in professional, collaborative communication.

However, in a fashion that's becoming all too typical for Google, the user interface was spartan and disjointed to the point of outright sucking for anyone who was not an "uebergeek" already at least passingly familiar with the paradigms they were using.

Just like with their Android Nexus phone: They didn't need to improve the technology further as much as they needed to make it usable for the common user. In the phone's case, that meant real customer support. In Wave's case, that meant a meaningful, obvious user interface and much less spartan documentation, including non-linear textual references and not just so many overcute, time-consuming, and shared-environment-adverse videos many of which were broken into frustratingly small snippets. The videos did, I suppose, demonstrate the dynamic interface better than a bunch of text and static pictures might, but then this was in significant part the fault of the interface that gave no visual indicators of what to click or drag, much less what doing so would accomplish.

Google really should give Wave more time, and devote a small cadre of staff to fixing the UI, and another small cadre of staff to some coherent, consistent promotion and public training/documentation. Once people grasp what it can do and how to do it in a quick, intuitive fashion, I argue they would have users aplenty. They've already added it as a beta feature to their Google Apps online office software suite. That crowd is ripe for adoption, if adoption is made straightforward.

</comment><comment><USER66> Isn't it obvious that the #1 reason wave failed was because it wasn't backwards compatible with email? If I could I have received all my email over wave, as well as new waves, I would have started using it immediately. But if its separate, I have to add yet _another_ thing to check to my life? No thanks.

</comment><comment><USER67> Building community needs evangelizing it, building brand ambassadors out of your users and most important "listening to your users closely". One needs to set up a mode of direct conversation. This comes naturally when you start small like twitter or youtube.

When you have few million user base ready to consume whatever you advertise on gmail or search - you are trying to buy out of old rewards. Worse users are non-forgiving and expectations are much high.

So it sounds like a big company problem. But it really isn't. Yahoo does it really well with yahoo answers. There is even today a high response rate from yahoo team through "Ask Mike"

Google should probably consider small teams within. Provide all the support through tech and hardware but let the teams launch these products on their own and grow the userbase naturally focusing on service too along with the product.

</comment><comment><USER68> Google put absolutely 0 muscle behind this product. Android got front page placement on Google and it has now overtaken iPhone. They either didn't truly believe in Wave or the marketing team just made a huge gaffe by not even making a half ass attempt to push this product to the consumer world.

</comment><comment><USER69> Microsoft Bobs. Google Waves.

<comment><USER70> Apple OpenDocs.

</comment></comment><comment><USER71> i don't get which problem was it solving. is it cool that they've introduced character-by-character typing? well, kinda.. but is it useful at all?

it's also cool (for someone) that it looks like a desktop app, but is it needed? it's maybe cool that i have all my contacts from gmail there, but do i need this? i mean i don't even get why would i think of my gmail as a social network, it's my inbox, and it's fine for what it does.

I mean its hard not to appreciate people trying to innovate, but it actually has to solve some sort of problem.. or maybe it's just me not getting the concept (however it's still so much more interesting than all these buzz, rule.fm etc)

<comment><USER38> I wrote an article on the topic back then:

<http://danieltenner.com/posts/0012-google-wave.html>

"What problems does Google Wave solve?"

Wave solved many problems. Google are idiots to axe it after barely a year and a half.

</comment></comment><comment><USER72> Google needs to focus on their core competency which is search. Instead of competing with everyone they should find ways to integrate their search engine into everything. It boggles my mind we don't integrate Google search into everything like we do with the Twitter API. If they continually strive for second place in every category they may one day find themselves second in search as well. Wave is just another lesson in the long string of failures they will continue to produced until they get back to what made them great in the first place.

</comment><comment><USER73> unfortunate. it was a good product, for the right market, but it was overhyped and it underdelivered.

<comment><USER74> And what was the market, exactly?

Seems to me that not a single person I knew actually wanted to use it, or thought it filled a niche they needed filling.

<comment><USER73> its my understanding groups that had to do a high level of collaboration across several people found it pretty useful. i know some people that still use it for this and are happy, although i'm sure that if it closes down, they'll find another product and carry on.

</comment></comment></comment><comment><USER75> I used Google wave for feature/ticket tracking. The only thing I could fault it for was the wacky interface which didn't always work correctly. It was nice to have a hosted, free ticket tracking app that did just enough to get by for that purpose (for personal use I don't need anything as complicated as Redmine, Trak, or Bugzilla; don't have much desire to host my own app; and I'm too cheap to pay someone to host something I could do myself).

Now I'll have to move all of that state somewhere else.

</comment><comment><USER76> Based on the initial reactions to the first Google Wave demonstration by a few non-tech friends of mine I thought Google Wave might gain the necessary product adoption and momentum. I erred and so did many other folks.

I applaud Google for their willingness to stop investing precious development resources in something that looked like the next big thing but turned out to be a great product without consumer approval.

</comment><comment><USER77> It was time. That´s true that "You can't make people solve problems they don't have". But the idea was excellent,maybe later can work.

</comment><comment><USER78> That is sad - I have written a few Wave Robots and wrote an article on Wave. I never thought of it as a user-facing system as-is, but instead liked it as a development platform. I probably invested a little less than 80 hours playing with Wave and writing Robots, and I think it was time fairly well spent, even if Wave is going away.

</comment><comment><USER79> Excellent. Wave was made using obsolete technology and some wrong choices made it in regarding push vs. pull, distribution, modularity, "social mediafication" and encryption among other things.

There were some good things about it, and Hopefully we will now see some real contenders rise up to tackle the Future of Communication(tm).

Preferrably not from Google. Sorry.

</comment><comment><USER80> This was Wave's failure: One year after release (and having never used it), I still don't really know what it does.

</comment><comment><USER81> Can't they just stop improving it and keep it running? It's not like they need to save their server resources.

</comment><comment><USER82> I think Wave is a creative and full of effort generalization of a basic idea: adding something to GMail to promote online work coordination and cooperation. They went way too far and they realized it. I would, istread of throwing everything away, rework the concept and see what can come out.

</comment><comment><USER83> Understandable, but still a shame.

We've got a wave going with about 14 people planning our trips to Ruby Kaigi in a few weeks. It's working really well and has definitely provided value that would be tricky to find elsewhere.

Could Wave have worked better if it targeted a vertical? Or is that not how Google does things?

</comment><comment><USER84> Is this the same thing as Buzz?

If I want to 'connect' with friends, I have Facebook, and if I want to im work colleagues, I have Yahoo and MSN.

For document collaboration I have email for non-realtime, Google Docs for near and actual real-time.

I have a hard time seeing where my workflow needs any more collaboration tools.

</comment><comment><USER85> I wonder if the team can continue working on an open source implementation in their 20% time.

</comment><comment><USER86> I think the reason for Wave's failure is simpler than most posts here suggest. Wave was just way too complicated as an end user tool. It is a technology wanting to be an application. I hope it can live on as a technology underlying real applications.

</comment><comment><USER87> They should really reprint this shirt, in light of this announcement, for hipsters to wear.

[http://www.tee-junction.com/2009/twitter-killer-nerdy- shirts...](http://www.tee-junction.com/2009/twitter-killer-nerdy-shirts-sale/)

</comment><comment><USER88> Wave was a bit too sci-fi. A bit too ahead of its time maybe. Maybe it's best if the technology is split up and spoon-fed to the general population ... that way people can get a taste. I think change needs to be incremental.

</comment><comment><USER89> That's a shame. I'd have used it if other friends and colleagues adopted it, it was pretty good at what it did. I think the issue was that it didn't solve any big enough problems for people to encourage them to get on.

</comment><comment><USER90> Everything that distracts from Google Me is obviously being shut down.

<comment><USER91> I don't know what other services you're referring to, but that was my first thought.

</comment></comment><comment><USER92> A year is really short to get a revolutionary way of working to catch on. Why give up so easily? Maybe they couldn't figure out a working business model for this one.

</comment><comment><USER93> This makes me feel a little better about the time when I sat on tons of invites & never really got around to using Wave. I'm one of those who never grokked wave.

</comment><comment><USER94> Google also wanted it to be tool for all the enterprise, what will happen to other implementation of Google wave for enterprises, for example say Novel's pulse?

</comment><comment><USER95> I was thinking about this recently: <http://news.ycombinator.com/item?id=1362223>

</comment><comment><USER96> google wave is dead because of google.

google provided limited accounts and google wave requests was being sold, so the hype got created.

overcommit and underdelivery, 2009 was not 2004, gmail style launch for wave was the first nail in the coffin

though you have your account, your friends dont, you were waiting alone, it was not the realtime communications I expected. what do I do, leave google wave, this has happened with so many people whom I know.

</comment><comment><USER49> I guess my new wave client is even more dead. <http://micro-wave.appspot.com>

</comment><comment><USER97> innovative technology feels like art sometimes, it should exist for the sake of it. "L'art pour l'art", Innovation for innovation!

</comment><comment><USER98> I wonder how much pressure for canceling such an ambitious product came from people invested in the Apps team?

</comment><comment><USER99> This was a product worthy of being spun out into a standalone company, free to pitch at the corporate market

</comment><comment><USER100> They blew it big time by hyping it for RPGs, which never went anywhere.

Get the RPGers on board, perhaps, and you can succeed.

<comment> brown9-2 They blew it by making it confusing to understand what you'd use it for, making it confusing to know which of your friends had accounts (no integration with gmail!) and confusing to know when someone sent you a new "wave" (no integration with gmail!).

<comment><USER101> ...there is an "email me when a wave gets updated" option, you know.

They even let you decide how often you want to get emailed. I chose once/day, but you could go all the way up to one email for every blip updated/added.

And this way works with all email, not just gmail!

There's a link in that email to send you straight to what's updated. How much integration do you want, exactly?

<comment><USER102> While you're correct, that option was added _far_ too late. By the time that option was added, everyone in my organization had tried Wave and then given up on it. I revived its use in the last week, successfully, with that option, only to see that it's now going to die anyway.

Really, all of Wave can be summarized by the fact that, at its launch, Wave deliberately refused to participate in any existing communications medium other than Wave. This meant that everyone you cared about had to get on Wave. Since that couldn't possibly happen, Wave was doomed from the start. Nothing about today's announcement is remotely a surprise to me.

<comment><USER103> It also sucked. You would get an email that _something_ changed, and the context given was the first message/blip/whatever in the wave instead of the message added at the end. It was a huge let down to log into wave just to read 'yeah' as the entirety of the update. Leaving me to ignore wave update emails even more.

</comment></comment></comment></comment></comment><comment><USER104> to me it seems that google-wave could not gather enough user adoption _precisely_ because it was invite only. gmail could get away with it, because the _nature_ of email 'collaboration' (sic) doesn't mandate both endpoints to be gmail.

whatever the reason, kind of sad anyways.

</comment><comment><USER105> I think adobe connect is the way to go, as far as corporate collaboration tools.

</comment><comment><USER106> Ouch Etherpad guys!

Perhaps Google is coming out with WaveDocs (wave integrated google docs) soon?

</comment><comment><USER107> in two words : It was a good idea, but badly implemented. I'm not telling I would have done a better job than their engineers, but just have a look at the slow interface they made, and you will get my point..

</comment><comment><USER108> To tell you the truth I anticipated this when Google first launched it.

</comment><comment><USER109> "See my comments in RED" still rocks.

</comment><comment><USER110> oh no but at least I can cross checkout google wave in detail from my todo......

</comment><comment><USER111> Ouch!

</comment><comment><USER112> long live the Wave.

the time is right for a New Wave startup

</comment><comment><USER113> The idea is excellent, the fail is the lack of 'product'. They should distribute Wave modules that every wordpress or phpbb user can install on their blogs and hook into their own communities... and then Wave will take off.

<comment><USER114> To me, the big problem was indeed the lack of a product. I have tried Google Wave and I don't know what "product" they're talking about. It seemed to be an interesting technological experiment but I wouldn't be able to tell you what it's for, what problem it solves, or anything besides the fact that technologically, it was interesting.

In fact, I'm kind of surprised that they're killing it, because it felt like a first step with the technology part, with an upcoming second step where they would use said technology. I'm surprised that that was it. I would have expected Google to have plans beyond what Wave is today.

</comment></comment><comment><USER115> Crap. How can I host my own?

</comment><comment><USER116> yet another hint that google have seen its better days..</comment>


Looking for Beta users who will be granted a lifetime free access - <AUTHOR> http://nariko.io/ <comment><AUTHOR> Nariko.io is a visual feedback tool to give and receive screenshot attached comments about the design and UX of the iOS application you are currently developing or designing. It's currently in Beta and could be a useful addition to everyone's arsenal who is working on apps. Early adopters will be granted a lifetime free access.</comment>


Ted Neward evaluates 20 programming languages - <AUTHOR> http://blogs.tedneward.com/2008/04/29/Groovy+Or+JRuby.aspx <comment><USER2> This is very biased toward the considerations of an enterprise datacenter, and thus against languages like Ruby, Python, et alia, that run in their own interpreters, which makes them harder for enterprise datacenters to manage than languages that run in the JVM and CLR, for which tons of monitoring tools and such exist.

Nevertheless, Ted is crazy smart and knows a ton of programming languages, and he has a fair number of insightful things to say about the comparisons here. Just go in knowing that he's not going to be recommending Lisp or Python for the enterprise.

<comment><USER3> And interestingly, he forgot Clojure. It's a decent Lisp, and your ops folks (or clients) can deploy to the existing JVM environment. A pretty good compromise, if you ask me. Oh, and it runs pretty fast.

(I haven't done a Clojure project, but I imagine it might be unpleasant dealing with the usual Java-isms in the libraries you'll have to use. But at least you'll be able to understand the code a few months after you've written it.)

<comment><USER4> There are also implementations of CL and Scheme for the JVM and maybe the CLR. I know that brlewis is using Kawa Scheme in a large financial company of some sort.

</comment></comment></comment><comment><USER5> he _nails_ javascript (referred to as _ES_ in quote):

 _Can we please finally just accept that ES is much more than just a browser extensibility tool? For most developers, this is their first exposure to a classless prototype-based object-oriented language, and unfortunately, most developers don't ever bother exploring it beyond "How do I make my web page do that floating image thing...?" Gah._

</comment><comment><USER6> Here I stopped reading: _Scripting languages have a purpose, and that purpose is generally different from what general-purpose languages do. C# really doesn't need a REPL--don't fall into the trap of trying to make it into Lisp._

<comment><USER7> You disagree? How so?

<comment><USER6> That there's a fundamental difference between "scripting" languages and "application" languages? That if there is, Lisp is on the scripting side? That a REPL would be useless to an application developer, or even a systems developer?

I'm writing Ruby code right now that generates X86 basic blocks to runtime patch Win32 PE images in memory as part of a scriptable debugger for a DMA- driven peripheral I'm reversing. You cannot get more systems-y than I am now. I'm using a REPL to test X86 code written as Ruby. It is _the best thing ever_.

People who talk about "scripting" languages are the 2008 equivalent of the people who stuck up for assembly language application development in the early '90s: an in-joke for the rest of us.

<comment><USER8> "'90s: an in-joke for the rest of us." -- Or maybe you are the VB equivalent of the 90s? Easy to use, and fast, but try to do anything large scale and it becomes a kludge.

I am using both scripting (Lua), and Java for mobile development, and I can tell you that in large programs scripting languages start becoming a burden. If you are working on a small thing, or on something when only few people are involved (4 or less), scripting languages are great, but when it comes to larger applications it takes a very high level of disipline in the team, and higher calibre developers to produce bug free code. -- unfortunately not every company can afford high calibre developers, and have to settle with average programmers.

In scripting languages, team member X, and modify a shared component, and team member Y sudenly sees his part of the code doing wierd things, or even failing silently. It is easy to break things appart and introduce bugs in scripting langauges.

In java, if a method's signature get changed, you are going to see compilation errors allover the place that will force you to fix them.

Plus, there is the dynamic languages performance penalty, that will always be there.

I am not advocating Java, as I sweared my next job has to be "Java free", but as a static language (together with C#) it has good place. It allows average programmers to be somehow productive in large systems, where there are many people working at a code at the same time, something that is actually value creating.

<comment><USER6> I won't rehearse my "large system" credentials here, but I have them, and this meme that C++ and Java are somehow safer for large teams to work in is a joke. I've done large projects in Tcl (!) and in C++ (!$&#) and there are more ways to shoot your teammates in the feet with C++ than in Tcl; they just aren't first-class elements of the language. And C++ is universally regarded as a language for large system development.

I won't rehearse my "high performance systems" credentials here, but I have them, and this meme that the speed penalty for dynamic languages is a problem is a joke. Reread my previous comment: I'm getting in between the processor and the native instruction pipeline _in Ruby_ , and it is, I believe I said, _the greatest thing ever_.

Belaboring the sentiment: the problem with the "fast systems language meme" is that it leaves you with the impression that the language is where speed comes from. No. It is trivially easy to write slow systems code in C: do everything off an interrupt, do 3 system calls per byte, demand-spawn a thread.

The answer to fast systems is to find the bottlenecks and fastpath them. It is much easier to fastpath a bottleneck when a hash table of digraph structures is 2 lines of code instead of a 1.5mb compiled library with template headers that take 3 minutes just to parse.

None of this is heresy. You can read it in "Expert C Programming: Deep C Secrets", which is the first C book lots of people ever read. Your design is where speed comes from. If method dispatch is a bottleneck, please don't waste time moving to C++: your design is fucked, and you are doing it wrong. Do it right.

My heresy is that static type checking is white elephant. I've been doing this kind of work for going on 15 years now, and I can count on 1 hand the number of head-scratching bugs I've had due to type safety, and that includes 100kloc+ components built entirely around void* closures. The things that really fuck you in large systems are object lifecycle and concurrency.

<comment><USER2> > C++ is universally regarded as a language for large system development.

Actually, C++ is a _terrible_ language for large system development. Far worse than Ruby. Then again, I'm not entirely convinced that Ruby is a great language for large system development, either: monkeypatching in a 50-developer project = teh evil. Of course, you can at least solve the worst problems with Ruby with coding standards. C++ problems are more fundamental.

> My heresy is that static type checking is white elephant. I've been doing > this kind of work for going on 15 years now, and I can count on 1 hand the > number of head-scratching bugs I've had due to type safety, and that > includes 100kloc+ components built entirely around void* closures. The > things that really fuck you in large systems are object lifecycle and > concurrency.

If you use a powerful static type system (i.e. neither Java's nor C#'s) intelligently, you can sidestep whole categories of problems simply with proper type declarations -- for example, by using different types for escaped and unescaped string data from users.

In any case, the real reason that enterprises are more comfortable with Java and .Net than dynamic languages for major projects isn't speed, it's that the deployment and monitoring infrastructure is mature and well-understood. Obviously, many enormous websites have been deployed on dynamic languages, but enterprises have a much higher comfort level with the tools available for Java and .Net than the tools for doing this with Ruby, et alia. That's why you see a lot more enterprise traction for solutions like JRuby -- problem solved, as far as they're concerned.

<comment><USER6> So, the answer to our problems is neither C++, nor Java, nor C#, but rather an unnammed (let me guess: Haskell) statically typed language that no large system has ever been built in.

<comment><USER2> Actually, I think Scala and F# are good incremental solutions that can use existing infrastructure and approaches to scaling. The risks of moving to a language that can perform better static checks but retain the rest of an existing deployment stack are actually quite low.

They also have the advantage of interoperating with dynamic languages such as JRuby, IronPython, and others to allow you to deploy a mixed static/dynamic solution and optimize for which language style is the best fit for particular parts of the solution.

<comment><USER6> And the largest system built in Scala would be...?

<comment><USER2> Congratulations on spotting a single keyword and otherwise failing to read the entire post! Throwing your fucking "credentials" around and writing your own assembler out of Ruby or whatever doesn't excuse you from exercising some basic fucking reading comprehension.

The largest system built in Scala is probably pretty small at this point. But like I said if you had bothered to read the fucking post, the risks of moving to a new language when you can keep the rest of a deployment stack are relatively small. You're compiling to the same bytecode, running on the same VM, running on the same server, and so forth. Your IT department or hosting provider doesn't even need to know you switched languages.

Please, do me a favor. If you're going to respond to this and tell me that Ruby is the most proven language ever and you can't trust Scala to display hello world, could you try to read the post this time and make at least a passing attempt to respond to the substance of it?

<comment><USER6> Wow, that struck a nerve, didn't it?

<comment><USER2> Thanks for making it clear that you have nothing to contribute to the substance of the matter except for snide remarks.

<comment><USER6> You went from reasonable-but-wrong to very-angry in the span of just one comment. Why are you taking this personally?

I'm sorry, but the fact that neither Scala nor F# have _ever been successfully used in a well-known large-scale project_ is a substantive argument. Address it! I'm not a fan of C++ either, but guess what? It has a better track record than Scala.

The idea that I'm going to pick Scala over Java "because they run on the same VM" is as silly as the idea of me trying to sell management on building their next product in ObjC, because, after all, they're both generating the same native X86 code. Of course, the real costs and risks have to do with training, maintenance, community, and support, which is why we still use Java.

I'm not sure if you noticed like 4 comments above, but I'm a systems programmer; I have no idea why you think I care that something runs on the JVM. I do, however, sell to enterprises. The VM they care about isn't the JVM: it's VMWare ESX. You could write your app in SNOBOL and they won't care as long as they can plug it into their clusters.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> I've been wrestling with "what to learn next" recently and had kind of narrowed it down to learning Javascript (probably using Rhino) more fully and trying Erlang as my first functional language. I think this nudged me towards Javascript. Even if I stick with Ruby for most of my server-side work down the road--I don't deal with data center integration--it can't make me _worse_ at client side stuff.

</comment><comment><USER10> Where's PHP?

<comment><USER4> Probably on the "if we ignore it, maybe it'll go away" list.

On that topic, I'm interested in creating a something-not-evil to PHP compiler in the style of Fog Creek's Wasabi (not that the language would be an extended version of VB like Wasabi is). Is anyone else interested in working on something like that?

<comment><AUTHOR> It's a brilliant idea for a project. I'm not sure if I'm up for it now but I'd love to hear about how it progresses.</comment></comment></comment>


Sony to Restart Vinyl Record Production in Japan - <AUTHOR> http://www.pcmag.com/news/354703/sony-to-restart-vinyl-record-production-in-japan <comment><AUTHOR> A former coworker, a dj whom was thinking about going pro, bought $100-400 USD/month of vinyl from Australia and other countries. Considering how many boomers and echo boomers wish to pour money on purist/audiophile music listening experience, it's no wonder Sony made this move. Price should be much higher than adjusted prices from the past in order to monetize this segment with lots of disposable income.

PS: My father likely spent $100k+ USD in 1980's money ($190k in 2017) on audiophile gear and thousands of records and CD's. Nakamichi transports, Mark Levinson amp, speakers on floor-isolated platforms and so on... it was basically like warming up the Back to the Future guitar amp.</comment>


Jsmarka.com – JavaScript code performance benchmarker - <AUTHOR> Hey, 'would like to announce an open source project i've been working on,
http://jsmarka.com - a JavaScript code performance benchmarking app...helps in testing the performance of your JavaScript code, built with the benchmark.js library.
Jsmarka is basically just like jsPerf, but has a much better UI/UX, its available on github http://github.com/kodejuice/jsmarka, open to contributions...some features are missing and 'would so much appreciate contributions from Open Sourcerers, feedbacks are highly welcome. <comment><USER2> If it meets the guidelines, this might make a good 'Show HN'. Show HN guidelines: [https://news.ycombinator.com/showhn.html](https://news.ycombinator.com/showhn.html)

<comment><AUTHOR> didn't know abt that, thanks</comment></comment>


How is the state of virtualization these days? Is Virtualbox or VMware better? - <AUTHOR> I came across this seven years old reddit thread[1] which generally advocates VMWare and proclaims Virtualbox as "sluggish". But that was seven years ago, are the state of things the same these days? What would you recommend to a beginner who is still learning virtualization?<p>[1] https://www.reddit.com/r/windows/comments/19appt/virtualbox_vs_vmware/ <comment><USER2> VirtualBox has improved tremendously in the last seven years. In that same time, progress on VMware Fusion and Workstation has slowed (they got rid of most of the dev teams, if I remember correctly).

I'd recommend just sticking with VirtualBox unless VMware has some feature(s) you need and/or you have the extra money to blow.

You can even start with VirtualBox and move to VMware later if you find a reason to. You can easily convert any existing VMs back and forth, etc.

\---

(I've got a full vSphere cluster here in my home lab and VMware Workstation on my workstation and primary laptop. I've decided that I won't be giving VMware any more money, though.)

</comment><comment><USER3> VirtualBox is free. Download it and try it out and you won't loose anything. If your on Windows Pro, Hyper-V is in the box. I spend most of my time on Windows inside Hyper-V and my Linux box uses VMware workstation. Haven't used VirtialBox in a while, but as I said, it's free. Download it and try it out!

</comment><comment> n-gauge Docker?

<comment><USER3> And what does docker run inside? Unless your running Linux on your desktop or using Windows Containers, you still need some sort of Virtualization.... Windows used Hyper-V and the Hyper-V components. MacOs uses something else... but it's still needed...</comment></comment>


Can computer coding help prisoners find a new life? - <AUTHOR> http://www.bbc.com/news/magazine-33735039

<comment><AUTHOR> From prisoner to programmer

A group of former prisoners in South Africa are teaching other prisoners how to code, to help them find work on the outside</comment>