A Hawaiian island got about 50 inches of rain in 24 hours - <AUTHOR> http://www.latimes.com/nation/la-na-hawaii-storm-kauai-20180428-story.html <comment><USER2> I've been to Kaua'i multiple times as I contract for a monastery there. It is a very wet place and I remember the first time I've been there and saw houses built on "high stilts", I remember thinking that was a smart solution for flooding on my own home country of Brazil where flooding happens annually.

Then, after about 14 years without ever hearing about flooding over there in Kaua'i, this news struck quite close to home. I lost contact with the monastery on that day and then someone there messaged me: "heavy rain, the network is down". I didn't imagine the rain was that heavy... Lucky for them, the monastery is on high ground and wasn't affected as much as shore properties. Can't fathom what those in Hanalei might be handling, heck, I wanted to move to Hanalei for many years.

Climate change is something that people in the US should take more seriously, I can't believe the amount of deniers in that country. It is very depressing to watch from afar as people deny science as if it was merely opinions. Kaua'i is one of the most amazing places I've ever been, somewhere I consider a home away from home. Can't believe that government will not take action to course correct their recent snafus related to the Paris accord. They recklessness will make beautiful places such as Kaua'i suffer.

noho palekana, my friends.

<comment><USER3> In Friesland, The Netherlands, farmers used to built a "terp" to keep their home safe from floodings. The first terps were built around 500 BC.

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

</comment></comment><comment><USER4> 50" = 127cm

<comment><USER5> Thank you for keeping spreading civilization among the barbarians ;)

<comment><USER6> We ban accounts that post nationalistic flamebait, so please don't post like this again. Tired clichés like bickering over measurement systems aren't needed either.

I get that you intended it as a joke, but the hivemind doesn't consider that when going to war.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

</comment></comment></comment><comment><USER7> For those of us in the north, worth considering: an inch of rain is something like a foot of snow, before it gets packed down by further snow. That, for me, puts into perspective just how insane 50 inches of rain is.

</comment><comment><USER8> 10 years ago the same island had similar flooding: [http://www.hawaiinewsnow.com/story/4687248/rain-continues- to...](http://www.hawaiinewsnow.com/story/4687248/rain-continues-to-cause- flooding-on-kauai)

edit: Also 26 years ago [https://www.washingtonpost.com/archive/politics/1991/12/16/f...](https://www.washingtonpost.com/archive/politics/1991/12/16/flash- floods-kill-three-on-hawaiian-island/7d8f3ba4-31cd-49a6-8188-f8598de13752/)

<comment><USER9> Your first link is pretty light on details, but your second link from 26 years ago says that the rain was 15.33 inches in one part of the island, 10.88 in another, and 6.68 in another. Compared to that, the 50 inches in 24 hours this month are in a class of their own.

</comment></comment><comment><USER10> not sure if its warming or cooling but climate is definitely getting weirder

<comment><USER11> On the one hand, I'm tempted to agree. The whole reason we call it climate change instead of global warming is that, whole temperatures may rise at a global level, that doesn't necessarily manifest as a mean temperature increase in a plurality of locations. But it is theorized to add kinetic energy to the weather system resulting in more powerful weather phenomena.

On the other hand, we sure need to be careful in the way we observe trends. The human mind is suited to observe patterns even where they may not exist. Combine that with increasing distribution of news coverage, and the insatiable consumer appetite for bizarre news stories, and it would be surprising if weather didn't seem to be getting weirder over the years.

</comment></comment><comment><USER12> maybe the next phrase of a us president should be: "war on climate change"...

<comment><USER13> One might say, there are already several PR departments and politicians engaged in that.

</comment></comment><comment><USER14> Wow, what the hell is going on in the comments? A few climate change deniers and someone blaming Hawaiians for living on the island, jeez.

<comment><USER15> Sometimes I feel like there's a bot-army monitoring all channels for new articles invoking the words "climate" or "global warming" and forwarding those pages to a waiting battalion of troll-soldiers.

<comment><USER16> Is it so unbelievable that people could just disagree with you that you have to assume they're espousing a fake or paid for position?

I consider myself a conservationist so I think outrageous and easily falsifiable claims like "this was caused by climate change and we can expect more of this" destroy the credibility of the people making the claims and the dangers of climate change in general.

The most famous was the 2000 article that claimed snowfall was a thing of the past which was finally deleted after years of mocking:

[https://wattsupwiththat.com/2015/11/12/one-of-the-longest- ru...](https://wattsupwiththat.com/2015/11/12/one-of-the-longest-running- climate-prediction-blunders-has-disappeared-from-the-internet/)

There are so many more examples including Al Gore's An Inconvenient Truth being released shortly after Katrina and being advertised with a hurricane coming from the smokestack of a factory saying we can expect hurricanes like that will be much more common going forward. Instead we had hardly any hurricanes make landfall for over a decade.

[https://m.imdb.com/title/tt0497116/?ref_=fn_al_tt_0](https://m.imdb.com/title/tt0497116/?ref_=fn_al_tt_0)

<comment><USER17> _easily falsifiable claims like "this was caused by climate change and we can expect more of this"_

If it was easily falsifiable we wouldn't be having this discussion. Not much on this board concerning astrology, for example.

 _Instead we had hardly any hurricanes make landfall for over a decade._

Since you're running at 300bps you have apparently missed some news.

The fact of the matter is that by the time Al Gore put out his movie (disclosure: I never watched it) even skeptical scientists like myself were taking note. It's not that there was proof, but something happens with scientific measurements when you start sniffing the truth: As you look closer, with better technology and more detailed measurements, the results tend to go in one direction. Not always, and it's certainly not proof, but it's enough to make our spidey senses tingle.

The danger in this game is that the system is chaotic (indeed, chaos theory was invented around weather prediction). So there is a point where even a small, incremental change will lead to wildly non-proportional changes. And we still have no idea where that point is. Hell, some politicians are trying to stop people from even talking about it.

</comment></comment></comment></comment><comment><USER18> We can be thankful that these kinds of event happen rarely. The thing I find interesting is the comments by the experts that these kinds of events are supposed to be an indicator of future catastrophe and they do not say that these kinds of events have occurred in the past as well.

If we were to see these kinds of events occur more and more frequently (like, every year and a couple of times a year) then we would have evidence that specific changes had occurred in the climate.

But to jump the gun and say that this is a harbinger of massive change based on just this occurrence is premature at best and at worst, well, choose your own words.

<comment><USER17> _If we were to see these kinds of events occur more and more frequently (like, every year and a couple of times a year) then we would have evidence that specific changes had occurred in the climate._

The problem is that we don't really know the number is that means "frequently." In the US we had this Hawaii event; we had the Nor'easters[1] in what-10 days?; we had the strongest winter storm on record; we had the catastrophic Texas flooding (because of the Hurricane, but extra). In what-7 months or so?

[1] One of those Nor'easters brought enormous damage not because it was so strong, but because there was simultaneously an enormous storm in the ocean-2000 miles across or so, that was going to pound our coast with waves anyway, piling on.

<comment><USER18> Certainly, what number of events over what period of time to be considered frequently is a judgement call and different people and different groups of people will have different criteria to determine this.

The problem with records, as they currently exist, is that they are partial at best. It doesn't take much for extent records to be destroyed. As a civilisation, we do not value things like this.

As a consequence, when those looking into what has happened in the past, personal recollection is considered extremely unreliable and is often ignored.

Some time in the last year, I did a search for extreme weather events that occurred between 1850 and 1910 in Queensland, Australia. The kinds of records that are available are quite sparse. However, a couple of interesting things did arise.

1\. The population of that area was quite small during the time period in question. The records come from farms and cattle stations mostly.

2\. The recorded values aren't usually used today, though when I was a child and a teen, those values were regularly given during the cyclone season to warn people of the severity of the events. The values were for barometric pressure. I found the recorded values to be so much lower than what was published during the 1960's and 1970's. The inference being that these extreme weather events were spectacularly bigger and more destructive than the events recorded in recent years.

The actual destruction to human property and lives was minimal due to the low population density of those times.

There are a lot of factors that go into how "destructive" recent events are. If you look at the bigger picture, what we can see is that increasing population density and the subsequent population distribution and the subsequent greed by various factions means that there are more and more people now living in places that a century ago, no one would have lived in because they knew that to do so would be foolish as the weather events would be destructive in those areas.

When it boils down to it, people en bulk tend to be less wise and more easily manipulated. If climate scientists and those that support the anthropogenic climate change agenda want to get to be supportive, they need to be less political and less dogmatic and much more open. As I have said elsewhere, if climate scientists can answer specific question in a clear logical manner then they can have the benefit of the doubt. If they don't and they won't then one can quite logically call their utterances as rubbish. I'm still waiting fifteen years after my initial questions and still nary an answer.

Your opinion over whether or not anthropogenic causes are responsible for climate change is still, at this time, just an opinion. We do not have sufficient facts or research to determine this, nor do we have sufficient facts or research to determine what mitigation protocols will be effective in the face of climate change.

Does climate change exist? Of course it does. We have the obvious evidence before us. But, is it anthropogenic? That we cannot tell at this point. Do humans alter the environment? Yes, we have seen this over a period of a couple of millenia. Does this environmental change have gross effects on climate? We really don't know. We don't know the long term feedback cycles within the planetary system and these feedback cycles are important.

Anyone who declares that they know for certain, is just blowing smoke in your eyes. If we cannot stop the dogma and the politics about the subject, we will not even begin to understand the complexity of our planetary system. I have had arguments with scientists and all I can say is that they need a good engineering education to understand the limitations of their theories and models. Many seem to live in a fairy land that ignores reality. Maybe it is just the scientists I have come in contact with.

<comment><USER17> _Maybe it is just the scientists I have come in contact with._ Perhaps.

In general you are preaching to the choir. I don't follow the politics of climate change, however. Occasionally I'll see something about a denier paper funded by somebody with skin in the game (like an oil company), so I'm sure there are shenanigans going on. But there are a lot of people out there who have some idea of a boogey-man scientific power structure that is desperate to maintain it's supremacy and therefore will corrupt scientific research to protect it. It's the same boogey-man that gives rise to theories about evolution and the origin of the universe.

Exactly what this power structure is they don't explain. These are not people who have ever been engaged in scientific research. They aren't stupid, just aren't in the field. Kind of like non-athletes who criticize an athlete who is probably in the top 100 people on the planet at doing what they do as "sucking."

So they're easily distracted by arguments like it's "all political" and "both sides have a point," which, while true, miss a very important distinction. One side very clearly has a financial stake in the game, and their investors demand (by force of law) that they protect that stake. The other side stands to gain...I'm not really sure. Does the scientist who "proves" anthropogenic climate change make 15 million dollars a year for it? Does the lab stand to gain? Maybe some research funding to pay for more trips, but they're not flying first class.

You don't make a name for yourself by saying what everybody else is saying.

But maybe there is something I'm missing. Maybe you can explain it to me.

<comment><USER18> Most work environments are "political" in nature. Within them, certain ideas are not to be questioned. Within most science research groups there will be an expectation that you will be following the "consensus" model, whatever that may be.

For example, in string theory research groups you will be expected to follow the party line of "string theory" as the basic viewpoint, and so your work will not be supported if you dispute string theory in any way. Whereas in other research groups you will be expected to discount any string theory model as valid and if you support string theory you will be frowned upon and not funded.

So it is with many different research areas. Anthropogenic climate change is the mantra for climate research, so you had better follow party line or you don't get funded. If your research doesn't produce the results that support that view then it will quickly be removed from funding.

It really doesn't matter what the subject matter is, if what you are doing doesn't follow "funding guidelines", it will be closed down. Before that happens, to keep their jobs, most people will follow the party line.

This is a shame as "science should be fun" and a way to further our understanding of the universe around us. What I find interesting is that scientists, on the whole, seem to be trained to believe that some things are "truth" because the theories on which those "truths" are based seem to work and work well.

In fact, many believe that certain things exist and spend their days, months and years trying to find those things. Occasionally after much time, some of these things seem to appear as based on their models. It seems to vindicate their belief in their theories and models. Yet, if one takes a few steps back and takes along hard look at the data collected, other things appear that raise questions about the validity of those theories and models. This is a good thing as it suggests that our theories and models may not only be incomplete but could be quite wrong. There is nothing wrong with that.

I liken it to the geocentric to heliocentric viewpoints. Both had some level of workability, but both have been superseded by later data and observations. Instead of being a tool for exploration of our universe, science appears to be getting the veneer of a religious system of belief and a pantheon of gods to go with it. Oh well.

<comment><USER17> _Within most science research groups there will be an expectation that you will be following the "consensus" model, whatever that may be._

That's because you usually believe it when you sign up. That's within a lab, not a field. You don't go play guitar for a group whose music you can't stand.

 _Anthropogenic climate change is the mantra for climate research, so you had better follow party line or you don 't get funded._

This is where you either need to show some evidence or I'm not going to believe you. Outsiders say this, but the truth is usually just the opposite: If you have some results that are counter-establishment, the funding flood comes. Fifth force, earth angular momentum-coupling, cold fusion....

It's harder to _get_ that evidence because, duh, if it were easy then _that_ would be the norm- the standard belief of the field. This is the popular misconception that people have outside of research. It's one of those urban legends: sounds plausible, and somebody knows a guy, aligns with my belief system, therefore must be true. But the fact is, when something outside of accepted beliefs seems to have strong evidence, there is a lot of excitement in the field and people all talk about it and rush to be a part of it. Heady days!

 _In fact, many believe that certain things exist and spend their days, months and years trying to find those things._

I agree. As James Randi said, "Scientists, like everybody else, tend to find what they are looking for." It _does_ take a while to break out of old theoretical frameworks. Look at the hoops that astrophysics is jumping through to explain their observations that are based on the idea that physical constants are truly constants as well as certain conservation laws. They are inventing all kinds of exotic, not-quite-self-consistent schemas for explaining their observations.

But that's very different from the assertion that "if you don't buy into it you can't get funded." It is true that you'll have to have your ducks in a row (stars aligned? heh) to get that funding, but if you had a way to explain all of this shit in a simple, self-consistent way then you would be fine.

But you wouldn't have to fight a bunch of politically-driven opinion-makers on that front because they don't GAF. With climate change you have to do exactly that- some politicians have forbidden even its discussion.

</comment></comment></comment></comment></comment></comment><comment><USER19> To preface, I am inclined to agree with the anthropogenic climate change hypothesis. But the claims in this article are no better than climate change skeptics pointing to a particularly cold winter or mild summer as evidence for their position.

How can you possibly conclude this is caused by climate change vs. being a 100, 200, or 1000 year storm? Freak weather events have been occurring for billions of years before the industrial revolution.

Climate change is a gradual process that may in fact make such storms more likely, but pinning any single storm on climate change is suspect.

<comment><USER20> "The flooding on Kauai is consistent with an extreme rainfall that comes with a warmer atmosphere," said Chip Fletcher, a leading expert on the impact of climate change on Pacific island communities.

Because no one can know the entire body of knowledge, we divide our understanding of the world among us. Some of us study the earth and climate and accumulate expertise on the subject matter.

<comment><USER19> "Consistent with" does not establish much at all, other than that the event does not _disprove_ climate change. An event tells us nothing about climate change if it is consistent both with and without climate change.

My withdrawing $40 from my bank account is consistent with me having no cash at all left in my wallet. It's also consistent with me already having some cash but needing more. The event, the withdrawing of the cash, does not tell us whether my wallet was empty.

<comment><USER21> What is the goal of your comments? Are you trying to convince people that when there is an increase in anomalous weather patterns we shouldn't say it's due to climate change? At what point would you say these things are a result of climate change? Do you deny the reality of climate change? Do you agree that it is a reality but are fighting against people ignoring the fact that an individual event might have a different cause?

Due to humans releasing massive amounts of greenhouse gasses into the atmosphere there is more energy in the system. Clearly this increase in energy leads to anomalous behavior. It's ok to point this out.

<comment><USER19> My motivation? A commitment to truthful and honest reporting.

The claims in this article are no better than climate change skeptics pointing to a particularly cold winter or mild summer as evidence for their position.

<comment><USER21> Your last sentence is false. The difference is one of probability. There's a much greater chance being correct with the climate change attribution over the other one.

We have to make conclusions and policies based on evidence and what is likely the cause rather than waiting for a formal proof. The most likely cause of the increase in anomalous weather events is due to the increase in energy in the system. It's worth pointing this out when these events occur.

<comment><USER22> _There's a much greater chance being correct with the climate change attribution over the other one._

Isn't the null hypothesis that there is nothing specific to attribute the rain? Regardless, what's your statistical test and confidence interval?

<comment><USER21> Do you create a statistical test and confidence interval for all of the things you believe to be true? I doubt it. Do you have expertise in all areas? I don't.

I rely on experts. Experts tell me that there is climate change. They tell me that there has been a massive increase in energy in weather system due to human activity. They tell me that the number of anomalies is increasing. Now I encounter a story about a very strange weather occurrence and your question to me is what statistical test I've run?

I don't know you and I can only guess as to the purpose of your question. I'm very skeptical that you can answer your own question when it comes to making conclusions about things outside your expertise. So it seems your purpose is lacking in genuineness.

If it is news to you that people make conclusions based on the evidence they know about and weigh the possibilities and rough probabilities without conducting a formal statistical analysis then I highly recommend that you do some soul searching.</comment></comment></comment></comment></comment></comment></comment></comment>


Understanding the state of Artificial Intelligence academic research (2016) - <AUTHOR> https://blog.ai-academy.com/six-graphs-to-understand-the-state-of-ai-academic-research-3a79cac4c9c2 <comment><USER2> I wouldn't trust any of the graphs or much of the statistical analysis. I was particularly intrigued by the last graph showing the geographic distribution of research. Thankfully, the author has published their methodology on github [1] so we can see that this data is in fact just papers published in the "Energy" category containing the words "artificial intelligence" somewhere in them. This explains why Iran and Malaysia rank above many European nations.

[1] [https://github.com/gianlucahmd/Science_Direct_API_trends_ana...](https://github.com/gianlucahmd/Science_Direct_API_trends_analysis/blob/master/Science_Direct_API.ipynb)

<comment><USER3> Where in the code does it indicate this?

<comment><USER2> In the "Get most active nations" section the URL being queried is:

"[http://api.elsevier.com/content/search/scopus?apiKey="](http://api.elsevier.com/content/search/scopus?apiKey=") \+ apikey + "&query=Artificial+Intelligence+" \+ query + "&subj=ener" \+ "&start=" \+ str(start)

And "ener" is the id for the energy subject.

<comment><USER3> Thanks. That is really odd.

<comment><USER4> Maybe it is a typo: ENER (Energy) vs ENGI (Engineering)? Is there anyone with a Science Direct API key to check what the actual numbers look like?

</comment></comment></comment></comment></comment><comment><USER5> The author is obsessed with fitting things with a logistic function and drawing wild conclusions even when it directly contradicts itself.

You can't have the rate of publication be a logistic function and the cumulative publication be a logistic function. The derivative(i.e., rate) of the logistic function should be 0 at both tails which isn't S-shaped anymore.

<comment><USER6> Yes, instead of slowing down, the curve could just continue growing straight, there is no inflection point in the graph. Also, area under logistic function is also more like a straight line: [https://www.google.co.in/search?q=graph+log(1%2Be%5Ex)](https://www.google.co.in/search?q=graph+log\(1%2Be%5Ex\))

</comment></comment><comment><USER7> If you want to understand the state of AI research, just pull out the origins of the papers from top conferences, that is it. Or for conference like ICLR, there is a rating attached for each paper, even easier for sorting top out influential ones. Anecdotally, US/UK/China are countries frequently popped into my mind, Iran is nowhere to be found.

Research doesn't work by aggregate, in fact most of the papers are useless. The top 1% influential ones are the ones that really matters.

</comment><comment><USER8> Poor study IMO. I stopped when I read the

> "Computer Science", "Mathematics" and "Engineering", obviously the leaders > in research, with respectively 963274, 491191 and 352870 publications.

Why "obvious" ?? I barely think so.

<comment><USER9> I think that the author is trying to point to the contains relation of CS, Maths and Engineering to AI. I think that Engineering is tenuous as AI in Aeronautical Engineering is obviously of interest as an application that would create extrinsic value. But of course AI for software would also create value!

</comment></comment><comment><USER10> One thing I don't understand about human intelligence:

Why do instances like this one publish their articles on Medium? As a reader, I am annoyed that Medium puts two dick bars on the page so it is hard to read. As a writer, I would not want to have my content controlled by a third party. And not have all these links to the third party on my content. What counterweights this? Are there any benefits of giving your content to Medium?

<comment><USER8> Eh... extremely much larger exposure? Those playing the game of posting on Medium and Linkedin are gaining the game of reachability. That's the point of publishing out content.

<comment><USER10> What is that large exposure? How does the article reach more readers because it is on Medium?

<comment><USER8> Because:

* It is __linked __(vs. a post in a personal blog post which would only be indexed by search engines) * There is a large community of users on Medium, and posts are easy to share. * Medium highlights popular posts.

<comment><USER10>
        It is linked

Linked from where?

        Posts are easy to share

How can sharing be easier then ' read this: [https://blog.ai- academy.com/3a79cac4c9c2](https://blog.ai-academy.com/3a79cac4c9c2) '?

        Medium highlights popular posts

But is it worth all the downsides? The post is on the HN frontpage, yet it only has 51 likes on Medium. How much additional readers does such a post get from Mediums free marketing?

</comment></comment></comment></comment></comment><comment><USER11> [http://aiindex.org/](http://aiindex.org/) agrees and its AI Index peaked in 2015.

</comment><comment><USER12> The AI Index does a reasonable job to understand the state of AI research [0].

> This report aggregates a diverse set of data, makes that data accessible, > and includes discussion about what is provided and what is missing. Most > importantly, the AI Index 2017 Report is a starting point for the > conversation about rigorously measuring activity and progress in AI in the > future.

[0] [https://aiindex.org](https://aiindex.org)

</comment><comment><USER13> Graphs? All I see is charts ;)

Early on the article made an interesting thought - once we get ai right, we won't need to solve any other problems...

<comment><USER14> > once we get ai right, we won't need to solve any other problems...

Only if it is superhuman AI, we already have 'human' level AI and as long as that isn't enough there is no reason to believe that 'ordinary' AI will solve anything that we can't solve.

<comment><USER15> > we already have 'human' level AI

And you're able to say that with a straight face?

<comment><USER16> He/she probably meant the AI that is perfectly capable of understanding human sarcasm.

ps: explanation: AI is at best at simple insect level intelligence and sarcasm is especially challenging for "AI assistants"

</comment></comment></comment></comment><comment><USER17> What does the number of publications have to do with anything? One paper can change an entire field, while another hundred could be just filler non-sense to get a PhD with.

</comment><comment><USER18> From October, 2016.

<comment><USER19> Thanks, we've updated the headline.</comment></comment>


MacHeist just added Bitcoin for payments… with a twist - <AUTHOR> http://macheist.com

<comment><USER2> Don't understand what the "twist" was for... were they afraid of bots spamming orders or something?

Other than that, it's an excellent deal - roughly 0.08 BTC for lots of tools I was considering buying on their own anyways. The Bitcoin purchase went extremely smoothly once I got past the silly Konami code.</comment>


10 Things 3D printers can produce right now - <AUTHOR> http://replicatorinc.com/blog/2008/11/10-things-3d-printers-can-do-now/ <comment><USER2> Holy shit! Fuck webapps. This is the next huge thing without doubt. Once it becomes more affordable, it is going to change the world _completely_ for sure.

So this is how patents will die, huh? (patents don't stop you from making something for your personal use)

<comment><USER3> > So this is how patents will die, huh? (patents don't stop you from making > something for your personal use)...

I think you nailed a key insight here: physical objects will be able to be created with the ease of the way software can be created right now.

<comment><USER2> Also I think pretty soon some extremely light gel like alloy that becomes super-strong on exposure to air will be made and we'll be making much more than prototypes at home.

<comment><AUTHOR> For sure, 3D printing is a neat technology, but people like Neil Gershenfeld at MIT's media lab are doing even more advanced things literally programming atoms to assemble in certain patterns which could then be used to make larger structures. the whole notion of "manufacturing" is going to be very different in 20 years.

<comment><USER4> Many people object to nanotechnology when they think that we can't self- assemble anything of significant size in any reasonable time.

I think that rather than it being "3D printing" vs. "molecular self-assembly", it will be a matter of joining the strengths of the two approaches together, with 3D printing helping to provide large-scale coherence and guidance (probably by embedding some sort of guide into the object for the nano- assemblers), and the nano-assemblies focusing on the small, detailed work like embedded circuitry or whatnot.

As cool as self-assembly may be, this hybrid approach will be much more practical, much sooner.

<comment><AUTHOR> I think you are right jerf, 3D printing is an awesome technology,but it also is not the only awesome technology. print on demand, Laser cutting, cnc milling and embroidering all allow customers to manipulate different media. Hybridizing these tools will allow for greater choice more rapidly.

</comment></comment></comment></comment></comment></comment><comment><USER5> My main interest the last half year or so has been machine learning but fabbers,self-replicating machines, 3D-printers or whatever you want to call them is some extremely cool stuff.

Coupled with nanotechnology this is seriously gamechanging stuff.

<comment><AUTHOR> Totally agree, when you think about the profound societal changes we've seen with P2P, Web Video, Social Media, etc. then think about how that may translate into the physical world we could be living in a very different world ten years from now.

<comment><USER6> I agree that the physical world will go through a revolution, but do you really think the changes will happen over the next ten years? I think maybe that's overestimating the impact in the short term. It's probably going to be a long time before you're going to be printing out the first usable objects (like the reprap's coat hangers, door handles and shoes) with minimal effort at, say, walmart quality and prices.

<comment><AUTHOR> reitzensteinm, Revolution may be too strong a word, but I think thinks significant change ala what we have seen with social media is completely realistic. One think to keep in mind is that this list jut covers 3D printing, Laser cutting, CNC milling, Print on Demand, and other technologies can also enable personal fabrication. Where I see the big impacts are:

Health - If printing bone or at least better implants becomes acceptable this will be huge for the rising senior population.

Entertainment - With the rise of virtual worlds and video games, 3D printouts of your characters could seriously disrupt the action figure/ doll product categories which are worth about $4B/year. This assumes quality continues to improve.

<comment><USER6> Well, I think that in the long (very long) term this will result in the manipulation of the physical world as easily as we copy and manipulate bits on a computer today. And that will be an even bigger revolution (IMO) than the digital revolution has been.

But in the short term, the only place where this makes sense is for one off items, where it brings the cost of production down nicely. Just like FPGAs versus statically designed microchips (I'm not sure what the right word is for that), intersting niches will be advanced by printing, but advances in mass production probably will have more impact on global wealth.

Don't get me wrong - I'm going to be taking a holiday next year to build a reprap, so I'm a believer in this technology - I just think it'll be used in specific niches and by hobbiests for a long time to come.

PS - About Rock Solid, I'm cofounder and a developer, yes.

</comment></comment></comment></comment></comment><comment><USER7> RP (rapid prototyping, as it used to be called), is also used to make molds for invisalign braces, prototyping in all kinds of industrial applications, and now to make 3D printers (<http://reprap.org/bin/view/Main/WebHome>).

When I was in college I worked in a RP lab, and the major concern at the time was build materials. You could build parts out of metal on one of the machines (which could also build parts out of plastic), but you could not build parts out of both materials at the same time.

zCorp parts are extremely fragile, but can be cured hard (but are still more fragile than the other machines), and, at least at the time, it was one of the least accurate machines (but also was much cheaper and used much cheaper materials). The highest quality machines used lasers to either cure resin or melt a powdered form of the material. Both machines and materials were expensive.

In nearly all cases, significant post processing of parts was required to have anything usable when you were done. These are not like printers, where when you're document is done, you hand out copies. When you're part is done you sand. When sanding is done, you cure and/or seal.

<comment><AUTHOR> I wasn't aware of the braces, thanks for the tip, will add that link as well. I agree with you about the need for finishing of the parts, though with effort you can achieve stunning results.

</comment></comment><comment><USER8> There was a lot of 3D printers demoed at Siggraph this year. Their technology is impressive but still not quite there in terms of quality (resolution and color). Most of the models produced, even with higher-end 100K$+ printers, still felt grainy as if the "3D DPI" is not high enough to create a layered object with smooth enough surfaces. Also, all the models that I've seen containing colors were hand-painted as the affordable printers don't have this feature yet. I think that technology is improving, but still aimed mostly at the engineering prototypes market for now.

<comment><AUTHOR> jrbedard,

You are absolutely correct about the state of the art. I use a fairly nice Invision 3D printer and its quality is nice, but pieces straight out of the chamber have a distinct "wood grain" look. The machines are also somewhat unreliable.

However with some sandpaper and elbow grease you can finishe the parts quite nicely. I've sanded pieces from the Invision to the point where they are optically clear and nearly indistinguishable from injection molded parts.

The most successful applications of 3D printing beyong engineering models are niches. Figureprints.com can print out World of Warcraft characters for ~$150 because of the emotional bond people have to their characters.

Paragon Lake brilliantly figured out a way to make 3D printing a mainstream part of the jewelry manufacturing process.

<comment><USER8> yeah, at Siggraph the most popular company around 3D printing was <http://www.shapeways.com/> with their social network around printable 3D creations and their easy-to-use 3D modeling software to design and customize artsy products.

</comment></comment></comment><comment><USER9> For a great novella about the economic/political/social implications of distributed fabbing, check out Bruce Sterling's 'Kiosk' from earlier this year:

[http://web.archive.org/web/20080115084153/http://www.sfsite....](http://web.archive.org/web/20080115084153/http://www.sfsite.com/fsf/fiction/bs01.htm)

<comment><AUTHOR> Excellent referral. I'm a big fan of Bruce's work, this is a perfect style/content match.

</comment></comment><comment><USER10> Wow, what an exciting field to be in. It is definitly one of the big thing of the future.

<comment><AUTHOR> Absolutely, there is a great article on the Ponoko blog (www.blog.ponoko.com) about a new printer by Desktop Factory being about the same price as the first Apple laser printer in 1985 (~$5K). Forget "Web 3.0" "Web 3.D" is way more exciting.

<comment><USER3> Can you talk more about what _your_ company is planning to do with 3D? There was talk on here about starting a 3D printer startup, but it never went anywhere (yet)...

<comment><AUTHOR> ph0rque,

My company isn't using 3D printing at launch, rather focusing on some other rapid manufacturing technologies. I'm just a 3D printing enthusiast. Feel free to email me if you want to talk more.

</comment></comment></comment></comment><comment><USER11> I've seen enough. I want one!

</comment><comment><USER12> I thought that 3d printing was fairly limited in terms of materials. but if you use the 3d printing as just the first step from which to create a mold you can make metal objects too! this is great

<comment><AUTHOR> Actually only the jewelry example used 3D printing as an intermediary step. The art example was crafted in metal from the start. plastic, ceramics, even bone are now "printable". The next big leap will be the ability to have multiple materials printed at one time, so you could get something like a toothbrush that is part plastic and part rubber.

</comment></comment><comment><USER13> How do they work? I can't picture how the art one is made.

<comment><USER7> they all work by building in layers, hardening some material and then using something else for a support structure (some use the unhardened building material, some use a weaker (or soluble) building material, some use the same material, in a thin lattice formation).

Its been several years, but I used to work at a prototyping company. They have a decent overview of the machines they use, which cover all of the major technologies: <http://www.rpc.msoe.edu/machines.php>

</comment></comment><comment><USER14> Good times ahead for Blender modelers ( <http://www.blender.org> ).

<comment><AUTHOR> Albert, are you a 3D modeler? If so, would love to talk.

<comment><USER15> replicatorblog, I'm a 2D/3D animator - shoot me an email if you would like me to set you up with some talented modelers. Contact info in my profile.

<comment><AUTHOR> Chris,

Amazing work, ill be in touch.</comment></comment></comment></comment>


Why do Programmers get paid less than Project Managers or Business Analysts? - <AUTHOR> http://www.dodgycoder.net/2011/11/why-do-programmers-get-paid-less-than.html <comment><USER2> As a programmer-turned-CEO, I firmly subscribe to the Mythical Man Month's suggestion that your top engineers should be paid the same or more than your managers.

Otherwise (as MMM notes), the only career advancement available to your engineers is to move into management, and that's a waste of a great engineer, and a good way to wind up with a poor manager.

Speaking from experience: being a CEO is something I've learned to do, being a programmer is something that I just am. The only reason I got into management is that the size of projects I wanted to tackle exceeded what I was capable of doing myself. Unless I wanted to work on other people's projects, it meant I needed to put together my own team.

While I wouldn't want to encourage programmers to move into management as their only career path, I also wouldn't ever hire someone into management who didn't work their way up in the field. Understanding how to manage technical projects is often much easier for someone who actually knows how to implement a technical project. Apple was/is similar -- Bertrand Serlet (SVP of Software Engineering) wrote malloc, Avi Tevanian (SVP of Software Engineering, Chief Software Technology Officer) was one of the primary authors of Mach.

In conclusion: programmers _do not always get paid less_ than project managers or business analysts. If you feel that you're stuck earning less than you deserve, don't treat that as an axiom of the industry -- figure out how to move forward in your career, even if that means finding a company that sufficiently values senior engineering staff, or working to _become_ a senior engineer.

<comment><USER3> I've had several positions in my career where I was paid more than my manager, usually revealed to me by the manager in an informal setting. If you're delivering more value than you cost, this is not necessarily unremarkable. It does require you to be an effective employee, an effective manager, and to be an effective negotiator.

</comment></comment><comment><USER4> Business analyst/finance here. I believe you are generalizing quite a bit. Some types of programming skills are a commodity. Such as some types of 'analytical' skills: all that is done on a spreadsheet on a regular basis is a commodity, that is why there are so many 'analysts' in the emerging countries.

Regarding programming, making 'apps' in .NET for a big corp is considered (and maybe it is) a commodity by the management. So, if you want higher salaries, you may want to move away from that.

What also doesn't help the programmers (generalizing again, but let's do it for the sake of discussion) is this complete misunderstanding they have regarding the 'suits'. It is absolutely true that a lot of 'suits' talk BS, but they do have a feeling of the business that programmers seem not to have, otherwise there wouldn't be so many todo and project management apps out there.

My strong advise would be to actually move away from the technical side for a moment and talk with the 'suits', ask them what problems they have, ask them about the business, etc. Companies have so many problems, but they are totally disregarded and this kind of discussions don't help.

Now, a programmer that cares about the business: that is a skill that is not a commodity...

<comment><USER5> Last few bigger companies I was in, as a developer, I was involved in multiple meetings, often with different project managers for different projects. The one constant was me (and a couple other devs), being involved in meetings with marketing projects, financial reporting projects, upcoming IT purchasing decisions, operational IT issues, and more. Guess what? The developers involved in these meetings had a pretty solid view of the entire business. Yet _almost_ any time a suggestion was made by a developer based on info from other project meetings, it was shot down or dismissed. (not 100% of the time, but close). I saw this behaviour at 3 companies of varying sizes (between 150 and 2000 employees).

Developer suggestions were generally based on a broader view of the business' overall needs (because of the breadth of discussions we were involved in) than other people at table had, which apparently can be threatening, regardless of how you present things politically.

I realize not everyone as a developer gets in those situations. Sometimes you're chained to one project and set of people for months on end. If you're not, you can have a much better view of the business needs, but that doesn't mean anyone will listen to you as a developer. You need to move out from being perceived as such - either by changing jobs to another company, or occasionally within a company. I've never had the latter option work out for me, but have seen a couple people do that successfully.

<comment><USER6> Even though you felt you went to more meetings and therefore had a "broader view of the business", perhaps the project managers also attended meetings that you were not involved in, which gave them insights you could not have possibly known? For example, maybe during weekly PM meetings where all PMs gave an update of the projects they were managing, your PM also developed a strong sense of what was going on in the business? Maybe the PMs attended meetings where the corporate strategy was discussed, which you did not attend?

Not recognizing that others may have vantage points that were unknown to me was a tough lesson to learn, but an important one. It's difficult to speculate on what someone else may know or not know.

<comment><USER5> In some cases that may have been true, but in most cases it was not. This spoke to poor company communication more than any awesomeness people think that I think I possess.

</comment></comment></comment></comment><comment><USER7> Salaries are a strange combination of supply and demand and superstition and belief. First, fundamentally, it is difficult to evaluate the contribution of either a manager or a programmer. So people fall back to the notion that, well there are fewer of the former and they're higher on the org chart so they should get paid more.

Second, programming skills are seen as a commodity, while business analysis skills are seen as a rarity. This is mostly self-reinforcing perception. At the hiring stage, because people see programming as a commodity they're willing to recruit widely, while because they see business analysis as a rarity they place disproportionate emphasis on pedigree (hiring ex consultants at McKinsey, etc) which limits supply. Given the Bell Labs study, pedigree is probably vastly overrated, but business types place insane value on it. I'm in the legal field and see big firms perfectly happy to hire someone from the middle of the class at a top 10 school over someone in the top decile of a top 50 school. The difference in standardized entrance exam scores between the two is often quite small, and law firm work takes more work ethic than it does brilliance, but firms hire the folks with the pedigree because it's easier to sell that to a business type.

Third, without using too broad of a brush, I think business analysis, etc, on average, attracts a more aggressive crowd. Programmers tend to be more mellow in my experience, and that affects people's perception of whether you've got "killer instinct" and whatnot. My law school's parent university has a business school, and frankly those folks are a little strange. They Facebook- friend people indiscriminately, always seem like they're trying to sell you something, and are really dedicated to physical fitness and grooming. Given that a large component of compensation is perception, it's easy to see why these folks would have a leg up.

</comment><comment><USER8> Am I really the only person that was a little troubled by the stated assumption that programming is generally more difficult?

<comment><USER9> You think project management is _generally_ more difficult than programming?

You must not be a programmer. :)

<comment><USER8> I think "difficult" is a tough term to pin down. I was troubled by the fact that the assumption was made as if it was a scientific fact; especially since making the assumption clearly eliminates a valid answer to the question.

Maybe I just took too many logical reasoning / philosophy classes in college...

<comment><USER10> Meta-discussion remark: whenever I point a flaw in an argument I try to add a disclaimer stating that I'm not necessarily taking the opposite side. This seems to cool down the discussion a bit, especially if the argument in question is in line with the HN (hive-)mindset.

Edit: This was meant as a response to your comment about being downvoted, sorry.

</comment></comment></comment></comment><comment><USER8> The same reason a general contractor makes more than the carpenter he subs out? Or the same reason the real estate developer makes more than the architect?

<comment><USER11> I'd like to note this isn't actually an answer; you've just begged the question.

<comment><USER8> Begging the question or Socratic method. The answer is that the lower paid workers are all lower level inputs to a business operation.

The other answer is that the wage is a reflection of market value / cost of labor. I think that's probably a function of supply.

<comment><USER8> Whomever is doing the downvoting on all of my posts on this topic please speak up. Why the down voting? Because I do not share your opinion?

<comment><USER12> You come off both condescending and lazy when using the Socratic method with peers. Either clearly state your positions or take the downvotes.

Socratic method works in a student-teacher relation. By using it here on the message board you immediately assert that you know the true answer while the rest of us only know ignorance.

<comment><USER13> Socratic method is neither condescending nor lazy. Besides, Socratic questions can turn into regular questions with unexpected answer.

</comment></comment></comment></comment></comment></comment><comment><USER14> One point I haven't seen so far in this thread: even if manager types make more money than programmer types, that does _not_ imply that management is a more lucrative career choice.

To make the point, let me turn the question around: if management is easier and pays more, why don't more programmers choose management?

The answer is that it's not necessarily easy to land a management job, whereas there's often work for programmers to do (though programmers may need to do consulting and travel around or something).

What happens is that business types get comfortable communicating with specific managers, and then they don't want to spend time building rapport with new managers. Great if you're that one manager, but not necessarily good for the 5 that are stuck trying to apply as a manager while unemployed.

(I'm sure it's more complex than this, but I believe the above describes a significant factor.)

<comment><USER6> _"if management is easier and pays more, why don't more programmers choose management?"_

Um...they are _completely_ different skill sets.

<comment><USER14> People can choose the skills they acquire.

</comment></comment></comment><comment><USER15> At bigger companies there are often arbitrary pay limits set for non-manager employees. Nobody is going to change those pay scales without making a business case to the finance department.

The problem is that most finance people have no clue about the underlying cost dynamics of software development. Most finance analysts learned from textbook examples based on manufacturing. Many big company finance systems are still set up using software designed for manufacturing.

Guess what that means? You're basically an assembly line worker. BA's and PM's are viewed as either managers or "management track" assets.

This must change. Both for the sake of profitability and fairness to top programmers.

My recommendation, if you know anyone in the finance department try to educate them a little about the cost dynamics of software development. The sort of stuff you'd read about in Code Complete or MMM.

They'll probably ignore you. If they do, fine, whatever. If not, you may have taken the first step in getting your company to understand how to manage their most valuable asset: programming talent.

<comment><USER16> It gets even funnier in government. In the 80s I worked in a special government lab (where 'critical' event wasn't a euphemism!)

To get the young mathematicians and programmers we needed we had to pay the same rates they would get in industry - but the pay scales were all set by rank. So the only solution was to promote 21 year old maths grads to the heights of the command structure.

There were senior site meetings that had a 'general' rank head of each dept and 20 or 30 'general' rank 20 something maths specialists!

</comment></comment><comment><USER17> From what I understand of the Washington DC market, senior software engineers are generally paid more than technical managers.

But, given that many good technical managers were at one point good technical developers, it makes sense that they're paid more.

Having done both roles, being the 'lead' senior technical developer is the more difficult of the two. Though technical project management is more difficult than programming.

</comment><comment><USER18> Additionally, it's that managers are also _supposed_ to carry more responsibility, if they make a decision and tell the coder to "no, do it like this", it should be their neck on the line if it turned out to be the wrong decision.

Even though it doesn't always turn out that way, just appearing to carry the burden of responsibility is often enough to make justifications for being paid more.

In _reality_ , the truth is of course somewhere in between the optimistic first paragraph and the cynical second.

</comment><comment><USER19> A good programmer is as valuable to the team as a good project manager (and vice-versa) but the project manager's work will be explainable to corporate in a way that the programmer's work isn't.

Suits (and yes, I know this is an us-vs-them mentality) understand charts and numbers and projections, etc., but rarely give a damn about what actually has to happen to earn their quarterly profit. Project managers can produce enough of those to warm the cold pits of any executive's heart; programmers can point to lines of code and get a confused, annoyed look and a trip out the door.

It's not that executives are, by nature, evil or bad people (OK, not Hitlerian evil), they just don't worry about the tiny details.

<comment><USER5> Given the hierarchical nature of most companies, developers tend to be at the bottom rung. They've got project managers _above them_ , then department managers _above them_. Almost by definition, _anything_ a developer is working on is a "detail" (and can often be regarded as 'tiny' in comparison to the whole of a project or department). Doesn't matter if that one 'tiny' detail can actually close down the company or not, by the very nature of how projects and depts are structured, it's set up to be an uphill battle to get noticed and get heard from a dev point of view.

</comment></comment><comment><USER20> He has the agents reversed.

At general equilibrium (assuming open markets), a corporation's "reservation price" will be equal to the employee's "marginal product", so we don't generally use the term "reservation price" in the employer's perspective.

OTOH, an employee will have a "reservation price" that is the minimum they'd accept to force themselves to wake up at 8am everyday and go to work.

If you are the last COBOL programmer on earth, then surely many companies formerly using COBOL have switched to other languages and platforms and, most likely, there is a cross-compiler to COBOL from Python or C or something. Thus, a COBOL programmer's marginal product to any corporation would not really be that high since the company could switch to another language instead of hiring you (especially since they will have to switch eventually (assuming you, the last COBOL programmer on earth, are mortal).

<comment><AUTHOR> Actually its not that simple in real life regarding legacy systems. To rewrite even small parts of critical real time systems (I'm thinking bank's end of day accounting reconciliation software) in a new language could be a hugely complex undertaking, and they must maintain and update legacy apps in the meantime, even while new development is ongoing.

</comment></comment><comment><USER21> People are paid in proportion to how hard they are to hire and retain. End of story.

</comment><comment><USER22> I was under the impression that most programmers hired these days get paid more than managers and analysts with comparable experience, often by a good margin.

Evidence: [http://www.simplyhired.com/a/salary/search/q-analyst/q_1-sof...](http://www.simplyhired.com/a/salary/search/q-analyst/q_1-software+engineer/q_2-project+manager/q_3-programmer)

I'm surprised few have pointed out that this entire conversation is based on a generalization that could easily be false...

</comment><comment><USER23> The business guys tend to have the checkbook. So, if they're intellectually lazy, they go with what they know rather than whatever they might need. Given that you're not going to be able to hire Bill Joy very often, there's a lot of developers out there looking for work. Anywhere there's "lots", there's downward salary pressure (chemists, engineers, ...).

Things might change a bit when they can outsource management or when non- Western competition truly arrives.

</comment><comment><USER24> I don't agree, mostly I've seen in the valley is that engineers are paid more than project managers and business analysts.

</comment><comment><USER25> And what can we say about system administrators? As a member of this category I think that probably we are lower in the (salary/s __t) ladder..

</comment><comment><USER26> Please link to the original SO post if all you're going to do is copy paste one of the answers.

</comment><comment><USER27> In addition to bargaining power, I think programmers are just worse negotiators. Their educations do not prepare them for this. To hack the system — remember you're putting yourself in a wage-slave situation for years, so best to learn this trash — you should extract the highest price/benefits they're capable of paying you.

(Maybe it helps to read _Getting to Yes_, or something.)

Plus, there's an obvious class component. The further removed you are from working with your hands, the higher value you're perceived to have.

(After all, who hires these project managers and business analysts? Managers. Who naturally value themselves more than underlings, and will transfer that value perception to these managers/analysts. This argument was used in Schmidt's _Disciplined Minds_ to explain some of the higher rank theoretical physicists have over experimental physicists and engineers, even if engineers earn more money.)

<comment><USER28> > Plus, there's an obvious class component. The further removed you are from > working with your hands, the higher value you're perceived to have.

I like this point a lot, and it makes sense, but then I thought, how come it doesn't apply to athletes ?

<comment><USER29> Because it doesn't actually have anything to do with "working with your hands". Craftsmen are probably a better example - a talented craftsman, like an athlete, though he's working with his body, can command soaring rates.

The classical worker, the kind I believe the GP meant to refer to, is a commodity. It's the kind of workers it might make sense to hire as day labourers and, conversely, for whom collective bargaining is beneficial.

There has been a tendency for some businesses to treat programmers as this kind of workers, often leading to failed off-shoring efforts.

</comment></comment></comment><comment><USER30> Supply and demand.

In some places they get paid more.</comment>


27 Hours as a Cab-Dodging, Tip-Chasing Food App Deliveryman - <AUTHOR> https://www.nytimes.com/2019/07/21/nyregion/doordash-ubereats-food-app-delivery-bike.html <comment><USER2> Maybe I missed it later in the article, but how can you write this without mentioning the app? Consumers need to know:

> Even their tips have a way of vanishing: One app subtracts the amount the > customer tips from the amount it pays the courier — effectively pocketing > the tip.

EDIT: It's DoorDash. I was a little confused by the description of their trickery to effectively steal a tip. Basically you're tipping DoorDash, not the driver.

<comment><USER3> Unbelievable exploitative. Thanks for researching. I came here while reading the print edition hoping for a clarification.</comment></comment>


Ask HN: What Web frameworks exist around Python? - <AUTHOR>

I know about Django, but what other frameworks exist to make it straightforward to process Web requests with Python?  Anything non-MVC, just for the sake of argument? <comment><USER2> <http://webpy.org/>

      import web

      urls = (
          '/(.*)', 'hello'
      )
      app = web.application(urls, globals())

      class hello:
          def GET(self, name):
              if not name:
                  name = 'world'
              return 'Hello, ' + name + '!'

      if __name__ == "__main__":
          app.run()

<comment><USER3> It's great for writing small one-offs (the sort of thing you might use PHP for) and web interfaces for non-web applications. But for large projects it's really not suitable.

<comment><USER4> I don't know about that. I've written some fairly large programs in webpy lately.

Our latest site, <http://sitecanary.com/> has the UI completely written in webpy.

</comment></comment></comment><comment><USER5> So here ([http://fewagainstmany.com/blog/python-micro-frameworks- are-a...](http://fewagainstmany.com/blog/python-micro-frameworks-are-all-the- rage)) is a post that lists some micro-frameworks for Python, such as web.py. Many of them are similar to Sinatra for Ruby (if you are familiar with that framework) and basically allow you to create very simple web applications in a single file if that is what you desire. While these are not inherently MVC, they can be used as the underlying foundation for your very own MVC framework.

As for MVC, the other big ones for Python (other than Django) are Pylons and TurboGears. Of course there are some other very heavy weight ones as well, such as Zope and Plone, but my knowledge of these is very limited, so I'll leave them for someone else to comment on.

Finally, you can could always use the WSGI spec directly and just slap together all the other "best of bread" pieces to make your own simple framework. It's actually pretty easy to do so, and the best tutorial I've found on doing just that is on Joe Gregorio's website (<http://bitworking.org/news/Why_so_many_Python_web_frameworks>). Check it out, it's definitely worth running through once to at least get an idea of what other frameworks are doing under the hood.

<comment><USER6> I'm a big fan of Turbogears. It's big enough to do a lot of work for you but not big enough that it forces your hand.

</comment></comment><comment><USER7> I'm not really a Python guy (I love my Ruby/Rails...) but I've heard good things about Pylons. <http://pylonshq.com/>

</comment><comment><USER8> Werkzeug - the anti-framework. It is more like a library and that's good as it allows you do things the way you like...

<http://werkzeug.pocoo.org/>

<comment><USER9> Werkzeug is fantastic. We used it with jinja2[1], SQLAlchemy[2], and flatland[3] with great success.

[1] <http://jinja.pocoo.org/2/> [2] <http://www.sqlalchemy.org/> [3] <http://bitbucket.org/jek/flatland/overview/>

</comment></comment><comment><USER10> [http://lmgtfy.com/?q=python+web+frameworks&l=1](http://lmgtfy.com/?q=python+web+frameworks&l=1)

<comment><USER11> Maybe the OP wanted the opinions of savvy , knowledgeable users of python web frameworks as well.

</comment></comment><comment><USER12> The reason that there are so many frameworks is that writing one used to be a rite of passage for Python programmers. It was so easy to write your own.

FWIW Guido settled on Django. I dont know if he has changed his mind since.

<comment><USER13> I started diving into Django a few months ago for a side project, and haven't looked back. I know a ton of Django programmers in the area, and there's a great community for Django devs online.

</comment></comment><comment><USER14> I like webob a lot: <http://pythonpaste.org/webob/>

Also more a library then a framework.

<comment><USER15> I like WebOb+Google App Engine.

</comment></comment><comment><USER16> cherrypy <http://www.cherrypy.org/> keeps things simple

</comment><comment><USER17> Easy to use, one-file thingie: <http://wiki.github.com/breily/juno>

Can do everything thingie: <http://www.twistedmatrix.com>

</comment><comment><USER18> Straight up WSGI: [http://www.xml.com/pub/a/2006/09/27/introducing-wsgi- pythons...](http://www.xml.com/pub/a/2006/09/27/introducing-wsgi-pythons- secret-web-weapon.html)

Django, Pylons, Cherry.py, Turbogears, web.py, Zope, Plone (more of a CMS than a framework, though), Juno, itty, djng, mnml, itty, newf...

I'm sure there's others that I forgot.

</comment><comment><USER19> You may find interesting a web frameworks discussion started by Guido: [http://www.artima.com/forums/threaded.jsp?forum=106&thre...](http://www.artima.com/forums/threaded.jsp?forum=106&thread=146149)

At work we use Django and somewhat happy with it. In past I used to use web.py and I liked it.

</comment><comment><USER20> Python developers have tried to move away from the framework thinking for some time.

The emergence of make-your-frameworks (Pylons), lightweight(juno, web.py) frameworks, and pay-for-what-you-eat frameworks (repoze)

Choose libraries based on what serves you best, combine them together using WSGI.

</comment><comment><USER21> Nagare (<http://www.nagare.org>) is really different. Not yet-another-MVC- framework clone but based on a true components architecture and using continuation, like the Seaside framework, to free the developers of the Web constraints.

</comment><comment><USER22> Pylons is awesome.

</comment><comment><USER3> Web.py is great for small projects.

web2py is the new up-and-comer.

zope is the grey-bearded veteran that nobody uses anymore.

twisted is more of a networking framework but people sometimes use it for web apps.

<comment><USER20> By zope, i assume you mean Zope2.

Nobody uses zope? really? Plone, arguably the best Open Source CMS out there is built on Zope2 and continues to be used in ever increasing numbers..

Zope3 is not just a "framework". Its a mindset that allows people to think about solving problems in a robust way, which will remain useful for software's lifecycle.

Zope people realized the danger in building monolithic frameworks after the experiences of Zope2. When they started zope3, they kept the goal of reusability the number one design goal, even at the risk of appearing over- engineered at times. Today, there is no Zope3 and Zope3 is everywhere. Zope lives in Plone, Repoze, Grok and myriad of python libraries.

Lot of good ideas from zope like Zope.Interfaces and Zope component architecture are being outside the zope community.

Django is the Zope2 of 2009.

How many software stacks are still being supported and catered for after 10 years? Zope is a greybeard but saying that nobody uses it implies lack of actual knowledge of python frameworks and how they play together.

</comment></comment><comment><USER23> Juno is a minimalist, Sinatra-like framework: <http://wiki.github.com/breily/juno>

</comment><comment><USER24> don't forget the grandaddy of python frameworks: <http://www.zope.org/>

<comment><USER20> zope is no longer a monolithic framework, but a large collection of libraries, most of which can used outside the main zope framework or even create your own framework. You can use what you want -- the `pay for what you eat` principle.

Repoze - <http://repoze.org> and Grok - <http://grok.zope.org> are some of the derivative frameworks that use best of zope libraries without going the whole hog.

Today, zope (specifically zope3) is arguably ahead of other popular frameworks in terms of its reusability, deployment stories, extensive testing.

Combine WSGI + Paste + Zope Component architecture + SQLAlchemy and a choice of other libraries to create a robust framework of your own.

</comment></comment><comment><USER25> <http://www.vimeo.com/3703345>

</comment><comment><USER26> out of curiosity, what is bothering you about django?

</comment><comment><USER27> This kind of question smells of lmgtfy.com</comment>


Ask HN: How do you "learn" a new programming language? - <AUTHOR> Greetings,
After spending several days while meddling with ExtJS 4 to grok it, a question occured to me:
What does HN users do when they start to learn a new computer language or framework? Do you "memorize" the reference manual, or what?
Thanks! <comment><USER3> I have a set of pet projects that I tend to recreate: <http://blog.fogus.me/2009/05/29/pet-projects/>

<comment><USER4> Yes, I do a translation of MiniLight <http://www.hxa.name/minilight/> .

It seems a bit large though -- roughly 600 lines of code, average. So that suggests a project of about 200 lines would probably be nearer optimal for learning.

<comment><USER5> I love how the fastest one is Python with ShedSkin...

</comment></comment></comment><comment><USER6> What to do (well, what I do anyway):

1\. Borrow an introductory guide that is targeted at people who've programmed before, and read the first 2-3 chapters. Return it to whoever you borrowed it from.

2\. Sit down at computer and start to write code. If you get stuck, visit reference manual, and follow it through until you are un-stuck.

3\. (For C/C++ programmers) Assume there is somebody constantly looking over your shoulder at whatever you're doing, and telling you that there's a really simple library call that will do all of whatever you've just done, but in one function call. Then assume this notional person is right, and go and find it.

4\. GOTO 2

Do:

\- Find, learn your way around and generally become quick at using some kind of computer-based reference manual that is full-text-searchable and well- indexed, because you'll end up using this a lot.

\- Familiarize yourself with relevant code browsing features so that you can quickly visit source code for runtime libraries and (where applicable) VM. Then use it a lot to visit the implementations of things and just generally have a look round. This is handy for various purposes, but I mostly use this to find more things to search for in the documentation.

\- Ask stuff of people who are familiar with the language or whatever. If they offer you code, put it somewhere where it won't get lost, but don't look at it.

\- Locate a copy of the language spec, or what passes for one, and figure out how to read it, so that when something perplexing happens you can tell whether it's official that things should be this way.

Tastes differ, but I avoid doing all the following, so I might be so bold as to suggest that others should avoid hem too:

\- Looking at source code other than for runtime library/VM/compiler/etc.

\- Copying code from other people, including from runtime library

\- Reusing framework code, wizard code or other such junk

\- Paying much attention to non-specific advice given on Stack Overflow. (Specific answers to specific, direct questions are fine. General advice... usually ignorable.)

This all probably sounds a bit odd, but it seems to have stood me in good stead.

</comment><comment><USER7> Try to learn the topic top down rather than bottom up.

If you reach for a technical book about some new language, chances are that it will be broken down into chapters, each of which goes into a lot of detail about some specific area.

By reading material like this, you can come away with a lot of specific memorized details, but without feeling like you've learnt anything about the overall topic or are able to put it into practise.

Instead, I like to start at a really high level, asking what problems the technology solves, what is the sales pitch for it, where should it be used and where isn't it appropriate. Understanding things like this give you an angle to learn the technology from.

I'll then drill down a little and try to understand the main concepts. I'll make a few diagrams at this stage, identifying the main components in the technology, and start to question why it works in the way it does.

After that it might make sense to drill into specific areas as and when I need or for reference.

I think it's really important to see the wood for the trees when learning technical topics. The reference details are a Google search away. It's understanding the concepts and making the mental leaps that are the real meat of the learning.

</comment><comment><USER8> Wow! Lots of great suggestions here. I especially liked @fogus' suggestion on maintaining a list of pet projects that you work out in each language. This way, you don't struggle with the domain any more - you just have to fight one learning curve.

With that said, I believe there is a term used in swimming, and one that I use to explain how I learn new languages - "Total Immersion".

Here's how I do it - open up your favorite reader, and subscribe to a couple of blogs that talk/explore the language that you are playing with. There are usually a few "gurus" that you can follow. Another way to find good people is to put a search for a particular hashtag in twitter. Or join the Google Groups page (if your language has one).

Then every day spend an hour or so reading - initially none of it makes any sense (at least no to me anyway :D) - but I have learned that over time my brain latches on to these "snippets" of wisdom, little tricks in the language that you can eventually "grok" as you learn more about that language. It's these "Ah! That's what xyz was talking about" that really make things interesting.

Furthermore, you could attempt to partake in the conversation (even if you lurk, like I do). People ask all kinds of questions on google groups or twitter - even if you are not confident enough to respond, you can attempt to find an answer on your own. What this does for me is that sometimes it's a small enough question that you can start to delve into and get a better understanding of one particular aspect of the language.

For e.g. recently on the Clojure user Group someone asked "Pretty-print with metadata?" [<https://groups.google.com/forum/#!topic/clojure/5LRmPXutah8>] - <USER2> had never thought about it, but it is an interesting problem. So I sat down to see if I could find a way to do it out of the box. No cigar. So then I wrote a small function to make it happen. Needless to say, my solution was no where nearly as elegant as the ones posted in response, but then I got see where I went wrong :)

Hope that helps. Good luck.

</comment><comment><USER9> For a language, once it has grabbed my interest, I read the reference manual or something fairly close to it (Stroustrop instead of the ANSI C++ spec)

Some languages and most frameworks do not have a reference manual. For those, the challenge is to decide what source is authoritive, whether it is up to date, etc.

I rarely start working with a technology before having read or at least browsed a few hundred pages. Reason for that is that, for me, reading a reference is a more efficient way of getting a feeling of what a language can do than trying it out. Also, if the reference does not exist, chances are it isn't technologically interesting and/or it will not get popular. In either case, the technology isn't worth learning about.

</comment><comment><USER10> I use that language/framework to create something. For me I don't retain information from reading a reference manual cover to cover. I need to actively work with the language/framework in combination with the reference manual which helps give it a context. I find this helps me retain and understand the things I am trying to learn.

</comment><comment><USER11> Hello,

When i decided to learn PHP, i went to the php.net and started learning the "syntax". And then i started "memorizing" the functions. But it turned out i was just wasting my time. Ok, i learnt some stuff of course, but just peanuts.

I decided to change my way. I set a goal; "to make a website". Then started to coding.

In the beginning, on every line i stucked. I asked myself & Google "I need to do this. how can i do it?" For almost every line, i googled for something. By time goes on, it started to take place in my mind.

On every step, i set another goal. When i ask myself "i want to do something like this, how can i do it?" , I started to (had to) learn something on CSS, JavaScript, Jquery.

For me the steps to learn are; 1\. Set a goal. Make it hard! While getting to that goal, you'll learn lots of things. And finally when you reach that goal, set another one, more harder.

2\. Use Google a lot ;)

edit: typo

</comment><comment><USER12> The usual suggestions ― books, tutorials, screencasts, pairing w/programmers, university courses etc.

A new emerging trend is to learn via websites that give you a task and you write code to perform that task, on the website itself.

One such example [for Ruby] is <http://rubymonk.com>

</comment><comment><USER13> I'm early in the stages of learning Clojure, so here's what I've done so far and what I plan to continue doing.

\- I recently joined a local Clojure group on meetup.com and started attending meetings.

\- I know the main web sites for the language, including a great searchable documentation site I use.

\- I already know Scheme and Common Lisp, so my focus is on grasping the differences with Clojure.

\- I just completed the Clojure koans I forked from GitHub.

\- I started reading a Clojure book.

\- I have played around with the REPL.

\- I have started using a serious development environment including Leiningen.

\- I will look into a testing framework to use as I experiment further.

\- I have some specific tasks I want to try to implement in Clojure involving concurrency to get a feel for what I can usefully get out of this language.

\- I'll look at people's code, of course, to get an idea of good and idiomatic practices.

</comment><comment><USER14> 1\. Have something you need to code.

2\. Pick a small part of it you need to implement.

3\. Google[insert favorite search engine] for code in your language that does kinda what you need.

4\. Move the code around until you get what you need done/working.

5\. Repeat 2-4 until you have done your project.

6 Repeat 1-5 on three projects.

7\. Read blog articles about how to write properly in that language.

This is basically the formula I used since childhood. The other way around of learning syntax is too boring and tedious. Starting out with projects means at the end of the process you have something to show, and the syntax has contextual clues for easier memorization. Additionally, you incorporate other people's programming habits that took years to develop[you wouldn't get all, but you would get some] .

</comment><comment><USER15> What I've found to be the most efficient way of learning new programming languages..is not by using it. While is it true that you need to use it to gain mastery. It is best to learn new language as simply as a programming language. That means studying its features rather than syntax and grammar. Is the language object oriented, functional,or multi paradigm? The point being that syntax and grammar changes all the time from languages to languages, but programming paradigm rarely changes. Truly grasping the idea of a programming paradigm will make you learn new language a lot faster..and new programming languages emerge almost every year.

</comment><comment><USER16> Open source code. Tutorials, screencasts, books, they teach you /how/ to code, they don't actually get you to do it. You can get to the end of a book and have memorized all the code samples but still be without a flying fuck how to write a program or fix a problem.

Keep a reference manual open in a background tab and dive in.

Go to a popular project on Github, go to the issues tab, pick a random issue and try to fix it. This will give you more insight into the ups and downs of a language than anything else. "Pet projects" are stupid as they have no real world use and you already understand most of the logic behind them, solve problems and make things happen.

</comment><comment><USER17> I usually start with a small project, sometimes something I've implemented before. The first thing I do is start from a Hello World example, and then expand that with features to get to the program I want. I do these features from examples, and I manually type the examples over. This way I get my fingers and eyes used to the syntax quickly. Once this abomination of a program that consists of bad structure and examples from the web is done, I track down some proper examples of complete programs to see how things should be done and investigate the differences between that and the approach I've picked up so far.

</comment><comment><USER18> I read just enough about it that I can get a "Hello, World" program written and running. I then try a few things to modify that program to learn more about the language. In particular, I'll often try breaking it in several different ways. If I know what I broke, then I can learn how to interpret error messages.

Once I've done that, it's time to start on a small project. I just start coding and looking up what I need to know. I know in advance that my code will be bad. In fact, the more often I encounter some piece of documentation that leads me to say, "Oh, I should have done it _that way_ ", the more I learn.

</comment><comment><USER19> Start writing programs in it.

<comment><USER20> It's hard to read a book in German if you don't know the vocabulary.

</comment></comment><comment><USER21> I subscribe to podcasts and watch a couple video presentations.

The idea is to quickly get an understanding for the concepts behind the language, when you dive into the topics you already have a mind map to file them under. This also gives you a feeling for the community.

Next I read the top questions on stack overflow and join the IRC channel on freenode.

By learning from the common pitfalls made by others this saves me from a lot of startup frustrations which would otherwise prevent me from actually using the language.

</comment><comment><USER22> I found writing some complex data structures is great way to learn basics of language. And then you can iterate and improve your data structure to make the code more idiomatic and/or faster.

I grasped Common Lisp with writing `Hash Array Mapped Trie` data structure(one of the data structures lie within some of Clojure's persistent data structures). It helped me understand both the particular data structure and the language.

</comment><comment><USER23> I find this question especially interesting in terms of, that it is not the first language you learn. You don't want to spend time on a book, that is reintroducing common concept to you, this is just boring. I have, however, still the desire to buy a book for this purpose and read it from beginning to end including all exercises, but thinking rational about this, that is utter nonsense.

</comment><comment><USER24> I used to just start poking around in it. Now I combine putting the reference manual in to Anki (although any Spaced Learning System should work) while I do it. This way you remember and learn all the edge cases, so they're there right in your head as you're learning to flow program it.

<comment><AUTHOR> Never heard of Anki(<http://ankisrs.net/>) before. Thanks for the recommendation.

</comment></comment><comment><USER25> This is in a similar vein to most of the answers...

Choose an interesting project from SourceForge - create something similar.

This is more efficient because you're now learning a new language _and_ domain-specific concepts at the same time.

</comment><comment><USER26> I start by trying to build a program I already know how to make. Something simple like a number-guessing game.

If I like the first couple of experiences I'll pick up a reference manual and try something a little harder.

</comment><comment><USER27> Project Eueler, mentioned here many times, is a great set of problems to use while exploring a new language.

<http://projecteuler.net/>

<comment><AUTHOR> My first thought was "Hmm it may be useful for learning nongui languages, but what would happen if I try to learn ExtJs with it..." Then it occured to me, you have to put a gui to present results.

Thanks!

</comment></comment><comment><USER28> I usually just redo a set of projecteuler.net problems, until I get enough context of the language to feel like I don't have to look up every single language construct.

</comment><comment><USER29> My preferred method is to find the equivalent of K&R for that language, read it, and then start trying to program, supplemented with internet searches if I run into something that it turns out I didn't understand, or to find neat libraries.

Unfortunately, few books approach K&R's quality. I don't like books that are written under the assumption that I will be sitting at a computer as I read them, and expect me to be typing in code and running it for everything they cover.

If I can't find a satisfactory book, I'll cobble together something from what I can find on Safari Library, free online books, and assorted internet searching.

A while back I tried an interesting experiment. I needed to learn some Lua, because I wanted to write some add-ons for an MMORPG I was playing (Warhammer Online). Lua has pretty good documentation, but I had recently read that famous article on digital natives vs. digital immigrants, whose theses was that digital natives (people who grew up in the digital world) have a fundamentally different understanding of technology than those of us who grew up in the pre-digital age and immigrants to the digital world. The natives are multitasking do-ers, who want to learn things as they need them. They aren't, supposedly, like the immigrants, who think the way to learn things is to read a book, then start doing.

I decided to take a more native approach with Lua to see how that worked out. So, instead of reading the Lua documentation, I downloaded and looked at a few Warhammer Online add-ons to see how they were structured and get a feel for what Lua code looks like. I looked at the Wikipedia article on Lua to get an idea of what kind of things the language had.

Then I started coding. Whenever I wanted to do something that I knew the language could do, but didn't know how, I Googles. So, for example, the first time I wanted to initialize an array with literal constants, I'd Google for that.

This actually worked. I don't know if my Lua code is any good, but comparing to what I see on other people's add-ons, it seems in the same league at least. I would not put "Lua programmer" on my resume just yet--I'll wait until I actually read a complete manual before doing that. I did a similar experiment with JavaScript, with similar results.

I'm not convinced, though, that the "native" approach is actually good. Yes, I got satisfactory results, but I think much of that has to do with the fact that I've been a professional programmer for 30 years. That has given me good filters for recognizing bad code, so when I'd Google for how to do something and get back and answer that turned out to not be a good way to do whatever it was, I'd sense that and keep looking. Someone with just a couple years or less experience would probably have incorporated a lot more things from the bad examples on the net.

<comment><AUTHOR> K&R?

<comment><USER30> <http://en.wikipedia.org/wiki/The_C_Programming_Language>

</comment></comment></comment><comment><USER31> There are a bunch of things you need to be able to do in _any_ programming language for it to be useful for real work, e.g. get parameters from a command line, connect to a database, read and parse a file on disk, send a message to syslog, etc etc. I start by implementing a trivial program that does these things, and in the process pick up the syntax, and overview of the libraries, and end up with a framework on which to actually build my first real program in that language on.</comment>


Got stock options? new startup offers free option exercise loans - <AUTHOR> http://zoromarkets.com/ <comment><AUTHOR> Know the founding team well, they are launching a mobile app to help with stock option exercises.

For the first 1000 customers who qualify, they will eat the financing costs... not a bad deal IMO.

We'll see how they do, will be coming out of stealth soon and there are some players in the space already, but I signed up for Beta access cuz free money.</comment>


Inside FarmVille's Sinister Underbelly - <AUTHOR> http://www.csoonline.com/article/533113/ShmooCon_Inside_FarmVille_s_Sinister_Underbelly

<comment><USER2> While mildly interesting, the article body doesn't exactly live up to its title. :(

</comment><comment><USER3> Here's a video of their earlier presentation: <http://vimeo.com/6307559></comment>


Graphics Chips Help Process Big Data Sets in Milliseconds - <AUTHOR> http://www.technologyreview.com/news/520021/graphics-chips-help-process-big-data-sets-in-milliseconds/ <comment><USER4> It's cool that it's essentially a consumer-participatory GPU database, but every time I read about GPU crunching I'm underwhelmed. The power waste and cost is absurd. FPGAs have become as capable, or more, than GPUs at a ridiculously higher level of efficiency. I understand that this platform is about technology accessibility... but having casual computer users burning their graphics card 24/7 seems cute but irrelevant to current methods of supercomputation. I find a lot of people who care about efficient natural resource usage don't think twice about very wasteful computing. Those watts are a whole lot of coal.

<comment><USER5> Someone correct me if I'm out of line here, but I think it would be appropriate to mention your personal interest in FPGA's (which I discovered from your comments lower down).

On the point itself, "accessibility" is probably understating the nature of the problem. Actually being able to program for a platform, and how easily you can do it, is a huge issue. Issues of "accessibility" apply as much to huge companies with giant server farms (note how little even GPU computing is used by them) as they do to tinkerers.

<comment><USER4> You're not out of line, and I haven't tried to hide the fact that I'm now professionally interested, in fact that's all I'm blabbing about below. But that's no coincidence- this is why I got into FPGAs: the problem spaces that are like what this cool project addresses. But I rejected GPUs as a platform completely for the reasons I list. And that's how I came to be interested in FPGAs. I am not an EE and it was a hard decision to make the switch to pursuing this, and I'm sharing that experience in the hope of inspiring/meeting others. As well as trying to open myself up to input/advice from people more experienced than I.

<comment><USER5> Fair point, as often happens I forgot to consider the possibility that your preference for FPGA's caused you to get a job selling an FPGA platform and not vice versa.

In any case, my own viewpoint is that CUDA and OpenCL are the best that has been produced by a huge effort by well financed and technically sophisticated groups. GPU computing offers advantages in flops/watt and flops/dollar, and yet is still not widely utilized because of the increased programming complexity.

Given this, I think it will be very hard for a small group to compete using a completely new architecture. On the other hand, you are starting with a blank slate and you are controlling the entire stack, so I hope you can use that to your advantage.

</comment></comment></comment></comment><comment><USER6> I wonder how it compares to: [http://wiki.postgresql.org/wiki/PGStrom](http://wiki.postgresql.org/wiki/PGStrom)

(in terms of architecture, not performance benchmarks)

</comment><comment><AUTHOR> In addition to GPU, Cray has recently added the Intel Phi coprocessor to its XC30 Cascade supercomputers ([http://investors.cray.com/phoenix.zhtml?c=98390&p=irol- newsA...](http://investors.cray.com/phoenix.zhtml?c=98390&p=irol- newsArticle&ID=1860101&highlight=)). I think that this supports the argument that certain problems are better handled on traditional processors than on GPGPU platforms.

<comment><USER7> The Xeon Phi resembles a GPU much more than it does a CPU. The original project, Larrabee, was at one point meant to be a GPU that competed with NVIDIA and ATI.

<comment><USER8> It's a multicore x86. It resembles GPUs only in the sense that it sits on its own PCIe board and has a lot of cores, but the programming model is just x86. It would have been very different from the NVidia/AMD competition if it had ended up as a GPU.

One of the biggest obstacles to GPGPU exploitation is being at the mercy of each vendors proprietary software stack and the resulting fragmentation & lack of openness. It's like the pre-PC era, without Unix... Larrabee might have helped. Now Xeon Phi is a niche product.

<comment><USER7> It is an x86 with very weak in-order cores, which instead have very large (512-bit) vector units. Very much like an NVIDIA "symmetric multiprocessor". If you try to program the Xeon Phi anything like a general-purpose CPU, you will not get within 5% of its power --- the programming model is essentially that of a GPU. The one thing that makes the Xeon Phi more general-purposy than current GPUs is the cache-coherence across cores.

<comment><USER8> They are programmed the way shared memory parallel machines have been used since time immemorial in the HPC world. Hundreds of cores is normal there. The same Intel software stack (OpenMP, Threaded Building Blocks, parallel Fortran etc) is used, same one that Intel markets for regular HPC.

Yeah, you have slower cores and the SIMD is twice as wide, but its _main selling point_ is that you get to keep the regular programming model - <USER2> with NVidia or AMD. Along with benefits that come with it (mature software, openness, etc).

See eg. Intel's Xeon Phi Programmin Guide for an intro: [http://software.intel.com/sites/default/files/article/330164...](http://software.intel.com/sites/default/files/article/330164/an- overview-of-programming-for-intel-xeon-processors-and-intel-xeon-phi- coprocessors.pdf)

</comment></comment></comment></comment></comment><comment><USER9> Has the guy released any code yet?

<comment><AUTHOR> I haven't seen any releases yet. One article says he plans to open source it within the next year.

<comment><USER10> Hey, MapD author here (Todd Mostak). I'm working on a release now - <USER3> it will be out by the end of the year! Would really appreciate help from anyone interested in the project - firstname.lastname@example.com

<comment><USER11> As a side note, I was excited to see that there was some geospatial support in there. That's certainly piqued my interest! How much of a focus was spatial support?</comment></comment></comment></comment>


API draft for TCP and UPD support in browsers - <AUTHOR> https://www.w3.org/TR/raw-sockets/ <comment><USER2> "Members of this Working Group have agreed not to progress the TCP UDP Sockets API specification further as a Recommendation track document."

</comment><comment><USER3> does it even matter what 'w3' does anymore? doesn't all the major browsers follow 'whatwg' now?</comment>