Next Week's Bloodbath At IBM Won't Fix The Real Problem - <AUTHOR> http://www.forbes.com/sites/robertcringely/2015/01/22/next-weeks-bloodbath-at-ibm-wont-fix-the-real-problem/ <comment><USER2> IBM employee here. I have no idea if the cuts are true or not but keep in mind that Cringely has made dooms day predictions in the past that were widely innacurate, see for example: [http://www.pbs.org/cringely/pulpit/2007/pulpit_20070504_0020...](http://www.pbs.org/cringely/pulpit/2007/pulpit_20070504_002027.html) or [http://www.cringely.com/2012/04/18/not-your-fathers- ibm/](http://www.cringely.com/2012/04/18/not-your-fathers-ibm/)

I am part of Watson and we have been hiring a lot (as well as providing great internships).

<comment><USER3> It's amazing how if someone said blatantly false things over and over again about Google or Yahoo laying off employees then it would get flagged out of existence, yet somehow Cringely makes the same false "prediction" over and over again about IBM and people vote it right up. Check your source people, you are actively spreading disinformation by a known doomsday prophet, and like most doomsday prophets he has been wrong every time.

<comment><USER4> Does IBM never do large firings?

<comment><USER5> The article almost opens with a line about the previous biggest ever layoff in history of 60,000 people. In 1993. By IBM...

<comment><USER4> Link has clickbait all over it. Hasn't hooked me yet.

But more seriously, have there been any other large, but not "biggest ever" firings since 1993? Anyone have a chart?

<comment><USER5> I dunno - 60,000 people? I can't think of anything of that magnitude (not that I keep on top of that kind of stuff...)

</comment></comment></comment></comment></comment></comment><comment><USER6> It would be better if we linked to the original Cringely article. This is basically a retelling of the same.

[http://www.forbes.com/sites/robertcringely/2015/01/22/next-w...](http://www.forbes.com/sites/robertcringely/2015/01/22/next- weeks-bloodbath-at-ibm-wont-fix-the-real-problem/)

<comment><USER7> Ok, we changed the url from [http://www.itworld.com/article/2875112/ibm-is- about-to-get-h...](http://www.itworld.com/article/2875112/ibm-is-about-to-get- hit-with-a-massive-reorg-and-layoffs.html). Thanks.

</comment></comment><comment><USER8> So yeah, the move to the cloud is hurting IBM's traditional core business. But as to the criticism of the current CEO for "doing nothing", the partnership she just inked with Apple seems like a step in the right direction. It's exactly the thing they should be doing to adapt themselves to the cloud era.

Look at this stuff. It's fucking beautiful: [https://www.apple.com/business/mobile-enterprise- apps/](https://www.apple.com/business/mobile-enterprise-apps/)

Enterprises don't need as much help setting up and running their disappearing data centers. But they _do_ still need help building better software for their business. And more than ever before there's a focus on the ROI of better designed software. Definitely most enterprises don't have that kind of software expertise in house.

I think it would be mistake to advise IBM to try to just focus on competing with Amazon. The margin in enterprise services has moved up the stack and that's where it looks like IBM is moving. Definitely some pain along the way though.

<comment><USER9> Not that beauty is a bad thing, per se, but it's never been high on the list of requirements for enterprise software. Functionality and configurability tend to be more important.

<comment><USER10> Things are changing; people see no reason to put up with shitty design and hard to use applications in-house, especially if their employer has nice customer-facing applications. It's analogous to the PC revolution, when people started using their own copy of VisiCalc or Lotus.

<comment><USER11> > Things are changing; people see no reason to put up with shitty design and > hard to use applications in-house, especially if their employer has nice > customer-facing applications. It's analogous to the PC revolution, when > people started using their own copy of VisiCalc or Lotus.

Except that "people", i.e. employees, are not the decision makers when it comes to what software/hardware they get.

<comment><USER10> When the C _O or GM level staff start using their personal iPads because they hate battling with their XP-era laptops_ so much*, change happens.

</comment></comment></comment></comment></comment><comment><USER12> I'm always kind of shocked that people are so meek and enamored with the idea of stability that they just shoot themselves in the foot. The tech industry is the wild west and most people in it aren't very good because they either lack drive, talent or the backbone to rise above those who lack drive and talent.

A better outlook is to make IBM (or any other company) work for _you_.

Work there for a couple years. Be bold. Challenge inept management and others that are only looking for stability and a paycheck regardless of outcomes. When you get tired of being stonewalled, bail to a smaller business and poach the people you identified as top talent.

Nobody's looking out for you but you. It's silly to expect an impersonal thing like a corporation to always try and take care of you. Making the company work for you doesn't have any factor in leading an ethical and fulfilling career. You can still deliver real value for a while despite a bloated middle management culture that is scared of the idea of bottom up leadership.

<comment><USER13> It is truly not fun being that guy: [http://randsinrepose.com/archives/a-toxic- paradox/](http://randsinrepose.com/archives/a-toxic-paradox/)

This is especially true if you're in an organization as large and bureaucratic as IBM and not in a senior position. I think you overestimate how much influence you can really have on upper management. True story when I worked there as a GDF lead, talking to a senior manager.

Me: "Hey, I think I found an error in the formula we use to calculate one of the GDF metrics. This is creating garbage data." SM: "Oh wow, you're right."

Later.

SM: "Actually, we made the formula that way on purpose. It's OK." Me: "What? How? Why?" SM: "It's OK, don't worry about it."

What am I supposed to do then? Escalate to a VP? On a regular basis? I did. A senior manager got in touch with my manager and delivered the message that I need to get in line. I quote: "No more complaining." Depending on the environment where you're working, it's not easy to be the devil's advocate. It's usually not easy in the first place. In certain environments, it's almost impossible, you might as well have not even joined.

edit clarification: GDF was IBM's attempt to create its own version of the Six Sigma program.

<comment><USER12> You're most often actually fighting a political battle masqueraded as something else, and a necessary shift is to recognize that early on.

Once you realize it, you can work on those obstacles. By-with-and-through: there will be friends, frenimeies, and enemies that you can use and be used by to advance whatever you set out to do. You can often play political factions against each other and ride between two or more to propel your own. If that sounds deviant, it's not - it's real leadership and starts at the lowest levels.

Set an aim point rather than specific criteria for success, so you may lose some battles but you can win you own long term campaigns.

As long as you are ethical and not simply an outright ass, the penalty for crossing the line is not really a penalty - maybe you get squeezed out of somewhere you don't want to be and are at least as valuable elsewhere. When you get some confidence, you'll find that the line is quite a bit farther than you expected once you enact this outcome based mindset that is in line with the real intent of the organization.

It will never be fun all the time. But you're there for some reason, and the alternative is at best purposeless mediocrity.

Some further sources of reading: * [http://www.artofmanliness.com/2014/01/22/john-boyds-roll- cal...](http://www.artofmanliness.com/2014/01/22/john-boyds-roll-call-do-you- want-to-be-someone-or-do-something/) * I stumbled across some interesting second hand stuff of a mainframer that brought Boyd inside Big Blue: [http://www.garlic.com/~lynn/subboyd.html](http://www.garlic.com/~lynn/subboyd.html). Some of it seems interesting.

<comment><USER13> I understand what you're saying. But I have several reasons why I think it doesn't matter for what I'm saying. Perhaps we are not on the same page. Apologies if this is long.

1\. I am claiming that for many of these battles, it's not simply political. It's a fight for the existential foundation of what the organization should be all about. When the web team at Microsoft went head-to-head with the Windows team in the late 90s, that wasn't simply a brouhaha over who should get power. It was much more than that. It was a question about Microsoft's future ability to dominate/survive/die. Yes, the weapons to fight the battles and the war are political in nature. But something at that level isn't simply about the politics.

 _> You're most often actually fighting a political battle masqueraded as something else, and a necessary shift is to recognize that early on._

Likewise, let's not let the weapons being used mislead us to incorrectly conclude what the fight's really all about.

2\. Once the strategy has been decided by the top, it's hard for one person, especially at lower levels, to change the momentum. The executive team is all in. If an executive is not all in, the executive is demoted, reallocated, or leaves the company. It's the CEO's job to get his/her executive team on the same page. He/she should have the political savvy necessary to accomplish this. It's each executive's job to get their directors on the same page. It's each director's job to get their senior management team on the same page. It's each senior manager's job to get their managers on the same page. And it keeps trickling down until it reaches the bottom. A CEO who is not able to achieve this organizational buy-in cannot be considered someone who can lead the company. Someone at the bottom cannot and will not change the existential direction of the company, no matter how politically savvy he/she is.

Once Microsoft settled that Windows would be their focus and won the browser wars with IE6, they sat on that for years. It would not have mattered how politically talented you were, you were not going to convince Microsoft to invest into improving IE for a long, long time. Pretty much the only way to win at this is to be a super genius and create something fantastic on your own time in secret from the organization. Like the story of how OSX was ported to x86. [http://www.theverge.com/2012/6/11/3077651/apple-intel-mac- os...](http://www.theverge.com/2012/6/11/3077651/apple-intel-mac-os-x- retrospective) Otherwise, you need a concerted effort from multiple parties and sponsorship and political protection from a very senior level.

3\. _> It will never be fun all the time. But you're there for some reason, and the alternative is at best purposeless mediocrity._

Or you can leave if you can't find any reason to stay. Staying can also mould you into purposeless mediocrity, whether or not you resist it. Let's not underestimate our environment's ability to influence our life, mindset, and behaviour. When I was graduating from university, I asked a prof which job offer I should take. He said whatever I choose, be careful if I choose the larger corporations. He said they're like zoos. If you stay in them too long, you become tame and become unable to survive in the wild again.

Another piece of advice I received from a very senior engineer who had run his own fairly successful company was to always be aware of companies where decisions and promotions are made based on politics instead of data and merit. In such organizations, the people who stay and get promoted are the ones who are the most politically savvy, not necessarily the ones who are correct/capable. Sometimes there's overlap. Often, there isn't. Ultimately, I think we have to decide if we're more interested in becoming good at politics or good at doing our real jobs. Politics are supposed to be a means to an end, not the final product that a customer receives. As such, it's better to have people who are good at product, and it's just a nice bonus if they're also good at politics because politics are inevitable, especially as an organization grows. But the focus should never be on politics primarily.

Note: I've never worked for Microsoft, I've only cited their examples here because their history is so well-documented through various books and media, especially due to their monopoly trial. I just chose the example that I thought would best get my point across. I have worked in other large corporations where my job was to create organization-wide disruptive change. We actually won an international award for it. But nobody would relate to that stuff. ;) My thoughts are mostly taken from those experiences, Microsoft is just the vehicle to convey those thoughts.

</comment></comment></comment></comment><comment><USER14> Wow. 111,800 people is a huge number. That's a whole city looking for work, and over $1 billion saved (in the long run) for each $10000 of employee salary.

> The question I have to ask is why isn't Rometty one of the 110k. IBM has > seen 11 straight quarters of declining revenue and it's hemorrhaging > customers, according to both my source and Cringely.

Yep.

So what should IBM do here? For one, IBM needs a complete makeover. Why should I pick SoftLayer over AWS, Google, Microsoft, etc? They need a new image, something that will draw customers and something other than being the canonical story of corporate bloat and mismanagement.

<comment><USER15> Keep in mind that a developer being paid $100K gross actually costs the company way, way more. Health insurance and other benefits, cost of office space, electricity, transportation, and so on. It varies greatly between companies and countries, but it's not unusual to have "man year" cost 2x more than what is actually being paid as direct salary to the employee.

<comment><USER16> Office space+additional overhead could be reduced by remote workers. That would involve transforming management culture though, which is long overdue for it. And I'm not talking about some new crappy book about moving cheese or others of its ilk.

</comment></comment></comment><comment><USER17> A rule of thumb I've heard from various companies is that employees should be worth at least three times their salary to the company. That is your turnover should be more than sum(3*salary_i) for i employees.

A nice Fermi problem: IBM's revenue (2014) is around $90bn, from this rule of thumb this could support around 300,000 developers at a mean salary of $100k. From the model above, IBM's 400k employes should be producing a turnover of $120bn. The shortfall of $30bn equates rather nicely to the 100k employees they're laying off.

<comment><USER18> I highly doubt all IBM's employees are developers, in fact I highly doubt it's even over 30%.

<comment><USER17> Of course not, this is a gross oversimplification. I was just surprised at how well the numbers worked. I would argue though, that it _is_ a good rule of thumb, i.e. their revenue is not sustainable given the number of employees that they have.

IBM like any company will employ support staff, admin/HR, cleaners, managers and so on. Plenty of those people earn over $100k and plenty of people earn a lot less. Ultimately we don't know the mean salary of the people they're (maybe) laying off.

But hey, it's a Fermi problem, order of magnitude. I would guess it's not too far off.

</comment></comment></comment><comment><USER19> this may be true. I use a lot of IBM server/development techs & pretty much all of them are missing the magic they claim, boiling down to "confusing forced development paradigm that bleeds millions from your company in infrastructure and niche developer costs" (Web Experience Factory, Coremetrics, Portal etc.). None of the out-of-the-box-everything-integrates- seamlessly aspect is there, despite that being the whole basis for these monstrous sales prices. In short, many of their products have laughably little value and even non-technical corporate management is realizing this.

(You can tell a lot of the software is sold with IBM thinking "We'll tell them its their fault for a couple of years unless they hire a few of our consultants, then if they realize the product actually sucks hopefully we will have an upgrade ready by then.")

However, whenever I see articles from that Cringely dude (the one referenced repeatedly in this summary) I have to think "eh, maybe.... I'll believe it when I see it". He is pretty much an anti-IBM conspiracy theorist from what I can tell, though of course they are a strange enough organization that a lot of what he says turns out to be true.

[http://en.wikipedia.org/wiki/Robert_X._Cringely](http://en.wikipedia.org/wiki/Robert_X._Cringely)

[http://www.cringely.com/](http://www.cringely.com/)

<comment><USER20> I've worked with IBM ClearQuest and IBM FileNet and I concurr, those products are retarded bloats of off-market junk. The free golf courses in Orlando are nice, though, so I've renewed the purchase for two more years.

<comment><USER21> Yup. Message Broker wasn't all that bad, but the all-expenses paid trip to Vegas for a week was better.

<comment><USER19> hah i am jealous of you both... i don't get the kickbacks, i just get one more team of consultants that i have to work with on every project who relish the tiny bit of authority they have now been granted (Message Broker team thinks they're hot shit cuz they are a bottleneck on every project & we can't revise our service interfaces without their permission).

Funny thing is, all the consultants who specialize in these products are awful pseudo-programmers & I end up bypassing their techs (WMB, BPM, etc.) with pure Java solutions whenever possible since the overhead of speaking to them creates like a 10x productivity loss. If the nosy busybodies (awful below average pseudo-programmers within our own group) didn't tattle to mgmt to help them reign us back in, the whole company would be none-the-wiser & we'd get work done at breakneck speed... ALL MOST OF US NEED IS A GODDAMN SPRING OR EE CONTAINER + THE JVM, hah.

<comment><USER21> I know the feeling, but that's how IBM makes their money. We have some great negotiators in our company and as a developer, I was given the Vegas trip. I'm an influential developer, but still just a lowly developer none the less. It didn't work for them though.

</comment></comment></comment></comment></comment><comment><USER22> Anyone have stories about the logistics of the previous 60K layoffs? How does a company and the survivors deal with that many departures at once - were they distributed evenly across divisions or were entire divisions eliminated?

<comment><USER23> The cuts were made by Louis V. Gerstner, Jr., a fascinating executive who made AmEx and IBM major players in the 80s-00s.

Most of the layoffs happened in the summer of 1993, but in all, Gerstner reduced IBMs workforce by about 100k in a couple years.

The 1993 job cuts saved IBM about $4b/yr and IBM's market cap rose from $29b in 1993 to $168b in 2002 when Gerstner retired.

If you're interested in more, I recommend the book, 'Who Says Elephants Can't Dance' \- a memoir by Gerstner.

<comment><USER24> > IBM's market cap rose from $29b in 1993 to $168b in 2002 when Gerstner > retired.

When you optimize for market cap you may end losing sight of long-term relevance.

<comment><USER25> Doesn't that assume the investors are by and large fools?

<comment><USER26> Not necessarily - it assumes they're more interested in short term profits than long term growth.

<comment><USER27> How is growth like that over 9 years "short term"?

<comment><USER9> When it's followed by a decade of decline?

</comment></comment></comment></comment></comment></comment></comment><comment><USER28> The past 5 to 10 years at IBM have shown their aggressive strategy to buy software companies but fail to integrate them into their many different IBM suites properly. Institutional knowledge and strong business relations previously held with purchased companies dies out quickly and ultimately results in low profit.

<comment><USER29> Every IT behemoth that grows by acquisition is an idea graveyard. Just look at CA.

<comment><USER30> Or Cisco. Wait, Cisco is incredibly successful thanks to acquisitions.

</comment></comment></comment><comment><USER31> Jeez. That's more than a Google (55,030 in 2014Q3 earnings) plus six Facebooks (8,348 in 2014Q3 earnings). And I have no idea what they may have been doing.

<comment><USER32> Soaking up paycheques and pretending to be busy.

</comment></comment><comment><USER33> What is the ratio of cuts in India vs North America/Europe? IBM for a while has been laying off non-Indians in favor of hiring Indians. Has this contributed to the nosedive?

<comment><USER34> IBM's nosedive has nothing to do with Indians.

IBM has three problems that are coming home to roost.

1) They abandoned a large portion of their technology business, and became a consulting & services business. There is very little special about them now, they are almost a commodity business with a famous name.

2) They invested a very large sum of their earnings, not into innovation, R&D, science - but into financial deception and gimmickry. Basically they've attempted to deceive investors by projecting earnings per share growth through share buybacks, while the underlying business was rotting.

3) The consulting & services business they've chosen to focus on, rises and falls with the global economy. The global economy hasn't been great the last six years, and most of the governments of the world are struggling when it comes to spending and budgets. With global economic weakness, even big corporations have been restrained on spending for IT the last six years, there have only been a few bright spots.

<comment><USER35> Let's hope they still have a strong enough core of smart people to bounce back. IBM is old and have seen this industry nascent and changing many times, they're still massive, thus having the resources to adapt (IMHO). Microsoft managed to bounce too. Kodak didn't.

I'm still very curious about the partitioning of these claimed layoffs.

ps: 4 times 'still' in one comment.

</comment></comment></comment><comment><USER36> "...pie-in-the-sky ideas like commercializing Watson..."

I'm not knowledgeable about the product, but it seems to me commercializing Watson is the smartest thing you could do. I feel like Watson could allow IBM to become dominant in almost every field and produce trillions in value for their customers. Am I off base? Has Watson development stalled over the past few years?

<comment><USER37> So, I used to work on Watson. The way I see it, it's not that development has stalled but that it's nowhere near as impressive as you've been lead to believe. The natural language processing is its biggest weakness. I worked with Watson in a medical context and the NLP was absolutely atrocious. But to be fair, parsing English which is usually informally structured is really difficult! Compound that with the fact that IBM was asking developers with limited domain knowledge to write the parsing rules and well... it's about what you expect.

I should also point out that IBM talks up Watson's abilities way too much -- to the point that customers have thought that Watson could essentially tell the future.

<comment><USER38> > The natural language processing is its biggest weakness.

There were several documentaries about Watson after it won Jeopardy, and this weakness was quite evident to those paying attention.

Watson never really _understood_ Alex's Jeopardy "answers" at all. This was quite obvious in "final Jeopardy". Watson's response clearly showed its limitations.

Here's how it went down:[1]

       The category was US Cities, and the answer
       was: "Its largest airport was named for a
       World War II hero; its second largest,
       for a World War II battle."

       The two human contestants wrote
       "What is Chicago?" for its O'Hare and Midway,
       but Watson's response was a lame
       "What is Toronto???"

Basically Watson's Jeopardy responses were a very refined equivalent of the Google "I'm feeling lucky" button.

I have to believe that the situation gets a lot lot trickier in a "medical context".

Still, couldn't it be possible to harness Watson as a super-smart assistant to humans? But there's probably not enough money to be made in that.

[1] [http://asmarterplanet.com/blog/2011/02/watson-on-jeopardy- da...](http://asmarterplanet.com/blog/2011/02/watson-on-jeopardy-day-two-the- confusion-over-an-airport-clue.html)

<comment><USER39> In all fairness the Toronto answer isn't as ridiculous as it seems at first blush. If you confuse Lester B. Pearson with Alastair Pearson (something quite possible by NLP when you have to match "Pearson international airport" then you at least match you end up with a British World War II hero. Not being a U.S. city would involve either underfitting or ignoring category information, and trying to stretch buttonville or billy bishop into a WWII battle takes work, but it seems like precisely the kind of error that would be caused by actual NLP rather than optimizing page rank variants.

I also think IBM has the right model by creating Watson as a service on 30% revenue share -> Let external developers find all the various products and business models. They'll be better at finding and optimizing new products than a services companies would be and some of them will be able to go after much smaller products. You end up with more diversification and less of IBM's capital at risk for 30% of what's likely to be a much larger pie than IBM can generate on their own.

<comment><USER38> It would be _very_ interesting to find out how Watson actually interpreted both the category and the "answer".

I don't know the actual amounts of time contestants are given, but on TV the final category is disclosed many minutes ahead of the "answer". Then a contestant has perhaps 30 seconds to formulate a "question". An eternity for a massively parallel computer like Watson. Quite different from the rest of the show, which relies on lightning reflexes when played by "champions".

Viewed from 30,000 feet (quite appropriate for an airport question, eh) I think that Watson didn't understand the category. Watson did not know what the words "US cities" meant. Those aren't words that would normally have any sort of double meaning, so if Watson understood the category, why would it have "ignored" category information? That doesn't make sense, especially for final Jeopardy.

As Dr. Venkman might say: "good guess, but wrong!" In Watson's defense, it did not have very high confidence in its answer.

We'll probably never know the real story. That's not the kind of information that IBM would want to disclose, mainly because it would probably make Watson look bad.

</comment></comment></comment></comment></comment><comment><USER40> Regardless of their corporate mismanagement and lack of a sound business plan, this is incredibly unfortunate. 111,800 people are going to be losing their jobs and many of them may have difficulty finding new ones. To everyone at IBM, good luck and I hope this all works out well for you!

</comment><comment><USER41> In many ways I'm a hardware guy. I enjoy building infrastructure in datacenters from bare metal. Yet I can't think of a single use I would have for these IBM mainframes, nor even what they run (DB2?).

IBM's product line just seems completely irrelevant to modern tech companies.

<comment><USER42> I think you are underestimating the scale of what a Z system can run... You might not have a use but every fortune 500 and banking institution in the world does - and they need it to work, 5 9's isn't good enough.

> IBM Hursley laboratory director Rob Lamb says: "There are 6,900 tweets, > 30,000 Facebook likes and 60,000 Google searches per second." The mainframe > CICS runs 1.1m transactions per second, which equates to 10bn per day [0]

[0] [http://www.computerweekly.com/feature/Can-the-mainframe- rema...](http://www.computerweekly.com/feature/Can-the-mainframe-remain- relevant-the-cloud-and-mobile-era)

<comment><USER43> That equivalence is bogus. If a search was as simple as a single CICS transaction, Google would just run that and be done.

Mainframes are overpriced and inefficient, but they are the only option for a F500 without the in-house talent to build any kind of distributed, fault tolerant system.

<comment><USER44> If as you say _mainframes are overpriced and inefficient_ , that means there is a great opportunity for some organization to move with a much cheaper, more efficient option.

But people have been predicting the death of _big iron_ for several decades now, yet they live on.

I don't doubt mainframes might be overpriced, but I also suspect the reason they persist is they have yet to come up with a cheaper option, offering the same performance figures.

<comment><USER45> Long one of the main reasons for IBM mainframes was the _bet your business_ software that wouldn't run anywhere else and that would be too expensive to rewrite to run somewhere else.

Also, there is a remark that in major parts of the financial industry, running an IBM mainframe is nearly a necessary condition for compliance.

<comment><USER44> > would be too expensive to rewrite to run somewhere else.

I'm don't doubt that is a major factor. Add to that the major risk that what every new system you move to might actually fail to work or end up costing more.

</comment></comment></comment></comment></comment></comment><comment><USER46> I left IBM in 2012 because I saw that the division I was working for was never going to be competitive. It is surprising that it took almost 3 years for what was obvious at the bottom to reach the top and be implemented.

</comment><comment><USER47> Could IBM turn itself into a generic tech consultancy? Accenture & co. seem to be doing fine.

<comment><USER48> > Could IBM turn itself into a generic tech consultancy?

Not that anyone necessarily cares, per se, but if they do this, what happens to the companies invested in platforms like System z that only IBM can really support? Does "generic tech consultancy" include developing and supporting proprietary hardware and software?

<comment><USER49> Enter the multitude of companies whose entire business model is selling products that emulate IBM platforms on top of commodity UNIX hardware and RDBMS.

<comment><USER48> > Enter the multitude of companies whose entire business model is selling > products that emulate IBM platforms on top of commodity UNIX hardware and > RDBMS.

As I understand it, the big selling point of Big Iron has always been the idea that it's more stable at the hardware level than other kinds of computer. Is that actually true? If it is, can a company get similar uptime with non-Big Iron hardware? Because it seems like that would be a hard prerequisite for replacing those systems.

<comment><USER49> If that were still true I don't think virtualization would have caught on to the extent that it has. I work in a pretty conservative business that used to run everything on IBM and then HP mainframes but has since migrated to commodity x86 hardware running VMWare. Downtimes do happen but modern monitoring and deployment processes can address them quickly and cheaply.

</comment></comment></comment></comment></comment><comment><USER50> Yet another manifestation of the tech worker shortage we keep hearing about...

<comment><USER32> There IS a tech worker shortage ... of those willing to work for third world salaries.

</comment></comment><comment><USER51> Guess I won't apply for an internship there for the summer....

<comment><USER52> FWIW, if you're looking all over the place for an internship, maybe don't rule them out[1]. Often companies lay off employees who aren't useful to them, but are still looking for employees who will be useful. In particular, someone who's good at programming[2] and junior[3] might be the kind of person they still want to hire.

[1] Then again, the fact you're commenting on HN probably means you're a strong candidate who'll find an internship with ease. So follow your dreams. ;)

[2] Again, just assuming this based on the fact you're an HN reader. You might be horrified to see what proportion of people in a BigCorp company can't do even basic reasoning.

[3] Pay an intern pennies to do pounds worth of work! Yay!

<comment><USER53> "[3] Pay an intern pennies to do pounds worth of work! Yay!"

And that's why they are (or could be) losing customers... charging a premium for intern work.

I know what my skill was worth straight out of school... vs after putting years of practice in...

<comment><USER52> I don't know to what extent this is a problem at IBM, but I've seen a few places where it is a huge problem. And I agree with you. The "yay!" was sarcastic.

</comment></comment></comment></comment><comment><USER54> For some insight/rumors/thoughts from IBMers you can check out this board:

[http://www.endicottalliance.org/jobcutsreports.php](http://www.endicottalliance.org/jobcutsreports.php)

At the moment it seems to be down, probably from being overrun with traffic now that this story is trending a bit.

</comment><comment><USER55> What does the CEO's comp package look like this year?

<comment><USER23> In 2013 it was $14m.

Source: [http://www.forbes.com/profile/virginia- rometty-1/](http://www.forbes.com/profile/virginia-rometty-1/)

</comment></comment><comment><USER56> ASSUMING this is true...

The information industry in in an exponential power curve right now. Participants are either in the stage of disruption or already evolving democratization. The classic monolithic mega-company just isn't engineered to twist and turn like that. I'm amazed they've lasted this long.

One way to survive is to admit failure and do an emergency fracture. Break off all divisions with any profit potential into their own manageable chunks which don't suffer from upper management overload. Wow that would be an expensive proposition. And IBM stock would burn.

<comment><USER34> IBM made their bed in switching from being a technology company to a consulting & services company. At best they will grow and shrink with the global economy now.

When the global economy hits a wall, as a consulting & services company you can't innovate your way out of it, you depend on eg growth in government spending and big corp spending, both of which are shaky around the world right now.

</comment></comment><comment><USER57> "It's becoming apparent she is not up for the job and can't pull the company out of its nose dive."

I wonder who would be the right person.

<comment><USER43> Marissa Mayer seems to be the goto for a struggling giant.

<comment><USER57> Only a specific kind.

</comment></comment></comment><comment><USER58> It could be related to Lenovo buying IBM's x86 server business [http://news.lenovo.com/article_display.cfm?article_id=1755](http://news.lenovo.com/article_display.cfm?article_id=1755)

<comment><USER59> Does that business employ that many people?

<comment><USER58> I'm not sure, the two pieces of news are just quite close together.

</comment></comment></comment><comment><USER60> I think this is where IBM is trying to go - [http://www-03.ibm.com/press/us/en/pressrelease/43523.wss](http://www-03.ibm.com/press/us/en/pressrelease/43523.wss)

<comment><USER61> Mostly unrelated: I've always wondered how anyone in the tech industry would go to IBM as a business consultant, when they can't even figure out how to have a website that doesn't require things like "www-03.ibm.com" to be the hostname.

And it's not even like they're just maintaining legacy URI's for search engine purposes, either: Go to ibm.com and click on "Services" > "Cloud Services". For me I got sent to [http://www-935.ibm.com](http://www-935.ibm.com). Do they know how load balancers work? Do they just not want a global namespace in the HTTP paths, and everything has to be namespaced by the hundreds of different servers it runs on?

</comment></comment><comment> brown9-2 _Cutting storage is also foolish, as we are in the era of Big Data and Data Lakes and storage is vital to these concepts._

Whether or not the layoff rumor is true, this doesn't feel like the most insightful of articles.

</comment><comment><USER62> I'm really interested to see if they follow suit with Microsoft and close one of their top research labs.

</comment><comment><USER63> A legacy of bad management. Whilst IBM might have a reputation of top research in the past, they've been cutting R&D in a very short sighted manner for many years now. That their revenue is declining and they need to cut staffing (again) is just them reaping what they sowed.

<comment><USER64> They've still done good research lately. This is just the nature of business I think. Eventually others catch up to where you are, and it is difficult to constantly remain competitive. A further problem in IBM's case, which maybe isn't as pronounced in other industries, is how quickly the computing landscape is changing.

<comment><USER63> Yeah I wasn't trying to insinuate that they don't still have a great research department. But you can only see so many cuts happening over the years without thinking that it'll impact their bottom line eventually.

Whilst I'm sure these ~100,000 are from services and sales - I'm equally sure that if they had something unique to sell in the first place, they'd be doing a heck of a lot better.

</comment></comment></comment><comment><USER65> Impose Tax On Corporate Revenues, Not Profits And See The Result;

</comment><comment><USER66> Now is a good time to send a resume to IBM...

</comment><comment><USER32> Unica.

<comment><USER54> What about Unica?

</comment></comment><comment><USER67> "Nobody ever got fired for choosing IBM"[1] ...except as an employer!

I'll get my coat...

[1] [http://www.quora.com/What-does-the-phrase-Nobody-ever-got- fi...](http://www.quora.com/What-does-the-phrase-Nobody-ever-got-fired-for- choosing-IBM-mean)

</comment><comment><USER68> This would certainly explain all the publicity over Watson. Perhaps IBM is looking for someone to buy them, and are trying to put as much makeup as needed to seem valuable?

Anyone who read IBM & The Holocaust[1] is probably celebrating right now.

1\. [https://en.m.wikipedia.org/wiki/IBM_and_the_Holocaust](https://en.m.wikipedia.org/wiki/IBM_and_the_Holocaust)</comment>


Plan to Send Probes to the Nearest Star - <AUTHOR> http://www.scientificamerican.com/article/100-million-plan-will-send-probes-to-the-nearest-star1/ <comment><USER2> There seems to be quite a bit of handwaving there. So a "gram-scale" space probe is supposed to contain (1) enough shielding to survive 20 years of travel at 20% of the speed of light (2) sensors good enough to capture useful data during the fraction of a second the probe will be in a decent range of the target and (3) communication equipment to transmit the results back across 4 light years?

<comment><USER3> Keep in mind there will be thousands of them. even if most get destroyed at least a few would make it.

Perhaps they could travel single file and block instelar debris for each other. And pool their data to effectively get a longer exposure.

<comment><USER4> Additionally smaller craft present a smaller target. You could tip them with a few inches of depleted uranium, which would make a reasonable ablative shield. Maybe. Either way it's an engineering problem, rather than a physical impossibility as others here are saying.

<comment><USER5> How could you stay within _gram-scale_ with a few inches of uranium shielding?

<comment><USER4> 999g! You'd also stack it with voids, works better to slow projectiles.

</comment></comment></comment></comment></comment><comment><USER6> A several-gram spacecraft travelling at relativistic speeds would pack quite a punch. Definitely the most dangerous piece of space junk ever created. It's interesting to imagine making our first contact with intelligent extra- terrestrials by causing a small Tunguska-like event.

<comment><USER7> _The spacecraft themselves would be essentially invisible: A gram-size interstellar probe striking the Earth's upper atmosphere at 20 percent the speed of light would release roughly a kiloton of energy, indistinguishable from airbursts produced by meter-scale space rocks that regularly pepper our planet at a rate of about once per year._

So they also want to fund an array that would start looking for a robot impact from other civilizations and recognize it as such.

</comment></comment><comment><USER8> Doesn't the interstellar medium effectively turn into alpha radiation at significant percentages of the speed of light?

[http://www.antipope.org/charlie/blog-static/2016/08/san- trom...](http://www.antipope.org/charlie/blog-static/2016/08/san-trombone- exoplanet-reality.html)

<comment><USER5> No, particles don't change their nature depending on their speed. Furthermore, you realize that speed is always _relative_ to something (especially in open space, when there's no conventional reference system as it happens in day-to- day talking on Earth)? So, would you say that a particle can be a neutrino w.r.t. a galaxy and an alpha particle w.r.t. another remote galaxy?

Or that it can be an electron w.r.t. a star and a beta particle w.r.t. another? ;-)

> we have a technical term for an ionized helium nucleus travelling at roughly > 2% of the speed of light—6000km/sec—we call it an alpha particle.

Technically, an helium nucleus is an alpha particle, independent of its speed.

Edit: an helium nucleus with _two_ neutrons is an alpha particle. An helium nucleus can exist with just one neutron.

<comment><USER8> I thought that was a pretty choice line. Relax, I think we both know what Charlie actually means.

</comment></comment></comment><comment><USER9> The sun? Seems a little expensive.

<comment><USER10> $100M for a space mission seems inexpensive, let alone for our first interstellar one. Sending a few people to low Earth orbit costs $70M/person on Soyuz.

<comment><USER11> $100M is just the amount promised by the billionaire philanthropist. The mission itself would cost several orders of magnitude more.

</comment></comment></comment><comment><USER12> I would love it if this was anything but science fiction but it's not. I have friends who liken traveling to the stars to the journeys of people like Columbus, but people just have no idea of the mind boggling, mind bending, if- you-think-you-grasp-then-you-really-don't distances involved in travelling even to the edge of our own solar system let alone to the nearest star.

It might happen but will never succeed.

Complete no.

<comment> guard-of-terra On Earth, the distances are similarly huge but still manageable.

For example, from me to Latin America 7000 times of what I walk every day from and to work. So in my daily walks that's 20 years worth of walking! Or 40 years for both-ways trip! And yet I've been there.

<comment><USER13> Space is big. Really big. You just won't believe how vastly, hugely, mind- bogglingly big it is. I mean, you may think it's a long way down the road to the chemist, but that's just peanuts to space. [Douglas Adams]

</comment></comment></comment><comment><USER14> Except that $100 million isn't how much it would cost, its how much that has been promised. To actually send a probe would take several orders of magnitude more money; the amount being quite uncertain because the technologies are not yet developed.

<comment><USER7> _At an estimated present-day price of approximately $10 per watt of laser power, building and operating Breakthrough Starshot's 100-gigawatt array today could cost as much as $1 trillion._

They're hoping the cost would come down if the tech to build it becomes a cheap-to-produce commodity, like Tesla batteries.

</comment></comment><comment><USER15> Call me a cynic but... When a philantropist invest so much money in a project. Does he make some return on investment (money, intellectual property, etc.) or is is absolutely real philantropy ?

<comment><USER16> Directly and financially, certainly no. But it's (usually) good press, (most would say) a good goal, and if it works out because of this $ the philanthropist is famous for helping fund it.

</comment></comment><comment><USER17> Dark Forest anyone?

<comment><USER18> Yeah, especially with the tri-solar system they're aiming at. At least our probes wouldn't be as menacing as the Droplet though!

</comment></comment><comment><USER19> Even if the feasibility of these types of missions is low/improbable, its nice to read about them. They stir the imagination, and create fodder for space travel dreams. and, that's not so bad. It's that, or our children will be interested in becoming only sports figures, actors, engineers for social media companies only interested in more clicks/engagements of advertisements (and not addressing real worldly problems), or worse. ;-)

</comment><comment><USER20> So would Yuri Milner get to own the couple of patents that would come out of this project?

</comment><comment><USER21> It's very interesting and odd that a few months ago such an elite group came together to announce this trip and then now a new paper has announced finding of a habitable planet around the sister star system? I sound like a conspiracy nutjob but these seem like highly coincidental announcements..</comment>


Facebook Just Out-iMessaged iMessage — And SMS Is More Screwed Than Ever - <AUTHOR> http://techcrunch.com/2011/08/09/suck-it-sms/

<comment><USER2> The article mentions all sorts of texting apps, but fails to mention Google Voice. My single favorite Google App and the sole reason I don't pay texting fees anymore.

<comment><USER3> I think that's because GV merely provides free texting without integrating other IM services.

</comment></comment><comment><USER4> I've been aggregating all my messaging to facebook for awhile, my emails are forwarded to my @facebook address, and I used facebook for communication whenever possible. Maybe Facebook can finally replace the outdated tech that is e-mail and SMS? I hope so.

<comment><USER3> I call astroturf.

<comment><USER5> 100%</comment></comment></comment>


The Facebook of China - <AUTHOR> http://www.fastcompany.com/node/1715041/print

<comment><USER2> formatted version of the article with photos:

[http://www.fastcompany.com/magazine/152/the-socialist- networ...](http://www.fastcompany.com/magazine/152/the-socialist- networks.html)</comment>


LWN - How Google uses Linux - <AUTHOR> http://lwn.net/Articles/357658/ <comment><USER2> Previous submission:

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

</comment><comment><USER3> It's a pity google keeps so much of the kernel secret sauce to itself, it would be nice if they gave back at least as much as they took from the kernel.

<comment><USER4> That's impossible, we don't change enough of it to give a similar amount back. We could give back more (and we're trying to get there), but as you read in the article much of what we do is back porting.

<comment><USER3> There might be plenty of other people interested in that back ported stuff. Why make the decision for them ?

By opening it up categorically you are bound to make a bunch of people very happy, and you might even 'inspire' the kernel maintainers to do the 'right thing'.

</comment></comment></comment><comment><AUTHOR> First of all, quite surprised Google is using perforce (woah!), but as the comments suggest, people internally are using a git-p4 bridge.

Secondly the hooks to let them tie I/O requests back to specific applications sounds funky, is there something in the wild that does this today?

<comment><USER5> I'm not. There are few source control systems capable of supporting development at google's scale, Perforce is one of them. It may be unhip (compared to modern DVCS systems), it may be a bit clunky (arguably it's less clunky than git), but it is definitely capable.

<comment><AUTHOR> The impression I was left with was that their p4 stuff was for kernel source only (i.e. for the 30 or so developers that are using it), so I'm not sure if I see the big deal in using perforce in that scenario.

<comment><USER6> Their use is more widespread than that. They apparently have 3000 users and 100Gb of data on one primary server [1]

Although they have a source license so lord knows what they've done to the system to scale to their levels.

[1] [http://www.versioncontrolblog.com/2006/12/03/perforce-as- the...](http://www.versioncontrolblog.com/2006/12/03/perforce-as-the-version- control-system-at-google/)

</comment></comment></comment></comment><comment><USER7> They can save on testing if they will post their patches to mainstream branch.</comment>


Tenacious C - a realtime visual memory explorer oriented C IDE - <AUTHOR> http://tenaciousc.com/

<comment><USER2> It would be helpful if they specified what platform it's for. It appears to be for Windows, but is it Windows-only?

<comment><USER3> That was my first thought.

It looks very interesting though. If it's for windows only I won't hesitate to use a VM.

</comment></comment><comment><USER4> What other tools present this information visually?</comment>


Ask HN: Are you loyal to any brand? - <AUTHOR> Lately, I observed that consumers are no longer loyal to one single brand. They are constantly switching between different brands in same category.
An example that really stood out to me was: People shopping at Adidas stores wearing Nikes and the other way around.
Curious how has your experience changed with brands and are you still loyal to one single brand in a specific category? <comment><USER2> > Lately, I observed that consumers are no longer loyal to one single brand.

Funny enough, I was thinking about this today as well.

In my opinion, there are many different factors at work here:

\- Consumers in (most) modern markets have an abundance of choice, freeing them to choose what most fits their needs and not what a corporation dictates that segment of their life should be.

\- Capitalism sometimes bites back, speaking specifically on this one about banks. Many people I've spoken with (obviously take this with a grain of salt) spoke about how pre-'09 many, many people were pretty loyal to their bank, even if it was one of the mega-banks. Now that customers see that companies are no longer loyal to them, why be loyal in return?

\- The Internet has made consumer research incredibly efficient. No longer do you have to drive to the Nike store to see something, go drive to the Adidas store to check out its competition, and then drive back to buy or just stick to one store. Now anyone can go on Amazon (or whatever site), read reviews, and pick whatever fits their needs/style.

Basically I have quite a bit of unorganized, and probably uninformed, thoughts about this, and would love to hear others as well.

</comment><comment><USER3> For the nike/adidas comment: I don't have a lot, but I have a few things from each. I didn't buy any of them specifically because they were that brand, I bought them because they were the right size/style/colour/etc at the time.

I am however more picky about some categories, and some brands. I'll never buy a Samsung anything. I've "inherited" a samsung a/c, and a samsung TV. They didn't quite catch fire like the last bunch of phones, but they're sufficiently terrible and combined with their corporate MO of "copy $PopularBrand, then cut corners" on basically everything they make, and I will never buy anything from that company.

</comment><comment><USER4> Firefox, Lenovo, Vodafone, Coca-cola. I prefer tailored clothes that fits me comfortably. Shoes built by local shoemaker, again fits nicely and comfortably.

</comment><comment><USER5> I'm a big fan of Converse. I've never ever thought that i would walk with a Nike or Adidas. I don't know exactly why.</comment>


What can be done with a Wii remote - <AUTHOR> http://www.ted.com/index.php/talks/johnny_lee_demos_wii_remote_hacks.html

<comment><USER2> This guy is amazing. Really think he'll be doing tons of great things in his life.

</comment><comment><USER3> I love this guy. The last demo is surprising every time I see it.

My personal fave Wii hack: A friend of mine at MIT integrated a Wii controller into his electric guitar rig to mimic some of the Rock Band guitar moves from the game:

[http://www.youtube.com/watch?v=xmuggHx_H5Y&eurl=http://w...](http://www.youtube.com/watch?v=xmuggHx_H5Y&eurl=http://www.wikio.com/video/512370)</comment>


Zero Knowledge Protocols without Magic - <AUTHOR> https://www.cossacklabs.com/zero-knowledge-protocols-without-magic.html <comment><USER2> As someone who knows very little about subject, initially it appeared to me as if they were going to present some method to authenticate users without any shared knowledge, which seemed pretty close to magic to me! In fact the tl;dr is that two parties have a shared secret, but effectively they transmit proofs of possession that, statistically, achieve a high probability of being the same secret without needing to transmit it.

Calling this "zero knowledge" is sort of confusing from that perspective, but makes sense once you know what they're solving for.

<comment> Ar-Curunir A rigorous definition of a zero knowledge proof would be as follows.

Given some problem P (say proving that two graphs are isomorphic), you want to create a protocol such that the view of the verifier can be simulated _without_ access to the witness (the graph isomorphism).

By "simulated" we mean that there exists some polynomial time simulator that produces a "fake" protocol transcript that is nonetheless indistinguishable from an actual protocol execution.

The existence of such a simulator implies that whatever the verifier could have learned from an interaction with the prover, it could also have learnt by interacting with the simulator.

</comment></comment><comment><USER3> It's kind of sad that even in an article about zero-knowledge proofs doesn't understand the difference between a zero-knowledge proof, and a proof of knowledge (without the zero-knowledge part). The ladder are usually much simpler than the former, and typically the zero-knowledge part is not necessary.

<comment> Ar-Curunir In this situation, both the ZK and the PoK properties are essential; indeed I would say that for most useful applications of ZK proofs, the PoK property is necessary.

<comment><USER3> The ZK property absolutely doesn't matter. Imagine that instead of passwords the client stored a private key, and transmitted the associated public key to the server. Then when logging in the server sent a challenge and the client signed the challenge with their private key. The server then validated the signature against the public key for the user. This is absolutely not a zero- knowledge proof, but is a definite proof-of-knowledge since you've proved you know the private key.

Zero-knowledge proof (soundness, completeness, zero-knowledge) is a subset of proof-of-knowledge (soundness, completeness), so your last statement is true by definition.

<comment> Ar-Curunir Languages that have Zero knowledge proof are not necessarily a subset of languages that have a PoK, for example Graph Non-Isomorphism is a CoNP problem, and so unlikely to have short witnesses. The classical protocol for GNI is not PoK, I believe.

PoK is a stronger condition than soundness.

<comment><USER3> Because it's got a zero-knowledge proof means it's got a proof-of-knowledge. Quicksort is O(n^2) so that means it's in NP. It also means it's in P. Same with GNI being in ZKP, and also in PoK.

What's missing is the cheating verifier that can generate a transcript of a valid interaction without actually knowing the secret.

<comment> Ar-Curunir No, being zero knowledge does not imply being proof of knowledge.

</comment></comment></comment></comment></comment></comment><comment><USER4> Good description of the intuition behind zero knowledge proofs is the following: [http://pages.cs.wisc.edu/~mkowalcz/628.pdf](http://pages.cs.wisc.edu/~mkowalcz/628.pdf)

</comment><comment><USER4> Does anyone have a feel for what the performance overhead of zkp authentication would be? Presumably the main cost is having to do lots of round trips?

<comment><USER5> As Ar-Curunir mentioned, you can use a technique called non-interactive zero knowledge proofs (NIZKs). Usually in ZKPs the prover will go through a part of the proof, send it to the verifier, the verifier will then send back a challenge, and the prover will reply with the final part of the proof based on the challenge. The basic flavor of NIZK I've seen is that instead of getting a challenge from the verifier, the prover simply does hash(prover id | first part of proof) and uses the result as the challenge. The `prover id` part is there such that they don't have complete control over the input to the hash. Doing it this way allows the prover to do the entire proof on their own and then send the whole thing to the verifier who can check the proof without any further interaction, saving network costs in exchange for a single hash.

</comment></comment><comment><USER6> So basically, it's magic.</comment>


Looking for a Samurai - <AUTHOR>

I am looking for a Ruby on Rails samurai to partner with in a web app I am developing. You must be a samurai. Rock stars, gurus or even ninjas won't cut it.Though there is a potential for profit, this project is primarily for fun, and if all works well, we might work together on more ambitious projects. I have a CS background with marketing/product dev experience. If this sounds interesting, email me at refpointer at google's email service. <comment><USER2> _You must be a samurai. Rock stars, gurus or even ninjas won't cut it._

I hope this is meant to be as sarcastic as I imagine in my mind, otherwise I may start raging.

<comment><AUTHOR> Of course I am being sarcastic. I have seen these terms overused and abused a lot recently.</comment></comment>


"Stockholm's like a party with a $500 coat check" - <AUTHOR> http://www.thelocal.se/20140508/stockholms-like-a-party-with-a-500-coat-check

<comment><USER2> Rent control is the worst</comment>


The Film Star Wars Stole From - <AUTHOR> http://www.bbc.com/culture/story/20160104-the-film-star-wars-stole-from <comment><USER2> A lot of stories are the same because of how story telling works: [http://www.theatlantic.com/entertainment/archive/2016/01/int...](http://www.theatlantic.com/entertainment/archive/2016/01/into- the-woods-excerpt/421566/)

"Good artists borrow, great artists steal." -Picasso.

<comment><USER3> Almost everything makeable is a remix of something already existing.

Which is okay. Often a work has good ideas, but something is missing.

Goethe didn't invent Faust.

Many music genres didn't become popular with their original inventors.

I already had a smartphone years before the iPhone and Android came out, but it wasn't as good as them.</comment></comment>


Youthful Discretion - Why Youth Is A Stunning Entrepreneurial Advantage - <AUTHOR> http://www.infochachkie.com/youthful-discretion/

<comment><USER2> "Naïvety balanced by an experienced advisor's cynicism can be a healthy combination."

Neat and well written - agree wholeheartedly.

But a team of entirely newbies, first timers, and folks in their twenties should have an experienced advisor - or a few - to help them avoid hurdles. Up there with Passion is Experience, I say.</comment>


Astronomers explore uses for AI-generated images - <AUTHOR> http://www.nature.com/news/astronomers-explore-uses-for-ai-generated-images-1.21398 <comment><USER2> A number of statistical and machine learning techniques have "gone mainstream" in astronomical research right now, so it has made a very exciting time. There is even a good textbook out now on the subject, _Statistics, Data Mining, and Machine Learning in Astronomy: A Practical Python Guide for the Analysis of Survey Data_ by Ivezic that we used for a graduate seminar series. This mostly focuses on Bayesian inference and simple techniques like clustering algorithms, support vector machines, etc. and not super fancy "deep convolutional neural networks" like I see on HN most days :)

A funny anecdote makes me wonder actually if there have been barriers to uptake in astronomy. You would think huge datasets and low manpower would be the perfect recipe for machine learning! Well, historically cheap labor could solve this by throwing undergrads at this. I actually even categorized ~10,000 maps of interstellar clouds by eye for one project (it took about a week if you don't count the time to write the GUI). The anecdote though was that one of the other grad students in the department was telling me how he was working on applying machine learning techniques to classifying galaxy morphological types. They had somewhere around 100,000 galaxies to type from their survey. But, they first applied to the citizen science organization Galaxy Zoo, and were featured as a project. They submitted classification instructions and the data, and it was completed in... less than 24 hours. He told me afterwards that, with how easy and fast it was, why bother spending weeks writing and tuning some neural network yourself?

This made my wonder whether if Galaxy Zoo and other citizen science projects are such good resources, would it stymie the need for incorporating machine learning techniques into most projects? There are huge projects like the SKA (mentioned in the article) and LSST that will give torrents of data. Those might be too large for citizen science, and there are advantages to objective statistical methods to begin with.

<comment><USER3> Galaxy Zoo makes labeled training data which is always good.

</comment></comment><comment><USER4> Interesting article.

However, it leaves me with the question why this process should converge to a desired network. I mean, why doesn't this process generate training artifacts, that get multiplied as the interaction between discriminator and generator progresses?

<comment><USER5> maybe the complex distribution of "looks like a galaxy" images just isn't that overwhelmingly complex, relative to how cheap computation & storage is nowadays.

what surprises me is how these techniques can structure the space of compressed representations in interesting ways. look at this discussion of thought vectors: [https://www.technologyreview.com/s/541356/king-man-woman- que...](https://www.technologyreview.com/s/541356/king-man-woman-queen-the- marvelous-mathematics-of-computational-linguistics/)

</comment></comment><comment><USER6> Although I don't quite understand how this works, the results are fascinating enough to convince me to to study machine learning to achieve the same results.

As someone without formal STEM background, stepping in the path of machine learning is very daunting.

If someone could recommend me good (and free) resources to get started with machine learning or explain to me the process they took (in layman terms), I'd appreciate it.</comment>


Montreal Police Monitored iPhone of La Presse Journalist Patrick Lagacé - St-Clock http://montrealgazette.com/news/local-news/montreal-police-monitored-iphone-of-la-presse-journalist-patrick-lagace <comment> St-Clock "A tracking warrant also allowed the SPVM to activate the GPS chip in the iPhone to know exactly where Lagacé was, admitted two investigators in charge of the file."

How is this possible? You carrier can activate your GPS chip? And then the GPS sends its coordinates to your carrier?

<comment><AUTHOR> By sending binary SMSs. There are multiple classes of SMS, including binary messages through which operators can access and change data directly on your SIM. Since that's also your crypto chip, yeah ...

TLDR: [https://www.contextis.com/resources/blog/binary-sms-old- back...](https://www.contextis.com/resources/blog/binary-sms-old-backdoor- your-new-thing/)

If you have a few days: [http://www.tamps.cinvestav.mx/~vjsosa/clases/redes/Mobile%20...](http://www.tamps.cinvestav.mx/~vjsosa/clases/redes/Mobile%20Messaging%20Technologies%20and%20Services.pdf)

Edit: You might find them referenced as silent SMSs, because you never see any indication of receiving it.</comment></comment>


Hello Ruby – Almost there - <AUTHOR> http://blog.helloruby.com/post/123541664623/almost-there <comment><USER2> I'm not sure whether Ruby is a good intro to programming.

It doesn't have first-level functions, instead it has blocks (which can take parameters to serve the same use as functions but aren't). What would syntactically be a reference to a method in other languages instead invokes the method with no arguments. It doesn't have namespaced imports, instead its imports effectively behave like includes (i.e. the "dump truck" approach to imports). I could go on.

Ruby isn't widely used in practice (although its users tend to be vocal and particularly prevalent in the web startup scene). Installing it requires some amount of care and technical knowledge (don't even bother installing it with a Linux package manager -- you're almost guaranteed to end up with the "wrong version" of ruby and rubygems).

I understand that Ruby programmers tend to be very emotionally invested in their programming language and that this book is probably written for Ruby programmers looking to teach their kids programming (using their favourite programming language) but it would be nice if there were well-written books aimed at a more general audience.

I'm not sure what the "best" first programming language is. JS has its merits -- it's becoming increasingly important, can be used throughout the entire stack of a web application and all you need to try it out is a modern web browser. Python is a lot more straightforward to learn and has consistent and mostly unsurprising concepts that are generally very compatible with more mainstream languages (plus it was intentionally based on a language developed for beginners). If market use were the main concern you could probably argue for Java or C# (although I think starting with a class-based language locks you into the wrong mental model).

In any case, I don't think Ruby is the best choice, even with its quirky community lore and the general emphasis on "play" and expressing yourself in code (although this seems to have died down a bit as the community matures).

I guess it depends on whether you want to teach programming as an art form and toy, or as a general skill (like maths, biology or chemistry). Both can be fun and entertaining but maybe I'm just getting old and cranky.

<comment><USER3> Well ruby can be written in a very boring way if it's what you don't like :

         # nobody can say he doesn't understand that code , whatever language he is used to

         reducer = lambda {|res,val,array| return res+val}

          def reduce(array,reducer,initial)
            res=initial
            for i in 0...array.length
              res = reducer.call(res,array[i],array)
            end
            return res
         end

         reduce([1,2,4],reducer,0) # => 7

But there is no perfect language which is a good intro to programming. Ruby has all the building blocks needed for teaching programming.

And you're pointing namespaces but PHP has the exact same problem. Nothing prevents developpers from using namespaces in their scripts.

         #foo.rb
         module Foo
           module Bar
              def biz
                return 10
              end
           end
         end

         # main.rb
         require './foo'
         include Foo::Bar
         biz() # => 10

> don't even bother installing it with a Linux package manager -- you're > almost guaranteed to end up with the "wrong version" of ruby and rubygems

Because that's not the case for Python or PHP on linux too? I bet it is,and it has nothing to do with the language itself.

> If market use were the main concern you could probably argue for Java or C#

The course isn't for CS undergrads.

Your opinion but some points aren't fair at all.

<comment><USER4> I actually found c# much easier to learn than Ruby. (I learned it before Ruby).

The compiler helped a lot. It's also a lot more consistent. When I started Ruby, I often didn't understand why something I wrote worked. That's not a feeling I got very often from c#.

That's just my experience. But I'd suggest c# is probably a better beginner's language. Especially paired with VS and an outstanding OOB debugging experience far superior and more approachable to anything I've ever seen in Ruby.

<comment><USER5> I write Ruby for my day job (about a year and a half now) and C# for my own stuff (about ten years) and I'd go with Ruby as a pedagogical language ten times out of ten. C# is a good (not great, but good) language for building stuff you want to put in a production environment, but there's so much drag in the language that I would seriously worry about discouraging novices long before they get to the point where Ruby would bite them in the ass. C#, meanwhile, forces a novice programmer to understand types at a fairly deep level _before they actually know how to make things work_.

Ruby, on the other hand--well, SublimeLinter or equivalent provides detailed and well-explained warnings if Ruby code doesn't make sense or is potentially problematic. And while, IIRC, RubyMine offers a good interactive debugger if you're willing to pay for it, Pry freely offers an interactive REPL experience at any point in the codebase that, while less mousey, is IMO a better exploratory tool than you get with C#--you can't just drop into your app, at a specific breakpoint, and start whacking at things in the shell, it doesn't work. This is a huge demerit for exploratory programming. And I would gently suggest, and I'm not trying to rip on you in saying this, that it would be worth introspecting to determine whether Ruby's perceived inconsistencies were more on your preconceptions than on the language--because I felt the same way until I internalized it a little bit and went "whoa, that makes total sense, I was just looking at it backwards".

<comment><USER4> I think you have to understand Types when working with Ruby. Otherwise it's just syntax voodoo.

That's a big part of what helps a language like c# continuously reinforce a mental model that leads to better/easier understanding. IMO.

You can call `open` and pass it a URL in Ruby. But what does that return? What's the Type? Where do I look up documentation for it? What's available to me _right at this point in my code_?

Ruby makes copying examples a bit easier, but you have to hold _a lot_ more in your head before you could be considered "proficient".

And then there's all kinds of caveats. You want to write an O/RM in .NET? Pick up the PoEAA. You want to do the same in Ruby? Well, one of the first things I did was write DataObjects. Because there isn't a consistent database access API for you already.

From there you want to map Rows into Objects? Be prepared to play Ruby Golf. Because your first shot will be unusably slow. Not because it's wrong. But because it turns out Ruby's performance has real world implications. So you memoize anonymous classes. You cache method handles. You run a thousand different micro-benchmarks on the performance difference between re-binding a cached method handle for a setter, or just calling instance_variable_set.

I think the complete lack of type declarations actually makes developing in Ruby much more complex. Even experience programmers can end up debating wether a breaking change between "truthy" and an actual Boolean is a good or bad thing.

With as much experience as I have in Ruby, `extend` and the self class stanza are still just _weird_.

Even after developing in Ruby for years I'd still run into code that was just real difficult to understand how it worked at all.

I guess what it comes down to is I'd argue declaring all your method parameters as `Object` in c# is not going to make writing working code _easier_. It may make compiling _easier_ , but that's not really the goal.

It sounds like you're a fan of Pry. I never cared for it personally. I found it much less intuitive than clicking in the gutter, running my program, and being able to mouse over a variable to see it's value, or look in a panel to see the full program state at this point. For a learning tool, I feel like that's got to be light years better than the solutions I've seen in Ruby. I managed that in c# without any help at all.

As far as exploring, Types generally tell me all I need. In Scala and IntelliJ I just hit ^J. Or I'll jump to the source of a method I'm calling with COMMAND+B. Or the implementation of an interface with COMMAND+SHIFT+B. These are just things I got out of the daily tips popup.

Seeing a function called: `generateDownloadUrl: Photo => String` tells me more in less time and space than the equivalent Ruby method or lambda ever did. Because in Ruby you don't know the requirements until you read the source or documentation. Whereas in Scala (which I wouldn't actually recommend to a beginner, but the same is true in c#) you have to resort to documentation or reading the source far far less frequently. Which for me at least is a much lower cognitive load.

Because of checked exceptions, switch statements and FactoryFactoryFactories I probably wouldn't suggest Java. But I think that languages that self-document the Types at declaration points are much easier to grasp than languages that still have the types, still require an understanding of them to be proficient, but omit those declarations (like Ruby). In Ruby you basically have to memorize a large chunk of the standard library before you feel proficient. The same isn't really true for Scala, Java or c#.

It's easier to build a mental model (for me) in those languages. And that's the biggest barrier to understanding and feeling like you grok it (at least for me).

<comment><USER5> It's interesting that you say all that--because none of that rings true to me. Quite literally none of it. Even the idea of understanding types is foreign to me, because I only think of types as collections of messages that objects respond to and use them only as shorthand for exactly that; like, my yardocs are full of [#to_sym] as a "type" instead. Things like `extend` are trivial to me, and I can explain both their semantic behavior and their implementation in three sentences. I find Ruby fairly consistent and its libraries no more difficult than .NET--and seeing as how because of plenty of bad decisions you can't really trust IntelliSense in the first place (like, say, arrays implementing IList<T> but throwing an exception for Add()), I find myself Googling no less for the documentation in .NET. And _much, much less_ than in Scala, though I am very comfortable in that, too.

I'm curious, though. When you say "Ruby", how much of that was outside of Rails? I don't intend that as an ad-hominem, but rather in the exploration of a theory that I've had for a while. I am wondering if the approach one takes to learning the language and the ecosystem influences how much "magic" there is to Ruby. What you describe sounds familiar from friends and colleagues who learned _Rails_ , and Ruby incidental to it. I only vaguely know Rails at all, I don't use Ruby for web applications beyond a Sinatra server as a dumb API.

(And, as I said, RubyMine has a stop-the-world, click-around debugger, much like Visual Studio. I've only used it once or twice, because the REPL is comfortable to me, but it does exist.)

</comment></comment></comment></comment></comment></comment><comment><USER6> Looks great.

Recently, I was trying to wrap my head around eigenclass inheritance mechanisms and it was pretty tough. Not to mention the object model, where classes are also objects and the Object - Module - Class relationship. I wouldn't recommend Ruby as a first language to anyone — it may look easy at first, but to grasp it, you need to invest much more time in future.

<comment><USER7> Sometimes the bias you have from learning programming one way makes it more difficult to grasp concepts which are different. I recall a study[1] where they questioned whether recursion is more difficult than iteration if it is introduced first. Certainly recursion was difficult for me when I was first learning because I had done a lot of programming using iteration first. It seems surprising that it may have just been a bias of what was introduced first.

I think that eigenclasses are a good example of this. Just because of the languages I learned early on, eigenclasses were obvious to me. I had a hard time even understanding why they had a name: OO without eigenclasses was just another way of saying "broken OO" ;-) Again, it's a bias which is hard to be aware of.

[1] It may be this one: [http://dl.acm.org/citation.cfm?id=2361296](http://dl.acm.org/citation.cfm?id=2361296)

<comment><USER8> _Eigenclasse_ , had to look that up:

"A hidden class associated with each specific instance of another class." [https://en.wiktionary.org/wiki/eigenclass#English](https://en.wiktionary.org/wiki/eigenclass#English)

[https://gist.github.com/jfarmer/2625060](https://gist.github.com/jfarmer/2625060)

Yep. Makes perfect sense that if everything is an object, and class methods belong to a class, and a that class method has to be attached to an object -- you'd need an object to attach it to...

<comment><USER9> And in Ruby they are only "special" because they have been intentionally hidden from the publicly visible inheritance chain. Personally I think that's what makes it hardest for people to grasp.

E.g. if you define class methods on class Foo, all that's happening is that the class of the object defining Foo is no longer an instance of Class but of a subclass of Class. But it gets confusing because Foo.class still returns Class.

</comment></comment></comment></comment><comment><USER10> The character's name is 'Ruby' but I don't expect the book itself to be any sort of introduction to ruby-the-language!

I'm a backer — I expect the book might contain some Ruby code because it's pretty readable though I'm bothered either way. I am full expecting it'll be an engaging story to teach my kids some of the concepts of programming, which have nothing to do with any particular language.

<comment><USER10> Just to repeat and highlight this: THE BOOK ISN'T ABOUT TEACHING RUBY-THE- LANGUAGE

I've yet to even find a mention of Ruby-the-language on the site.

<comment><USER11> Right. It teaches programming concepts with Ruby. It's not about learning Ruby the language.

</comment></comment></comment><comment><USER12> What makes you think the book is ready? We've been told (KS backers) that the book isn't shipping until October 2015. There is absolutely nothing that you've linked to to indicate that it's ready.

Incidentally the book costs less at retail, then even the lowest tier of it's Kickstarter campaign.

<comment><USER13> It's always really disappointing for me when people see Kickstarting as a way of purchasing the end product. With economies of scale you should really expect prices to come down for retail. What you're getting for the money with a kickstarter campaign is the chance to help someone realise their product, which hopefully you believe in, without the creative inhibitions that come with strings-attached funding.

<comment><USER12> You must be disappointed a lot then?

I did believe in her product. What I didn't believe in was an utter lack of regard to KS backers, poor communication, misdirections, a publishing contract with Macmillan, a late delivery (while being less than truthful with KS about it).

The author bears some responsibility for changing my mind from believing in her product (what you call helping, "someone realise their product") to simply just wanting the end result of what I paid for at a higher cost than retail.

<comment><USER13> I guess my point was two-fold.

1) The end product will probably be cheaper than the kickstarter backing. (You seem to agree with this, at least in general)

2) People shouldn't see backing a product as a purchase. There's clearly risk involved in any transaction where the obligation of the seller to provide anything, let alone meet your expectation of exactly how the end product will be realised.

It's sucky that you've had such a bad time with this KS though, the real value in backing ought to be the opposite of what you've experienced!

</comment></comment></comment></comment><comment><USER14> I found Python's rule of space and tab is the most confusing thing that will happen to a kid. They open a command prompt, then instead starting writing the real code, they have to <space><space>, blahblah , <enter><space><space>... to do something that they hope to run. It's a waste of time.

<comment><USER15> ipython improves this quite a bit. If you haven't tried it:

[https://asciinema.org/a/2vvs3gg2dk93xizc3splrrfyw](https://asciinema.org/a/2vvs3gg2dk93xizc3splrrfyw)

</comment></comment><comment><USER16> It's all fun and games until the kids reach a gem dependency conflict that bundler doesn't fix......

<comment><USER17> library dependacy problems could happen with any language.

</comment></comment><comment><USER18> I don't believe the book is ready to ship yet, but I'm looking forward to when it is! I had the pleasure of working with Linda (author of this book) a few years back and she is really a wonderful person and I'm very happy for the initial success of Hello Ruby.

<comment><USER19> Ditto, had a chance to meet and work alongside Linda a few months ago and she has an incredible enthusiasm – looking forward to buying this for my younger cousins :)

</comment></comment><comment><USER20> Cool book, I hope you will get some success with it. I don't have a kid (yet) but I will maybe buy it as a gift as I live in one of the countries with publishers.

</comment><comment><USER21> Cool. Would you translate into other languages? Having kids speaking Italian I would be interested ;-)

<comment><USER22> Cool. Would you translate into other languages? Having kids learning Haskell I would be interested ;-)

<comment><USER21> I probably would. I remember once I offered to translate a kickstarter project for baby girl engineers, so why not a book for baby programmers :-). Feel free to get in touch if needed.

</comment></comment></comment><comment><USER23> That book is absolutely beautiful.

</comment><comment><USER24> Torilla tavataan!

</comment><comment><USER25> "Its" not "its'", heads up.</comment>


Clojure for the Erlang VM - <AUTHOR> http://clojerl.org/ <comment><USER2> Clojerl is really cool, and you should play with it; it's actually surprising how well the semantics transfer over to the Erlang VM.

If anyone wants something that feels a bit more vanilla-erlang-ish, one should also check out Lisp Flavoured Erlang. It is almost a direct one-to-one translation of Erlang into Lisp-land (actually made by one of Erlang's co- creators), but also provides Common-Lisp-Style macros, and a much more consistent, cleaner syntax than vanilla Erlang.

<comment><USER3> Links to your references for the lazy:

[http://docs.lfe.io/current/](http://docs.lfe.io/current/)

[https://github.com/rvirding/lfe](https://github.com/rvirding/lfe)

<comment><USER4> It doesn't look like the LFE project on github received many commits recently. Is this a sign of maturity or abandonment?

<comment><USER2> Virding is pretty active on Slack on the LFE channel (at least he was the last time I was on there a few months ago); I don't think it's abandoned.

</comment></comment></comment></comment><comment><USER5> With the ability to reach Java, JavaScript, .Net, and Erlang runtimes, plus interop with many other languages via GraalVM, Clojure has incredible reach across runtimes, perhaps more than any other modern programming language, certainly among Lisps. That said, its pretty gnarly to try to navigate all of the implementation differences among platforms. I wonder if there is a subset of Clojure that is 'safe' to run on any of its supported environments.

This list is pretty long: [https://clojerl.github.io/differences-with- clojure/](https://clojerl.github.io/differences-with-clojure/)

For now, the JVM is the only way to get the full Clojure experience.

<comment><USER6> The Clojure community believes strongly in the idea that it is a hosted language, and therefore prioritizes maintaining the semantics of its host (whether that be the JVM, a JS engine, or some other VM) over independent, consistent semantics for Clojure itself.

That being said they've made some concessions to the fact that it would be really nice to have portable Clojure code with `.cljc` files, but those are only portable Clojure code by matter of convention (the only technical thing `.cljc` files accomplish is allowing you to use reader conditionals).

Personally, I wish Clojure went further. Even with the commitment to being a hosted language, it still is clunkier at interop than Scala or Kotlin, two languages which nonetheless do have independent semantics as specified in their respective language specifications. It kind of seems you end up with the worst of both worlds (worse interop and no consistent semantics), although to be fair Clojure also commits far more heavily to the FP paradigm than Kotlin or even Scala, which makes it intrinsically more difficult to have seamless interop with Java (yes yes yes its interop with Java is already quite good, just not quite at the level of the others).

<comment><USER7> Yeah, I've developed some clj/cljs code. It's full of conditional compilation. It's even full of conditional compilation expressions in the ns header.

</comment></comment></comment><comment><USER8> There are at least 19 alternative languages for the BEAM[1]. If anyone knows of any I've missed, let me know.

[1]: [https://gist.github.com/macintux/6349828#alternative- languag...](https://gist.github.com/macintux/6349828#alternative-languages- targeting-the-erlang-vm)

<comment><USER9> There are 4 relevant VMs: .net, java, js and erlang.

If you're making a language and not targeting one of them, you're DOA.

<comment><USER10> And none of them guarantee tail call optimization leading to trade offs in the design of particular languages that may or may not be acceptable.

<comment><USER11> What does "guarantee" mean here? If you end a function in BEAM with another function call, it's TCO.

<comment><USER12> Tail Call Optimization is an optimization done by the compile/vm that replace (in assembly terms) a CALL by a JMP. Therefore removing a call stack.

<comment><USER11> Correct. BEAM does real TCO as far as I'm aware. LYSE has a blurb about it and seems to agree ([https://learnyousomeerlang.com/recursion](https://learnyousomeerlang.com/recursion)).

</comment></comment></comment></comment></comment></comment><comment><USER13> The site does a great job explaining what Clojure features exist in this port ... but what about Erlang features? There doesn't appear to be a first-class adoption of things like supervisors and actors like you see in Elixir, for example. Or at least the docs don't do a great job explaining it?

<comment><USER14> That was also the first thing I was looking for in the docs. I mean how it ties to the Erlang OTP. It's the reason why anyone would use Erlang's platform after all.

<comment><AUTHOR> I found the project via this article:

[https://medium.com/clojure-on-the- beam/agents-9de923017adf](https://medium.com/clojure-on-the- beam/agents-9de923017adf)

that discusses why Clojure 'agents' haven't been implemented in BEAM yet. I _think_ (and I'm not familiar with Erlang) that Clojure agents are very similar to Erlang actors.

<comment><USER15> This is my understanding of agents vs actors, I may be naive or wrong:

Actors are an instance of an object that has inherent logic and maintains mutable state within itself

Agents are state with logic attached to them that are immutable and return a new instance of the state (along with attached logic)

</comment></comment></comment></comment><comment><USER16> Page is a frameset around [https://clojerl.github.io](https://clojerl.github.io), which breaks the mobile experience (fixed width, content too small). Going directly to the github.io copy scales the content correctly and provides https.

</comment><comment><USER17>
        <frameset rows='100%, *' frameborder=no framespacing=0 border=0>
            <frame src="https://clojerl.github.io/" name=mainwindow frameborder=no framespacing=0 marginheight=0 marginwidth=0></frame>
        </frameset>

What...? Why...? I just can't...

<comment><USER18> Custom domains on GitHub are not free... people find ways.

<comment><USER19> I'm pretty sure they are.

</comment></comment></comment><comment><USER20> I'm curious to see a detailed list of language constructs and features that are and aren't supported.

</comment><comment><USER21> Why Clojerl when LFE maps directly to the best of what BEAM offers - supervisor trees and pattern matching?

</comment><comment><USER22> I don't see how this brings anything new to the ecosystem. Clojure is a LISP and we already have lfe ([http://lfe.io/](http://lfe.io/)) - LISP floured Erlang for quiet a while now, hence it will definitely be more mature than a new implementation altogether. Moreover I feel, seeing the the currently more effort should be made in maturing the classic clojure implementation and the tooling around it itself, rather than diverting the community into fancy new (not so useful) ports of the same syntax for other runtimes. Seriously, just go improve clojure itself. And if you want to be able to write lisp for BEAM, just use lfe.

<comment><USER23> one does not simply say one lisp dialect is better than the other.

<comment><USER22> I never said one is better than the other. All I said is, if you want lisp on BEAM, you already have lfe.

<comment><USER23> > if you want lisp on BEAM, you already have lfe

if you want lisp <insert condition>, you already have <insert lisp satisfying condition>.

your assumed condition is wrong, a person may not just want lisp on beam, they may want clojure on beam.

<comment><USER22> the only major difference I see between what you're calling 'clojure' and a lisp is that clojure compiles to JVM. That alone goes for a toss when you say you're porting it to BEAM. There is no more java in the equation. Its interop with erlang/elixir ecosystem. Which is exactly what lfe is (apart from some minute differences in syntax which may or may not be there).

<comment><USER23> > the only major difference I see between what you're calling 'clojure' and a > lisp is that clojure compiles to JVM

it's always better to ask than to make incorrect assumptions

</comment></comment></comment></comment></comment></comment><comment><USER24> Now I want to see a port to the Low Level Virtual Machine

<comment><USER25> LLVM has not been an acronym for Low Level Virtual Machine for quite a while now [1].

[1] - [http://lists.llvm.org/pipermail/llvm- dev/2011-December/04644...](http://lists.llvm.org/pipermail/llvm- dev/2011-December/046445.html)

</comment></comment><comment><USER26> Does anyone know if there are any languages with ADTs running on top of the erlang vm?

<comment><USER6> There are, in various stages of experimentation.

Haskerl, a subset of Haskell for the BEAM VM.

Alpaca, a version of ML.

A Purescript BEAM back end.

An Idris BEAM backend.

See [https://github.com/llaisdy/beam_languages/blob/master/README...](https://github.com/llaisdy/beam_languages/blob/master/README.org)</comment></comment>