The disposable academic: Why doing a PhD is often a waste of time - <AUTHOR> http://www.economist.com/node/17723223?story_id=17723223 <comment><USER3> This article only take the money value of PhDs. It forgot the most important stuff in doing a PhD: Networking. Doing PhD is like doing SEO in the real world.

First, you need to pay attention to your supervisor, select a good one, one ready to trust you and give you freedom of action.

Second, grab a university where there is effectively budget for you to travel to conferences and meet people.

Then, work hard and network a lot.

I am French but did my PhD in Denmark (DTU), it was 3 years with a very good salary, with a lot of travels all over the world, with an insane level of networking. Now, after some work in a company, I have setup my small consultancy, the quality of the network I have from my PhD is a gold mine.

If you do your PhD to just enter in a company with a higher salary after some years of feeling like a slave, you are doing it for the wrong reason.

<comment><USER4> Your experience is completely atypical.

Most PhD students -- at least the ones I know in the states and overseas -- spend most of their time in school trapped in a lab or office. A few make time to "network" with people outside the department, but most have to be forced to socialize with a broader audience than can be found at the weekly beer hour.

The far more common pattern for a PhD student is to spend years busting his/her ass in near-isolation to accomplish research goals and graduate, only to find that it's hard to get a job without real-world contacts. So you're absolutely correct in the sense that PhD students _should_ be networking, but it just doesn't seem to happen very much in practice.

<comment><USER5> So the PhD students you know don't go to conferences and the like? Odd.

<comment><USER4> They did...but the one or two conferences you attend a year as a student isn't even close to what I'd call "networking". And frankly, that kind of interaction doesn't get you closer to a job, and it doesn't matter even a little bit for getting a professorship, unless you're giving a major talk (which, in all likelihood, you aren't).

The best networking I did in grad school was attending startup-related events. That got me my first paid gig, which led to greater street cred as a developer. Attending events held by the career center was a close second, because those led to interviews. Everything else was fluff.

<comment><USER6> Although PhD is a lot of work, its non-fixed schedule allows for some kind of freedom that you can use for networking. For example, PhD is a great time to be involved with open source projects where you can significantly contribute to, which can bring a lot of valuable opportunities if you're good at it and the project fills a marketable niche.

I know that my PhD completely changes the nature of jobs I can hope to get - not really because of what I learned directly at my PhD, but for everything else.

</comment></comment></comment></comment></comment><comment><USER7> I've always explained to my friends and family that the only real requirement of one passing a PhD is stubborness (or tenacity if I'm feeling charitable). It's certainly not intelligence that's the determining factor, although there is a minimum threshold you need to be over. You have to be stubborn enough that despite all the crap the Economist article is describing, you still want that certificate.

But there is real value in doing a PhD at a prestigious university: it opens doors. Many many doors. I think of it as a cognitive short cut for others that, magically, you're now someone worth listening to. I actually don't like this, but that's what I've observed on multiple occasions.

<comment><USER8> I dunno. I think they let me out with an honorable discharge because I might have made too much trouble for them otherwise.

</comment></comment><comment><USER9> On underpay: this varies highly by country. I am a PhD candidate in The Netherlands, and am employed by the university for four years (as most PhD candidates here). This gives around modal income, a 13th month of salary, holiday allowance, and about two months of holidays per year.

This is a bit less than one would earn going into business immediately, but it buys you a lot of freedom. The education/research split is 0.2/0.8 FTE. There are specific goals with respect to the research project, but other than that there is plenty of time to pursue your interests.

Our university tried to implement a scholarship/bursary system, which was not welcomed by potential Dutch PhD candidates. Foreign candidates do not seem to mind as much, since such scholarships are common in other countries. In my opinion, the scholarship system was a bad move, since pursuing a PhD becomes less attractive to the best of students, due to higher wages in the industry. In the end the scholarship system was shot down by the court (they see a PhD as a normal employment), and seems to have vanished for the time being.

Conclusion: you get what you pay for. Higher PhD candidate wages equals less PhDs, but more high-quality PhDs. With lower wages or scholarships universities can have more PhD candidates, but you will probably lose out on talent who'd rather go to the industry, and the PhD population has a miserable life (low income, long working hours).

<comment><USER10> It kind of depends on your point of view, I suppose. Let's take a look at two examples.

> Example 1: Highschool dropout with no advanced education earning minimum > wage; 23 years old:

Gross minimum wage for 23yo and above € 1424,40 per month, assuming a 40h workweek. Usually with paid overtime and some benefits depending on employer.

> Example 2: Student who excelled at high school until 18, completed bachelor > at 21, completed master in science at 23, started PhD at 24:

Gross wage[1] €2000 per month, with realistically a 45h to 50h workweek. Better benefits and usually a 13th month. Intellectually more challenging work (probably), but few career possibilities in the academic field.

\--

Also you have to take into account that the grad student has to pay substantially more in taxes than the minimum wage employee. The difference was only 1.5x to start with, after taxes the PhD student will probably only earn 25% more than the minimum wage employee. Just for the record, I'm not arguing against education here, or even making any statement about whether it makes sense to do a PhD. Just adding some numbers because your message makes it seem like PhDs are well compensated given their intelligence and the work they have to put in. From my point of view they're ridiculously underpaid.

A few of my friends are grad students, and they all live in 600 square feet (55 meter squared) apartments. It kind of sucks to live a 600 square foot apartment until you're 29-30, with no substantial savings for a down-payment on a house for after you graduate.

Source 1: [https://intranet.tudelft.nl/live/pagina.jsp?id=91ae4d5c-5d21...](https://intranet.tudelft.nl/live/pagina.jsp?id=91ae4d5c-5d21-418c-ac03-e5b56efcd202&lang=en)

<comment><USER11> As a phd in Switzerland, one can only dream about a 55 square meter apartment. O well, doing research is good for the soul, isn't it?....

</comment></comment></comment><comment><USER12> Nice read. Speaking as a PhD I am okay with the PhD certificate having no value (you don't deserve extra earnings for having the certificate). It was my intent to learn some valuable things during the degree process, and I did.

<comment><USER13> Exactly my sentiments. I'm currently in a PhD program, but not because I intend to be in academia. I love the field I'm studying, and I just felt like doing it instead of joining the workforce. I'll probably learn a cool thing or two. Why not?

There are a decent number of ding dongs in PhD programs too. The level of ding dong-ery doesn't seem to change wherever you go.

<comment><USER14> For me earning a PhD was not about the money or wealth creation. It was about the chance to work on a exciting research project that could make a real difference and contribution to scientific knowledge.

Besides, in the UK at least the scholarship funding is not bad at all. I found the £12K per year tax free funding was easily enough to be comfortable on whilst doing my research.

<comment><USER13> Agreed. PhD's in the US that pursue the hard sciences and engineering are generally funded fairly well.

<comment><USER15> I think you could say that they are funded well, in the sense that no one should be paying out of pocket, but that is different than saying that they get paid well. It depends a lot on school, location, and (possibly) subject.

<comment><USER13> I think the typical engineering PhD major makes close to the equivalent of 12,000 Pounds. It's usually around 16-18 starting from what I know. When you're doing something that benefits mostly yourself (getting a degree), making that kind of money is getting paid well, in my opinion.

</comment></comment></comment></comment></comment></comment><comment><USER16> (Crosspost from my comments at economist.com:)

Paul Halmos, a famous mathematician, was often approached by undergraduates who asked him if he thought they should go to grad school. He gave all of them the same advice: "No."

Now mind you, he was extremely enthusiastic about academia, and he would cheerfully encourage students who didn't immediately walk away, but insisted that they really wanted to do academic research.

I quit a well-paying job [added for HN: at a late-stage startup, no less] to slog through a difficult, low-paying PhD program and it was the best decision of my life. It was not a "practical" decision, certainly not for my earning prospects, but I wanted to do advanced research more badly than I wanted to do anything else.

The Ph.D. is designed to introduce you to the world of academic research and prepare you for a career as a professor. Full stop. I have no problem whatsoever with anyone who enters a Ph.D. program for any other reason, but they should not come with illusions about what they are getting into.

<comment><USER17> The problem is that the people who are doing it to become a professor are playing a game that is stacked against them. And if/when you lose that game you're well behind your peers in opportunity cost (see my other post).

I know several brilliant scientists (postdocs and PhD students) from my time at Princeton who had / are having a very hard time finding an academic job. At some point even the purest motivations will succumb to feeling used in these circumstances.

<comment><USER16> Fair point.

In math it is sort of hard to outsource the boring parts of your project to people working beneath you, so I didn't hear people complain that they were getting used. But I can imagine that this might not be the same in other disciplines.

</comment></comment></comment><comment><USER18> The assumption in the article, and in most of this discussion, and of our society if not our civilization in general, is that the only things that matter are money and jobs (a.k.a. money). What pinched, impoverished excuses for human beings we are.

<comment><USER19> Really? The article makes it sound to me like a PhD isn't a good idea either from a monetary standpoint or from the standpoint of being satisfied.

"One thing many PhD students have in common is dissatisfaction. Some describe their work as "slave labour". Seven-day weeks, ten-hour days, low pay and uncertain prospects are widespread. You know you are a graduate student, goes one quip, when your office is better decorated than your home and you have a favourite flavour of instant noodle. "It isn't graduate school itself that is discouraging," says one student, who confesses to rather enjoying the hunt for free pizza. "What's discouraging is realising the end point has been yanked out of reach.""

"Workers with "surplus schooling"—more education than a job requires—are likely to be less satisfied, less productive and more likely to say they are going to leave their jobs."

<comment><USER20> The article also talks about having an office with better decorations than one's house! Now they'll never get asked to the school dance!

</comment></comment></comment><comment><USER21> If anyone is curious, here are the median starting salaries for graduates from Stanford's CS/EE departments (survey was self selecting so the numbers are probably skewed up, but there were a large number of responses):

Undergrad: 80k Masters: 87k PhD: 114k

<comment><USER22> The PhD hits the workforce ~6 years later than the undergrad. It is entirely feasible, in fact most probable, for a 80k undergrad to hit ~115k in 6 years.

<comment><USER23> However, salary usually climbs fastest in the first few years after starting, so if they are both at 115K at some point, the next year the PhD may be at 126, while the undergrad get stuck at 118. This difference only increases and the end-of-career opportunities for the PhD are also larger: on average, he can attain jobs for which he will be preferred above the undergrad, who gets stuck at a lower rung. Of course, this is all 'on average'.

</comment></comment></comment><comment><USER24> A PhD is all about wealth creation [1]. Also many of the technologies we take for granted were due to "lowly" PhD students toiling away. I can't even imagine how without decades of dedicated academic effort we can have semiconductor based electronics, massively layered software that work seamlessly, etc. Maybe the author can. "The fiercest critics compare research doctorates to Ponzi or pyramid schemes." The "fiercest critics" don't want to and can't see or think beyond their noses.

<http://www.paulgraham.com/wealth.html>

<comment><USER25> Actually most semiconductor technology was developed by industry. Nowadays it is often too expensive for a university to do any cutting edge IC research without industry partnerships.

<comment><USER26> Yeah, I'm beginning to worry about some CS disciplines, especially Software Engineering. SoftEng appears to be playing catch-up to industry in a number of sub-disciplines, due to the pace of knowledge sharing across the net exponentially increasing. It feels like unit testing might be the last huge thing academic SoftEng contributes.

There's going to have to be a little bit of realignment, I think, and some disciplines are going to have to start letting go of being "we're the practical ones and you could deploy our tech tomorrow" to pushing out a little bit, maybe incorporating things like AI and stuff.

</comment></comment></comment><comment><USER27> _PhD graduates do at least earn more than those with a bachelor's degree. A study in the Journal of Higher Education Policy and Management by Bernard Casey shows that British men with a bachelor's degree earn 14% more than those who could have gone to university but chose not to. The earnings premium for a PhD is 26%. But the premium for a master's degree, which can be accomplished in as little as one year, is almost as high, at 23%._

I wonder what this number would be like if you cut the number of academic jobs in half. Because that's what I see happening in the future.

I mean, I don't want to say the people on HN are smarter than the rest of the world but we do tend to spot trends earlier only because of the collaborative nature of the site and that people here actually evaluate the world around them. Which means societal trends can become apparent here before the rest of the world realizes they're going on.

So I think it's instructional that we see a "Higher Education is broken" item about every couple of days. In the years to come I suspect we'll see a lot more competition from lower priced options that provide education using online tools and who don't need armies of research fellows and "postdocs". Combine that with Governments making serious budget cuts and I think you'll see the demand for PhD's plummet.

<comment><USER13> I have a feeling that you're equating a PhD with a Master's or Bachelor's degree. The ultimate goal of a PhD is to prepare you to do 'real research' in that you're trained to collaborate with academics, dig through academic materials, compile results, and ultimately add to the knowledge of mankind. This is fundamentally different from a BS or MS. Replacing the academic setting for this, in my opinion, would be suboptimal, if not detrimental. This is academia in its purest form almost...basically what it was originally intended to do! Not train people for the job market, but to further the actual academic studies of everything!

What you're forgetting is that if there are a ton of hungry PhD's running around looking for work where your Joe-Master's Degree or Jim-Bachelor's Degrees are looking for work, chances are they may displace quite a few of those guys if they look to enter the standard work force. Not because a PhD makes one inherently better, but because it seems like so many employers look at paper qualifications, and actually a lot of PhD's did work REALLY HARD to get their PhD...so at least they've shown they can work really hard on something and come up with a contribution.

Also, government budget cuts never seem to affect military research, where a TON of research dollars stems from. I have a feeling that the government will get its house in order without massive research spending cuts.

</comment></comment><comment><USER28> The sole purpose of some PhDs is to serve as cheap labour for the research efforts of a professor.

<comment><USER29> Some, yes. But definitely not all. My supervisor only had a very vague notion of what I was doing most of the time (to be fair, _I_ only had a very vague notion of what I was doing most of the time).

<comment><USER15> Did your supervisor think your work was good enough to attach his name to? I think that counts in the cheap labor argument, even if you aren't just a worker on the assembly line.

I think good advisors (should) enjoy supervising for the sake of supervising, but that doesn't mean it doesn't also boost their CV's.

<comment><USER29> _Did your supervisor think your work was good enough to attach his name to?_

We did co-author a paper later, but it wasn't about anything in my thesis. I certainly didn't hear any indication from him that he disapproved of my thesis, though -- he was just happy to let me work independently, and it would have been entirely improper for his name to appear on work he hadn't contributed to.

<comment><USER15> _it would have been entirely improper for his name to appear on work he hadn't contributed to._

I do agree with that, but I think it's far from rare in academia.

</comment></comment></comment></comment></comment><comment><USER30> Not all PhDs are the same. They vary in duration and difficulty from country to country, school to school and field to field.

For instance, you are not guaranteed a PhD in Chemistry from Berkeley even if you go for 8 years. You don't get one until your research pans out.

This is very different from some countries where you're essentially guaranteed one after 2-4 years.

<comment><USER15> In the US (and other places I assume), the endpoint of your PhD is determined by two things: successful completion of your research and your advisor's approval. (You could argue that your advisor's approval is the only thing). That means that the time to completion is an unknown.

This is a such a different feeling to what students I have met from the the UK/Europe experience, that it's almost like a different degree. They typically have 3 years to complete their projects, but I have no idea what "completion" means in that context.

The other one is funding, in that American PhD students could potentially be funded indefinitely, but that's a different issue...

<comment><USER31> Certainly in the UK (based on my experience in the 90s) completion of a PhD meant getting a thesis written up, getting it approved by your supervisor and then sitting an an oral examination with your supervisor, an internal academic from the same department and an external examiner who is an expert in that field. The usual rule of thumb was that you probably should have published 3 decent papers in that time.

The "3 years" came from the length of time the standard PhD student was funded for - there was no guarantee that you would finish within the three years. Quite a lot of people did PhDs while working as Research Associates - <USER2> you were typically on a 3 year fixed contract, paid a decent salary but your focus then was the research project paying your wages - not strictly your own research. Most people I knew doing it this way took between 4 or 5 years - some as long as 7 or 8 years.

</comment></comment></comment><comment><AUTHOR> Found it from a post on Overcoming Bias [http://www.overcomingbias.com/2010/12/how-hopeless-a- phd.htm...](http://www.overcomingbias.com/2010/12/how-hopeless-a-phd.html) Robin's last line is: "Overall, my estimate of the chances of success went up after reading the article."

</comment><comment><USER32> I'm interested in doing a PhD and I'm not concerned if it doesn't increase my salary - I'm totally happy if it just opens some doors to work in interesting fields.

However - I am quite concerned that it may _decrease_ my salary or even make me border line unemployable. Right now I have a good number of years experience in software development under my belt. I can search for jobs on any given day and find hundreds or even thousands of opportunities that I would be able to make a credible application for. I'm quite concerned that once I have a PhD many of these people would look at my PhD and turn me down as overqualified.

I'm curious if anyone with strong software skills has any experience in what the effect of a PhD is on employability?

<comment><USER33> I did a PhD after working in the web/software world for a few years. I'm now back in software, and the PhD doesn't seem to have done my employability any long-term damage. But of course there's an opportunity cost.

</comment></comment><comment><USER34> A lot of the issues raised in this article (low or zero stipend, poor job prospects after graduation) are more appropriate if you're talking only about the social or life sciences.

In science and engineering (engineering in particular), PhD students rarely have to pay their own way, with stipends around $25000 or even up to around $30000 with a fellowship. The job prospects are certainly a lot better as well- since research funding in the US is very much focused on science and engineering.

</comment><comment><USER35> Philip Greenspun has addressed this to some extent, although focusing on graduate study and advanced degrees in science and engineering: <http://philip.greenspun.com/careers/women-in-science>

</comment><comment><USER36> It's the economist (which I like and often listen to and read), however doing a PhD, imho, is not about money. More extreme; if you are doing a PhD for the money, you are not really worthy. It's about getting an academic career, which means research, which means going hardcore deep into the things you value and are passionate about. It's about shaping your head to be a scientist, not a millionaire. If you do the work to become get a PhD, you know that you'll be in it for a long time and you do not belong to the 'normal workforce' or to the 'become rich people'. PhDs hardly ever become rich, nor do they particularly want to (at least not the ones I have met). In my experience a PhD doesn't make you more qualified for software related jobs than a MsC, probably less so actually. It's a different mindset; you are a scientist or you want a good, commercial job. You can have both, but don't whine if the effort of the study didn't pay off; it was not meant for that.

</comment><comment><USER37> A phD; you put in time, humanity gets out knowledge. Presumably it's only waste of time if the knowledge humanity gets out wasn't worth the time put in. This article seems to think that a phD is for turning time into money.

</comment><comment><USER38> Depends on how you define waste. One might want a PhD because of the learning involved. Not everyone cares about money.

Oh wait, but, it's The Economist.

</comment><comment><USER39> Hum, isn't a PhD about, you know, _learning_ something? The economist eyeglass always wants to filter out everything that isn't money.

</comment><comment><USER40> I intend to do a PhD for the intrinsic value of the research and learning itself, not just to earn. There is more to life than money.

</comment><comment><USER41> Who does a PhD to get a job as an Academic? I did a PhD to have the opportunity to learn something that nobody else did.</comment>


The mmap() copy-on-write trick: reducing memory usage of array copies - <AUTHOR> https://pythonspeed.com/articles/reduce-memory-array-copies/ <comment><USER2> Yep, virtual memory aliasing comes in handy when you're working with data structures that can have page-level granularity. One of my favorite tricks is to create a 'magic ring buffer' by mapping two contiguous virtual pages to the same physical page, so that the wraparound is handled transparently by the MMU at no extra cost.

<comment><USER3> Wouldn't this only handle wraparound just once? You would still need to wraparound eventually or you will fall off the second page.

Still it sounds super cool. Do you have an example implementation you can link to?

<comment><USER2> No. Suppose I have a ring buffer, and the dashes represent the first page, and the tildes represent the second page (which just aliases the first page), and each dash/tilde represents a single byte:

[https://i.imgur.com/NfZTICG.png](https://i.imgur.com/NfZTICG.png)

p = memory address of the beginning of the first page

o = the head index

s = the size

C = capacity = size of page

Now suppose I wish to append 10 bytes. I would simply do:

memcpy(p + (o + s) % C, input_data, 10)

s += 10

Or, to remove 15 bytes from the beginning, I would do:

o = (o + 15) % C

s -= 15

Because any given 'slice' of the ring buffer's space can be represented as a contiguous range of memory (thanks to the second page), I can use the already optimized memcpy routine for adding and removing data at the beginning or end of the buffer. But I still need to make sure that the head index is always updated modulo the capacity, or it will increment unboundedly, as you say.

As you can tell in the above example, I'm not adding/removing individual bytes. Magic ring buffers only make sense when you frequently need to add or remove several elements from the ends of the buffer. It's particularly well suited for when you have a stream of data and need to operate on it in chunks.

Here's a GitHub repo that contains an implementation of the magic ring buffer: [https://github.com/willemt/cbuffer](https://github.com/willemt/cbuffer)

<comment><USER3> The memcpy example cleared it up for me. That's awesome!</comment></comment></comment></comment>


Never Create in a Bubble - <AUTHOR> http://katygardiner.com/creating-in-bubble.html

<comment><USER2> I was ready to discount this as one of the most meaningless and vapid things I had ever read, but then I realized that she wasn't referring to economics bubbles.</comment>


Facebook wants to redline your friends list - <AUTHOR> http://www.psmag.com/nature-and-technology/mo-friends-mo-problems-might-have-to-defriend-joey-with-the-jet-ski-bankruptcy <comment><USER2> Two sentence summary from the actual patent:

>When an individual applies for a loan, the lender examines the credit ratings of members of the individual's social network who are connected to the individual through authorized nodes. If the average credit rating of these members is at least a minimum credit score, the lender continues to process the loan application. Otherwise, the loan application is rejected.

[[http://patft.uspto.gov/netacgi/nph- Parser?Sect1=PTO1&Sect2=H...](http://patft.uspto.gov/netacgi/nph- Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=%2Fnetahtml%2FPTO%2Fsrchnum.htm&r=1&f=G&l=50&s1=9100400.PN.&OS=PN/9100400&RS=PN/9100400)]

That could really help divide society even more. Thanks Facebook?

On a second thought, shouldn't it be easy to dismiss this patent as prior art? Certainly someone somewhere has done filtering based on a friend list before.

<comment><USER3> Technology is superb at remembering everything and helping us sort and cherry pick and focus on whatever segment of data we like. And an unintended consequence is things like this where it becomes even easier for us to segregate ourselves, which is a natural human tendency. What did we do as a society when we only had limited data on a person with which to judge them? We took more chances and went with the flow. That leads to serendipity and opportunities for potential that is sitting on the sidelines. I'd argue that this is a better methodology for society as a whole; a little bit of chance/risk. It promotes patience and normalizes the act of mingling with different peoples. The merit of Facebook's premise here I think is a bit flawed to begin with (that you can predict ones credit rating based on their friends. Are there even studies saying such?), but the real point is the consequences of a system like this being widespread. I feel that most peoples Facebook friends are close to their age and their geographic location. This could have a biasing effect based on ones age and socioeconomic status thereby exaggerating the negative or positive aspects of the group you associate with. What little edge you worked to have above your peers with your credit score could be normalized away just because of who your friends are.

</comment></comment><comment><USER4> Hence quoting McAfee from his AMA "Be aware that everything that is free is not free! There is nothing free in this world. People don't spend $1M on an application to give it to you for free. They have a reason, and it's not good for you, I promise that."

</comment><comment><USER5> From a link[0] in the article:

> Facebook bought the patent from Friendster in 2010.

[0] [https://venturebeat.com/2015/08/04/facebook-patents- technolo...](https://venturebeat.com/2015/08/04/facebook-patents-technology- to-help-lenders-discriminate-against-borrowers-based-on-social-connections/)

</comment><comment><USER6> When I briefly worked in payday lending, I learned there were certain credit approval methods that were categorically illegal. And we had to be auditable, so wasn't like we could just bury the crime in algorithms.

Address information, e.g. living in a poor neighborhood or living near defaulters could not be used in credit scoring. Race could not be used in credit scoring. I forget what else, but there were some regulations in place. Watch for Facebook to lobby to have those eliminated, or pursue technology that somehow allows them to hide or skirt use of unlawful scoring methods.

</comment><comment><USER7> Ugh, this is a terribly click-baity article.

Facebook has really, really good people working on machine learning. What Facebook wants to do is use whatever features it can scrape from your profile to accurately price your odds of defaulting on a loan.

It's very unlikely that removing a few 'poor' friends will improve your credit score. There's likely to be many features that will be highly correlated all of which will enter a statistical model.

Keep in mind - actuaries already use all sorts of information about you in order to price a loan. This will just make the pricing more accurate, making (on average) cheaper loans.

The downside of more accurate loan pricing is that it might lead to de-facto discrimination against groups that are classified as high risk. I believe the government has a role there to provide high risk pools, because the alternative will be to push those people towards black market loans.

<comment><USER8> >> actuaries already use all sorts of information about you in order to price a loan

That is totally true and that is not the problem. The problem is that after they used all the available data to estimate your probability of default with an accuracy of 0.0001% and based on that they refuse to give you a loan, you, as a tax payer, still have to save their and the shareholders' ass once in a decade because they lost all of their and your money on the stock market...

</comment></comment><comment><USER9> I finally have a logical reason to refuse to reactivate my Facebook account. Thanks, Facebook!</comment>


10 ways to procrastinate and still be productive - <AUTHOR> http://themicrobusinessexperiment.blogspot.com/2007/04/10-ways-to-procrastinate-and-still-be.html <comment><AUTHOR> I'm posting a link to my own blog because I wrote the post intending it to be tongue in cheek. Much to my surprise (and amusement) over 50 people have bookmarked it on Del.icio.us.</comment>


OCaml for the Masses - <AUTHOR> http://queue.acm.org/detail.cfm?id=2038036

<comment><USER2> "Yet functional languages never really made it to the mainstream"

JavaScript development these days is getting pretty darn close to what I would consider 'mainstream' functional programming.

Heavy use of both first class and lambda functions, and closures have been standard practices for years now. And thanks to libraries like Underscore.js partial application and the use higher order functions like map/filter/etc are also becoming very common place.

I'll absolutely agree that what we see is not 'pure' functional programming but neither is a good deal of real world Common Lisp.

Anyone who has done a lot of programming in Lisp or Haskell has probably bemoaned the fact that many people are quick to dismiss so many great and useful tools these langauges provide. But I definitely think we're starting to see a trend where the most genuinely useful features of fp are becoming mainstream.

<comment><USER3> There is a great deal of what functional languages _can_ do that isn't (yet) being absorbed—especially from the statically typed areas, where you can statically verify things like the length of lists using GADTs or other impressively strong compile-time guarantees—but the bits that have been absorbed are useful enough and general enough that those elements of functional languages are already conferring huge benefits to 'mainstream' programming. I suspect that, by the very nature of 'mainstream' programming, it tends to absorb some but not all features of other paradigms, leaving things that are strongly esoteric aside but still grabbing useful features. This happened before with object-oriented programming, where the Java/C++ world incorporated somewhat watered-down elements of Smalltalk. We still don't see full-blown message-passing OOP in most mainstream languages, but we see enough useful features of OOP to make a difference.

I don't know, in general, that they're the "most useful" if utility is defined as conferring the ability to write better programs more quickly, more understandably, &c. But they are "most useful" in the sense that they confer such benefits with a minimum learning curve and with little deviation from the already understood mainstream programming paradigm. For example, monads are an incredibly useful feature, but the (perceived) barriers to understanding are high enough that no mainstream language will feature them as centrally as Haskell does.

I don't mean this as a sleight against anyone, at all—merely as a description. There are a lot of useful things which are outside the purview of the mainstream, and there's no reason to expect that nonetheless useful features of fp will necessarily make it into the mainstream. (And there are certainly cases where functional programming as a whole, and not just cribbed features, is desirable and advantageous, as in Jane Street's case, so I do hope that more non-academics come to see it as a valid paradigm for certain tasks.)

</comment></comment><comment><USER4> To someone who has only just looked at Haskell (and not gotten very far) the syntax looks very similar. Can anyone speak to the differences between the two languages?

<comment><USER5> OCaml is strict and impure, Haskell lazy and pure. Syntactically they're pretty different, but since they both make heavy use of the H-M type system you see pretty similar semantic operations across the board. Probably the first thing that sets them apart is that IO is a lot more direct in OCaml, a direct implication of strictness and impurity.

Extensions to the type system are really different, OCaml's is more flexible and specific, but Haskell's is very convenient, but by the time that becomes an issue you'll probably know a lot more of how the languages differ.

<comment><USER6> > Syntactically they're pretty different,

Did you want to say that they are pretty similar? Or semantically different?

<comment><USER5> Syntax is different, semantics are informed by the type system so programming in one after being familiar with the other is pretty concept-friendly.

</comment></comment></comment></comment><comment><AUTHOR> Seems like financial/quant computing would be a natural fit. The author mentions ocaml being well suited for general programming needs - Anyone using ocaml (or haskell/f#/etc.) for real production code?

Edit: should have mentioned this earlier for an example - xmonad is written in haskell

<comment><USER7> Several investment banks are using these languages in production (BarCap (F#) and Standard Chartered (Haskell) are the names that come immediately to mind).

And of course Minsky's employer, Jane Street Capital, writes everything in OCaml.

There are plenty of commercial users outside the financial sector too but those users tend to be smaller companies.

<comment><USER8> Whenever I see OCaml brought up, it is nearly always by Minsky. Is it that very few people use it in general? That it is particularly well suited to the problems a private hedge fund faces (oxymoron I know, but I don't know how else to describe Jane Street)? Or that Minsky just happens to be vocal in the internet circles I tend to gravitate toward?

<comment><USER6> Jane Street is a `prop shop' in the lingo of the industry.

You are right, OCaml doesn't see too much use outside of Jane Street, Citrix and a few others. I think the academics mostly left it in favour of Haskell. Also the owner of the OCaml project didn't embrace community development early on. It's more like a cathedral than a bazaar. They are signs showing to change, but it's probably already too late for mainstream popularity.

</comment></comment></comment></comment><comment><USER9> For anyone who wants to try out the language, here's an OCaml tutorial with an in-browser interpreter: <http://try.ocamlpro.com/>

<comment><USER10> Hmm, only 2 lessons and nothing more than I figured out before I even started them. Hopefully they'll expand in the future.

<comment><USER9> It strangely skips to lesson 20, where you get a taste of some esoteric features and syntactic conveniences from the latest release.

</comment></comment></comment><comment><USER11> seems down, google cache : [http://webcache.googleusercontent.com/search?q=cache:7Ikgs4E...](http://webcache.googleusercontent.com/search?q=cache:7Ikgs4EiZ4UJ:queue.acm.org/detail.cfm%3Fid%3D2038036+&cd=1&hl=en&ct=clnk&gl=us)</comment>


Writing great documentation: technical style - <AUTHOR> http://jacobian.org/writing/great-documentation/technical-style/

<comment><USER2> This is, in general, an awesome article.

The one thing I'd add is that, unlike most newspaper articles, technical documentation can be _executable_. I was so excited when I realized the implications of that I nearly had to sit down. (Yes, I live a boring life.)

I did a bit of that with the documentation to A/Bingo: the documentation is presented in a live demo, the formatted sample code is automatically composed from what I'm actually running (and thus gets automatically patched without me having to do anything special about it), and I copiously abuse my favorite Javascript effects (lightboxes, etc) to make the presentation flow better that linear text.

For example, often in tech documentation you want to focus attention on a portion of the code buried in a bunch of boilerplate. (Or maybe that is just those of us who write Java all day.) You can bold the bits you want to emphasize, or you can hide the boring details with Javascript and let only those folks who need them look them up.

My opinion is this is better than linking to a fuller version on another page, as it interrupts the user's flow less. It is also more readable than a few lines of bold text studded in the boilerplate, and more usable than omitting the boilerplate and producing code which doesn't function if copy/pasted.

</comment><comment><USER3> I'm really surprised you didn't stress the importance of having useful fragment identifiers for every section, and using references to them liberally -- and not just the obvious foo \-- tertiary links inline in prose like Suck.com popularized in the olden times.

Some nitpicks:

 _and you need to understand why I'm putting the commas and semicolons in this sentence inside the quotes, not outside_

I know why you do that, but it doesn't make it any less bullshit. It's not like you're doublestriking on a monospaced typewriter or manually kerning on a press! Don't pollute what are ostensibly quotes with exterior punctuation. At least you're using the oxford comma :)

 _Mostly, this means using emphasis and strong text frequently. I usually avoid too much strong because it's looks like I'm just aping Jakob Neilsen, but whatever._

An apter and and more pejorative example for today's whippersnapper would be Jeff Atwood. In my opinion using  and  with default styles is worse than useless, just use  and , they aren't poisonous. I did appreciate the  as yellow-highliter fad that 37signals kicked off years ago.

<comment><USER4> Actually, the commas inside the quotation marks is an American English thing. Regardless of logic it's completely consistent with usage in the States. In the UK it's not.

That said, where to place the commas, full stops, and semi-colons is pretty tricky no matter what side of the Atlantic you're on.

<comment><USER5> I have particular qualms with this in technical documentation. For example, I'll often be talking about a string or command and put it inside quotes to make clear what is part of the string or command. If that's at the end of the sentence, the rules dictate my period should go inside the quotes as well. I can never bring myself to obey that.

<comment><USER4> I can understand where you're coming from but I've never run into that issue because I never quote commands or keywords, instead I change the typeface. Still, I'm a huge fan of altering grammar in small, consistent ways for the sake of clarity (that's where style guides come in).

</comment></comment></comment></comment><comment><USER6> One written tic I have in my technical writing is to use the adverb "simply" before an instruction. It was pointed out to me early in my career that this is worse than noise... it can make the reader feel bad or annoyed if they don't succeed or perceive it as simple. I now always make a second pass to remove any potentially condescing phrases.

</comment><comment><USER7> I'd like to comment the rule of "omit needless words". Generally I agree with that, but if it is applied rigorously across the whole article, I find it quite difficult to read, despite each sentence being logical and clear. It just needs a greater concentration then, like in this very article - I was tired after reading it (English is not my mother language).

I prefer Mark Pilgrim's diveinto____ style, where the text has more "space" and feels lighter. In my opinion, it is not always better to make the sentence shorter.

<comment><USER8> I think a lot of people misunderstand the "omit needless words" rule. If you've taken out so many words that the text is no longer easy to read, that means you actually need some of the words you've omitted. :)

</comment></comment><comment><USER9> One thing I'd emphasize is that all writers begin with imitation. It's how the human brain learns new things and so you might as well abuse that.

Find a writer whose style you admire. Figure out _why_. Practice, practice, practice. But realize that until you're speaking with your own voice you haven't even begun to yet walk.

</comment><comment><USER10> Documentation should draw out, using good language, the exciting bits. It gives you a feel for what a piece of software does especially well. When a developer commits an awesome feature that should be reflected in the documentation.

</comment><comment><USER8> Jacob's a good writer, and I'm not surprised that Django is so well- documented. I just have one small quibble with this piece:

> You need to understand the difference between "its" and "it's";

If the problem is that people conflate "its" and "it's", the solution is not to keep placing them side-by-side.

What got me to stop mistaking the one for the other was to understand "its" not in opposition to "it's", but as part of the set of possessive pronouns: "my", "your", "his", "her", "its", "their". Note that none of these pronouns have an apostrophe.

<comment><USER11> My solution: drop _it's_ in favor of the antiquated (or timeless) _'tis._ Do this in speech too to give your elocution style a bit of the whimsical and refined air of an older time. ;)

</comment></comment><comment><USER12> Jerry Pournelle on writing:

<http://www.jerrypournelle.com/slowchange/myjob.html>

</comment><comment><USER13> A hacker-friendly book on style is _Style: Toward Clarity and Grace_. I picked it up off a recommendation on Richard Gabriel's site. _Style_ breaks down the different aspects of "good" writing as if they were features, and refactors prose to gain those features.

<comment><USER14> That's the book commonly recommended on Language Log (<http://languagelog.ldc.upenn.edu/nll/>) also. Geoffrey K. Pullum there is highly critical of Strunk and White.</comment></comment>


Why Do a Startup? - <AUTHOR> https://studentrnd.org/blog/why-do-a-startup

<comment><USER2> I thought this might just be fluff but it turned out fluffy and good.</comment>


Neuromorphic computing implementation of pole balancing - <AUTHOR> http://neuromorphic.eecs.utk.edu/pages/research-demos/ <comment><USER2> They use evolutionary search to discover spiking neural networks whose response dynamics can solve a control task. This is a fascinating approach, but one that I've only ever seen as a means to do theoretical neuroscience: A way to obtain interesting spiking networks whose dynamics we can study in the hope of developing mathematical tools that will help understand biological networks.

But here, from the claims in the post and the lab website, it sounds as if the goal is in application: Creating better, more efficient controllers. This comes across as a little detached from the applied machine learning literature. At the least, I missed a comparison to reinforcement learning (which has a history of learning to solve this exact task with simpler controller designs and most likely shorter search times) and also to non-bio- inspired recurrent networks.

One more point: Even if I follow along with the claim that 'deep learning' approaches don't have memory (implying recurrent networks aren't included in that label), I want to point out that this particular task setup, with positions/angles as well as their rates of change provided, can be solved by a memoryless controller. It would have done more to highlight the strengths of the recurrent network approach if a partially observable benchmark task had been used, e.g. feeding positions and angles only. Much more difficult high- dimensional tasks e.g. in robotic control are tackled in the (deep) reinforcement learning literature among others.

</comment><comment><USER3> Two-pole balancing (2009):

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

Double inverted pendulum balancing (2015), a much harder task:

[https://www.youtube.com/watch?v=8t3i2WPpIDY](https://www.youtube.com/watch?v=8t3i2WPpIDY)

Double inverted pendulum balancing with a physical cart (2011), a much much harder task:

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

Triple!!! inverted pendulum balancing with a physical cart (2011), a much much much harder task:

[https://www.youtube.com/watch?v=cyN- CRNrb3E](https://www.youtube.com/watch?v=cyN-CRNrb3E)

</comment><comment><USER4> The single inverted pendulum balancing problem has been solved using neural nets, fuzzy logic, and nonlinear control theory. It's a standard problem in controls classes.

Here's a system learning how to do this.[1] Takes about 200 trials.

Here's the _triple_ inverted pendulum balancing problem, solved using feedforward control.[2]

[1] [https://www.youtube.com/watch?v=Lt- KLtkDlh8](https://www.youtube.com/watch?v=Lt-KLtkDlh8) [2] [https://www.youtube.com/watch?v=cyN- CRNrb3E](https://www.youtube.com/watch?v=cyN-CRNrb3E)

</comment><comment><USER5> Are there any non-evolutionary training methods for neuromorphic networks?

Currently, fixed architecture ANNs can solve the cartpole problem very quickly already with Q-learning or policy gradient methods: [https://gym.openai.com/envs/CartPole-v0](https://gym.openai.com/envs/CartPole-v0)

It seems like some kind of neuromorphic networks are going to be necessary for the long term AI 'dream', but there really needs to be something better then evolutionary algorithms for training, those just don't scale.

<comment><USER6> Learning algorithms remain a big issue in neuromorphic computing. So far, we have had some success with evolutionary optimization algorithms. The nice aspect of EO at the this stage of the game is that EO can reveal useful patterns and network features which could guide later learning systems.

I am working on a project right now which will require a more complex network interacting with many real world sensors, so it should be interesting to see how EO performs for such a problem. Our EO has been demonstrated to scale on parallel machines as large as ORNL's Titan, but I readily acknowledge that much more work needs to be done with learning algorithms.

</comment></comment><comment><USER7> "A Deep Learning system does not have a temporal component" but isnt that what recursive deep learning is for.

And how do they calibrate low/middle/high.

<comment><AUTHOR> Roughly speaking, low/middle/high are just buckets, each of which represents a third of the distribution for position, velocity, or angle.

We attempt to illustrate that in this image: [http://neuromorphic.eecs.utk.edu/images/graphics/Inv- Example...](http://neuromorphic.eecs.utk.edu/images/graphics/Inv-Examples.jpg)

<comment><USER7> Ok so this looks like Fuzzy Logic? Or does the system automatically determine the low/middle/high boundaries?

</comment></comment></comment><comment><USER8> I understand that some of the inputs don't affect the behavior and so don't connect to anything, but why do some of the synapses not connect to anything? In particular, what is the meaning of the two nodes above and below the outputs. They are on long chains that appear meaningless. Why did the network grow there; is it just evolutionary noise?

<comment><USER9> Unless I'm looking at it wrong, the synapse above the output takes input from 2 up and 2 to the left, which is a path that leads back to an input.

But you're right that the synapse right below the outputs has no input, which doesn't make any sense. The original generated network had a neuron with no inputs at (6,12) just to the left of the outputs, left over from the evolutionary algorithm like you suggested. We ran a program that was supposed to prune the network by removing the evolutionary noise that had no effect on the outputs. It looks like that program just removed any neurons with no inputs, leaving behind that meaningless path of synapses.

</comment></comment><comment><USER10> How was the wiring between neurons and synapses created?

<comment><USER9> There's a brief description here [http://neuromorphic.eecs.utk.edu/pages/research- overview/#pr...](http://neuromorphic.eecs.utk.edu/pages/research- overview/#programming-via-evolutionary-optimization).

Basically, the inputs and outputs are fixed, random neurons and connections are added, the networks are all tested, the better ones are changed and/or combined, and then repeat until a "good" network is found, where good in this case means balancing the pole for a long time without running into the walls.

<comment><USER10> Interesting. This could map onto a cellular automata. Do the connections evolve from left to right? Or do you start with a static size universe?

<comment><USER9> The grid size and the location of the inputs and outputs are fixed throughout the process. Are you suggesting the connections could grow left to right as it evolves? I think that'd be interesting, but I'm not sure if it would be useful.</comment></comment></comment></comment>


Big Data and the Soviet Ghosts - <AUTHOR> http://mempko.wordpress.com/2013/09/08/big-data-and-the-soviet-ghosts/ <comment><USER2> There's a lot of interesting ping-ponging back and forth in some of these technocratic / data-driven visions. Some parts of Soviet central planning were initially lifted almost directly from Western success stories of massively integrated industrial conglomerates, which had a data-driven central-planning ideology. Some of the late 19th-century / early 20th century American industrialists explicitly thought that the era of markets was over, because the messy, imperfect information transmission of the medieval bazaar would be finally replaced with scientific and statistical optimization of production, management, supply chains, etc., and the more centralized, the more scientific and efficient this process could be. This was a major argument against anti- trust legislation, that by breaking up the large trusts, America was only going to be sending itself backwards into an era of decentralized, uncoordinated, inefficient industrial production.

The Soviets pretty much agreed with the large trust owners on all these points, disagreeing only on some minor details, like ownership. There was even a vision among a certain kind of early 20th century communist (nowadays called "orthodox Marxists", somewhat derisively) that capitalism was a necessary phase whose virtue lay in developing and centralizing industrial production. The communist could just wait until the capitalists have succeeded in unifying the entire industrial sector into one large conglomerate, and then the only thing left to do for a communist revolution is knock off this one remaining capitalist, who at this point owns a giant company controlling all industrial production. Then you install the party at the top of this company, and _voila_ , a socialist, central-planned, scientific industrial sector!

Then from the 1930s American management started looking at Soviet management techniques to see if they could borrow anything back in the other direction. There were even some Soviet experiments in what today we would call "gamification", which were very interesting to Western observers, and copied in various ways [1]. One way of reconciling things was to consider a model of companies being Soviet-style internally but capitalist externally: use hierarchies, internal non-monetary rewards, central optimization, etc., up to the boundaries of the company (which would ideally be very expansive boundaries), then compete past that. And I suppose now we're at the point where using data to optimize society, another old Soviet idea, is seeming intriguing to the West...

[1] [http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2115483](http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2115483)

<comment><USER3> > One way of reconciling things was to consider a model of companies being > Soviet-style internally but capitalist externally: use hierarchies, internal > non-monetary rewards, central optimization, etc.,

I've always pointed this out in relation to large companies. They are not much different than a dictatorship or a single party totalitarian system. It comes full on with indoctrination into company culture, team building events.

Especially small towns where big factories used to pretty much own the towns, provide trash collection services, etc. If the company fired you, you had to pack up and leave. With countries, if you break rules they send you to a labor camp (prison in US). You criticize the company on Twitter you get punished.

In theory one could say well if you don't like the company you just move. In current economy not many have the option of giving their company the finger and saying "fuck you" and I switching jobs. People are desperate are willing to put up with extra hours without overtime, abuse and just to have a job.

<comment><USER4> > Especially small towns where big factories used to pretty much own the towns

Don't forget the practice of providing pay in company scrip that could only be spent in company provided stores.

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

In countries with very wide reaching conglomerates, like Japan and South Korea, I can almost predict a cyberpunk like future where you become a citizen of a company and cradle to grave live out your life in that company. Eat feed grown on company farms (farmed with company equipment), live in a company apartment, drive company cars, wear company clothes, watch entertainment on company TVs etc.

Samsung is an example of a company that I think has almost that kind of reach. And to put it into perspective, Samsung has revenue about the same as the GDP of Finland, Israel or Chile. And exceeds countries like Egypt, Pakistan, the Philippines, and Vietnam.

<comment> guard-of-terra You're too late to predict that. Employment is on the downslide, companies care less about securing workforce supply and more about attracting talent and cross-pollinating.

You could expect that 20 years ago, and to some extent it happened, but I doubt it's the future.

</comment></comment></comment></comment><comment><USER5> Everything about this is wrong. How can you compare early computer analysis by central planners in the Soviet Union to data mining employed by advertisers?

This paragraph takes the cake:

>Just as the centralized Soviet economy and computer systems produced gross absurdities in Soviet society, the centralization of information has produced vast obscurities in the lives of this generation. As demonstrated by luke warm reaction to the recent revelations about the NSA, to the Great Recession and the computerization of trade, to the perverse incentives Facebook and Twitter provide for exhibitionist behaviours, to the death march of consumerism despite the hard evidence that global warming will lead to a miserable existence for hundreds of millions of people within decades.

None of these sentence fragments have anything to do with each other. The author is so vague a reader can draw pretty much any conclusions they want from this article.

<comment><USER6> I think there's a valid comparison there, although I'm not sure the author captured it. We're being collectively manipulated by all sorts of marketing and propaganda campaigns.

Those manipulations cause us to make decisions not necessarily in our long- term interest.

</comment></comment><comment><USER3> On the side of computer controlled economy, like what GosPlan had, there is also the Chilean computer planned economy system -- Cybersyn

[http://blog.fabric.ch/index.php?/archives/1886-Cybersyn-a- re...](http://blog.fabric.ch/index.php?/archives/1886-Cybersyn-a-real-time- computer-controlled-economy.html)

In general, assuming we've already given up our privacy and it is gone forever, Google+Government can read our thoughts, email, shopping patterns, knows our positions at all time, would it be possible to even create an optimized planned economy.

<comment><USER7> > would it be possible

Apparently computer controlled central planning is performed by linear programming, so if you fix the information problem of knowing exactly what products there are, and the inputs and outputs of all practical ways of making them, the complexity is O(n^3.5) where n is the number of distinct goods.

I don't know if the economy is creating goods faster or slower than society's capability to solve LP problems is increasing.

[http://crookedtimber.org/2012/05/30/in-soviet-union- optimiza...](http://crookedtimber.org/2012/05/30/in-soviet-union-optimization- problem-solves-you/)

</comment></comment><comment><USER8> The East German dissident Wolf Biermann characterized late Soviet practices as Stalinism with computers - while under Stalin you would get a bullet hole in your head, in later Socialism you would get a hole in your punch card (to mark you as a politically unreliable)

[http://www.spiegel.de/spiegel/print/d-41843129.html](http://www.spiegel.de/spiegel/print/d-41843129.html)

Now we all have our punch cards back ;-) I still wonder how it all came about: is it just as a preparation for possible future crisis ? are the rulers feeling really that insecure ? is it a real or an imaginary threat ? Isn't it that any power is always trying to extend its reach ? Many questions here.

</comment><comment><USER9> Here is a British/US conspiracy version from the 1970's: [http://www.syti.net/GB/SilentWeaponsGB.html](http://www.syti.net/GB/SilentWeaponsGB.html)

Caveat: The website in general has pretty "out there" ideas, and that I concluded from just the English versions (it is mostly French).

</comment><comment><USER10> The author is on to something, but is too pessimistic. Big data is not a reprise of Gosplan. It is much better. It's the difference between Stalinism and the ability to optimize-out both the state and the 0.1%, and use all that capital and productivity in actual production. A kind of modern Bakunin-style economy.

<comment> guard-of-terra (Automated) Gosplan was after Stalinism actually.</comment></comment>


How to get me to actually share anonymous usage information - <AUTHOR> https://data.syncthing.net/ <comment><AUTHOR> Lots of programs ask me to submit anonymous usage data. SyncThing is the first one I've seen let me see that data, as well as provide a means to preview what the data I send will look like. Anyone know of any other programs that do something similar?</comment>


Shenzhen court rules AI-written article has copyright - <AUTHOR> https://www.ecns.cn/news/2020-01-09/detail-ifzsqcrm6562963.shtml <comment><USER2> I didn't see anything that specified who _owns_ the copyright. Tencent, I presume?

It also seems like a self-evident ruling. I don't see much difference, except a matter of degree, between computer-generated prose in this case, and something like LaTex. Page composition (graphic design) is generally covered by copyright [0]. In fact just about every creative content has some form of technological intermediary. An "AI" algorithm, or even something more basic, performs touch-up work on a photo. The photographer didn't do it, they just hit the button, just like whoever setup the system for Tencent. So I just don't see how courts could hold that copyright wouldn't apply in a case like this when so much content depends on computational generation of some sort.

[0] [https://www.commarts.com/columns/is-it-true-that- copyright-d...](https://www.commarts.com/columns/is-it-true-that-copyright- doesn-t-protect-graphic-design)

<comment><USER3> The issue is that the AI can generate all viable versions of the article by front-running someone else's style.

Our society is built on the assumption that attackers are inefficient or dumb.

<comment><USER2> If the AI is generating content using a corpus which 1) has copyright attached (say Matt Levine's content for Bloomberg) and 2) isn't owned by the person/corporation that developed the AI, then you're absolutely right and waters are muddied. An argument could be made that the end-product is transformative enough to be its own things, eligible for copyright, but use and, presumably, copying of the original content into a corpus would seem a violation of that copyright.

On the other hand, if Tencent owned the corpus, that isn't really an issue. Similarly, there have been automated finance articles for more than a decade using knowledge extraction algorithms against things like earnings reports, and copyright of those reports has not been an issue. Admittedly, that may only be because those releasing the reports do so in part to get the word out, and so they _want_ reporting to be done on them. Even if they had a copyright claim that it wasn't fair use, they may not have the incentive to enforce it.

Regardless, this all opens up some fascinating discussions of the agency of AI, what constitutes true AI vs. a simple program or algorithm, assignment of who actually would own the copyrights of computer generated content... I think it's going to take some time for the law to catch up to technology on these topics.

<comment><USER3> Copyright's stated purpose was to promote the Progress of useful arts and science. That's why the monopoly was secured to the authors.

Bots don't care about those incentives. Once built, that's all they do.

<comment><USER4> Yes, but the people writing and running the bots still care about those incentives. So it makes sense that they should own the copyright to the articles they generate with their bot.

<comment><USER3> I disagree — because the goal was to promote a laborious activity. Once we reach a whole new level, we no longer need to give the same incentives. It's clear that people would be doing this even without copyright.

<comment><USER2> Now THAT is the first reasonable argument I've heard _against_ copyright for such things. Once it becomes easy, trivial, and for most purposes "free" to hit button and make a best-selling novel, a temporary monopoly on that work wouldn't seem to benefit the goal of incentivising future work. Of course, the person/people that _built_ the system may still need some type of temporary monopoly to incentivize refinements, increased quality, genre variation, etc., maybe even the ability to tailor made a novel to a specific individual's tastes for them alone... but I'm not sure "copyright" would then be the best tool for this. I think there would need to be something new and, given that I think copyright terms are already extremely too long, much shorter than traditional copyright.

Thanks for such an insightful idea! I'm not 100% sure which side I come down on, but it's very thought provoking, the sort of discussion that draws me in to HN.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> Chinese court rules...

Do any of us have any clue how Chinese copyright law works? It's probably not the same as American copyright law. What are the requirements set out by Chinese law to be copyrightable?

<comment><USER6> I don't know but since they seem to be a member of the Berne Convention, it doesn't differ largely from of US?

<comment><USER5> The Berne Convention isn't that precise. For example, consider that collections of information are copyrightable in most of Europe and not copyrightable in the US.

<comment><USER7> That's distinct from copyright, and even named a "sui generis right" (meaning "of its own kind").

</comment></comment></comment></comment><comment><USER8> The easiest way to escape AI hype-thinking is to replace "AI" with "computer program" in your mind whenever you see "AI" in an article.

</comment><comment><USER9> There are some subtleties. Models like GPT2 are trained using many copyrighted documents whose authors could claim it is derivative of their work.

</comment><comment><USER10> A few relevant points regarding copyright law.[1]

1\. Copyright is generally held in "works of authorship", which is to say, _the work of an author._ Whether or not a computer program (AI or otherwise) is an author is the first question in this case.[2]

2\. Copyright law provides protection against _unauthorised copying_ of a work. _Independent creation is not a copyright violation_ , for all those who've suggested composig all possible (or for the more efficiently-minded, _probable_ ) works of a given length. If another party _independently creates a similar work_ (in whole or part), there is no copyright violation.

3\. Copyright persists only in _expression_ and not in the _meaning_ or _function_ of a work. This is in particular contrast to patent and trade secrets law.

The Chinese ruling, as described, fails multiple tests and would not qualify _under present general copyright law_. Though the possibility of the law changing given changing uses and practices does exist. I don't expect in the near term that this case will have much significance.

By way of highlighting the ... interesting dynamics ... posed by increasing use of AI in creating content -- various systems creating de novo faces, images, audio, or video, as well as text, as examples -- does give some pause. What are the implications of creating such content via AI where the content itself is entirely outside the scope of copyright law?

________________________________

Notes:

1\. US-centric, though generally applying to WIPO / Berne rules. Not legal advice.

2\. 17 USC 102(a) [https://www.law.cornell.edu/uscode/text/17/102](https://www.law.cornell.edu/uscode/text/17/102)

<comment><USER11> WIPO / Berne rules are guidelines. Not even in the Western Europe which aims for "feature parity" with US copyright laws are things the same (case in point: treatment of copyright and patent ownership of things invented while employed, yet not at work or in relation to work).

So they simply do not apply even broadly to a case that was processed in China, especially not in the level of deep US-centric scrutiny you applied to it.

That said, I don't see any of the "multiple test" this ruling fails. It has simply posited that verbatim copying of the article published on one website to another website without prior agreement is still copyright infringement, regardless of the fact that the article itself was generated by software/AI. Nothing more, nothing less.

I find it hard to imagine that a court in any other country would rule any differently.

<comment><USER10> Both Berne and WIPO have produced multiple _treaties_ , which go well beyond the notion of "guidelines", and are ratified by signatories within their respective national frameworks (e.g., ratified by the US Senate, as with the Berne Convention Implementation Act of 1988).

The actual legal code conforming to treaty requirements is a matter for countries to write and adopt, but generally that's occurred.

So, disagreement in part with your categorisation of WIPO/Berne as "guidelines", which I feel grossly understates their status.

China _is_ a member of WIPO: [https://www.wipo.int/members/en/](https://www.wipo.int/members/en/)

The Berne Convention of 1971 (I'm fairly certain this is supersceded in at least part) does not appear to include authorship or originality in its properties of covered works:

 _The expression "literary and artistic works" shall include every production in the literary, scientific and artistic domain..._

[https://www.law.cornell.edu/treaties/berne/2.html](https://www.law.cornell.edu/treaties/berne/2.html)

Though article 3 provides that protections apply to "authors":

[https://www.law.cornell.edu/treaties/berne/3.html](https://www.law.cornell.edu/treaties/berne/3.html)

</comment></comment></comment><comment><USER12> Shouldn't the copyright therefore belong to the robot? The company is therefore not party to the ip infringement case.

Now as an employee my ip belongs to my employer, but I am paid for this.

A robot couldn't enter into a contract without 1) being paid (consideration) or 2) the intention to create a contract. Therefore if robots are to assign copyright they are going to need training about contracts.

<comment><USER13> I don't know about Chinese law, but the US concept is "work made for hire". This is satisfied by one of two alternatives, the first being "a work prepared by an employee within the scope of his or her employment." If you believe that an AI has sufficient personhood to be capable of authorship, then it is not unreasonable to presume that it is being employed by whomever is running it.

In the US, there are three factors that govern whether or not someone is an employee. These are:

> Control by the employer over the work. For example, the employer determines > how the work is done, has the work done at the employer's location, and > provides equipment or other means to create the work.

> Control by employer over the employee. For example, the employer controls > the employee's schedule in creating the work, has the right to have the > employee perform other assignments, determines the method of payment, or has > the right to hire the employee's assistants.

> Status and conduct of employer. For example, the employer is in business to > produce such works, provides the employee with benefits, or withholds tax > from the employee's payment.

Looking at those factors, it is really hard to argue that an AI is not an employee, as far as US law is concerned.

<comment><USER14> This line of reasoning just seems weird an unnecessary to me.

An AI is just a computer program. It's an intangible asset. Any IP it generates was the work of the AI programmer, or perhaps also the operator who provides it with input and instructions on how to process it.

<comment><USER15> We don't generally consider compiler output to be under the copyright of the author of the compiler.

<comment><USER4> GCC has a license exception specifically to allow compiling programs with it without "infecting" the resulting output with the compiler's GPL. [https://www.gnu.org/licenses/gcc- exception-3.1-faq.html](https://www.gnu.org/licenses/gcc- exception-3.1-faq.html)

<comment><USER13> That's more to deal with the fact that compilers insert calls to various support routines to implement certain functionality--for example, there are division routines to support architectures without a division operator.

It's not currently understood that the result of compiling code implies a claim to copyright or derivative works of any resulting compiler output, which is GP's point.

Actually, there's an argument that, even if GCC and its support libraries did not have the compiler exception clause, then there still would be no GPL "infection" of compiled code. License to use a software program implicitly carries with it a right to make any necessary copies that are functionally required, even if the copies would otherwise be infringing. So the compiler inserting copies of itself into your program would enable you to distribute those copies with your program without any further agreement (i.e., licenses) required, so long as you had legitimate license to the compiler itself.

</comment></comment></comment></comment></comment></comment><comment><USER16> Oh god.

12 trillion dollars to the first person who creates an AI that creates every permutation of basic writing.

Can we please just throw out all copyright/patent laws and start from scratch with _reasonable_ terms? (like 5 years, or _maaaaybe_ life of the creator _if_ they keep filing paperwork to confirm they want it.)

<comment><USER17> Eh. That's essentially just rand() with a fat disk. The real task is choosing which permutations to select and publish.

I could easily have a websites where any URL you went to was a valid article. For example, example.com/my-article-text-is-here would map to "my article text is here" but the point of creation isn't when you randomly enter in the URL, the point of creation is when some selection of tokens is chose for the actual article, and realistically the combinatorial explosion of human language has us covered.

<comment><USER16> You have a point. But with a "the right" AI (presuming humans can cause it to be made), you would instead patent the essential building blocks. Like patenting the arrangements of atoms that make up proteins instead of patenting every single possible arrangement.

</comment></comment></comment><comment><USER18> Looking forward to the day AI is used to generate billions of books and then compare them to every new release by a human. Then the patent/copyright trolls come out and sue human authors for copyright infringement because their awful AI book that is 50% gibberish has all the same elements and character names as the human author's book

<comment><USER19> Those billions of books probably violate the copyright of other books themselves.

<comment><USER20> I don't think this is the caveat you think it is.

</comment></comment></comment><comment><USER21> Why wouldn't this be the case? In what sane legal system would one not own the work they published just because it was generated in part or full by an AI? If company B lifts company A's AI and starts generating articles with it, the suit would then be about the code itself, just like with websites, video games, etc.

<comment><USER22> [https://fairuse.stanford.edu/overview/faqs/copyright- basics/](https://fairuse.stanford.edu/overview/faqs/copyright-basics/)

"Finally, to receive copyright protection, a work must be the result of at least some creative effort on the part of its author."

So the question is, who is the author and if it was machine generated, did it take creativity? The algorithm took a lot of creativity, but did the output that is being copyrighted? I mean I would come down on the side of yes, but it makes for an interesting case.

<comment><USER23> _> if it was machine generated, did it take creativity?... but did the output that is being copyrighted?_

In the US, this question has been settled since at least the 1990s (e.g., in the context of videogames). The output of algorithms is, in general, copyrightable, although there are some rather common-sense exceptions.

The question isn't whether you can copyright the output of an algorithm. The more salient question, in my mind, is whether the output of ML algorithms belongs to the owner's algorithm or to the owner of the training set.

<comment><USER24> > It's just that the owner of the training set -- not the owner of the > algorithm -- is the one with the valid claim to copyright.

Not all that different from a pop song made by editing together licensed samples, no?

In that case, the song is certainly a _derivative work_ of the samples, and so the producer of the song needs to get derivative-works-allowed licensing from the samples' authors (which is what you must necessarily get when buying samples from a sample library, for them to be of any use at all.) The produced song is then its own work with its own copyright. Sometimes, larger samples (like reused vocal performances) require payment in, essentially, "equity"—a percentage of the song's royalties are transferred as royalties to the sample. But in most cases, the sample is purchased for a flat fee, and there is no ongoing relationship between the revenue of the song and the revenue of the sample.

Is anything different if you replace "song" with "news article" and "samples" with "training set"?

<comment><USER25> Copyright isn't a natural right, and giving rights to computational algorithms isn't a normal legal act - how does it benefit society to do that? Is the deal good for the populous as a whole?

We can have the output for the cost of the energy, or we can perpetually (AIs never die!) pay tax to a wealthy capitalist and have the same output; why is the latter better?

</comment></comment></comment></comment></comment><comment><USER26> That's your definite Turing test. Stamped, sealed, delivered.

<comment><USER27> The Turing test as defined by Turing is interactive and conversational, not about an AI producing a particular artifact.

<comment><USER28> The original Turing test had the AI attempting to imitate a _woman_ , which is not only demonstrates conversational ability, but an understanding of complex ideas like gender.

Incidentally, I think this can actually be a very low standard, depending on context. We tend to think of the Turing test as being performed by academics, in a lab, where everyone is Very Serious. But if you put real humans on i.e. Omegle (with no video), they typically type with poor grammar and say "random" sounding things that quite plausibly could be said by an AI. Additionally, the preponderance of spam scammers demonstrates that many people are quite gullible, unable to differentiate between a Nigerian scammer and a legitimate representative of their bank. Given this, I think we already passed the Turing test, not by bringing AI up to the level of humans, but by bringing humans down to the level of AI.

<comment><USER29> That's a fairly depressing way of looking at it. [https://xkcd.com/1414](https://xkcd.com/1414)

<comment><USER28> That XKCD comic makes a good point: grammar ability is a poor measure of intelligence. Perhaps I was wrong to think of it as "bringing humans down".

<comment><USER30> Grammar ability is a fine measure of intelligence.

Adherence to arbitrary conventions in situations where they're unnecessary is, on the other hand, a poor measure of grammar ability.

Do you _really_ believe that most people who write "u" in an SMS are unaware that it's written "you" according to formal conventions?

</comment></comment></comment></comment></comment></comment><comment><USER31> Could you not just brute force write any article possible and own the copyright on any possible article ever written?

Just publish every letter combination possible somewhere.

<comment><USER32> 1\. How much storage would that take? 2\. Anytime you think you've found a clever "gotcha" that nullifies an entire area of legal doctrine, smack yourself in the face and then repeat "the laws are made and interpreted by people, not machines" one hundred times.

</comment></comment><comment><USER33> If they own articles then they may own patents. I view some current contradictions in what ai owns or not.</comment>


What to do before leaving your job to found a startup - <AUTHOR> https://www.fundastic.com/posts/92-5-things-to-do-before-you-quit-your-job-to-start-your-own-business#.U-0tEfldXuk

<comment><USER2> One more important item that isn't listed in the article:

Step 0 - Carefully read your current employment contract.

Employment contracts in the tech industry will often have provisions that cover intellectual property assignment and other activities. These clauses typically stipulate that any ideas, inventions, concepts, designs (etc.) that you create during your full-time employment with a company are the sole and exclusive property of the company (and not you, the direct inventor). Depending upon the country/state/region, you may have some rights afforded to you if you create (and document as such) any inventions outside of the workplace without using any company trade secrets or technology, so long as your invention does not relate to the current or demonstrably anticipated R&D of the company.

Many companies have these types of clauses in their employment contracts for defensive purposes to protect the company against copyright claims from its employees. As a result, not all companies will enforce (via litigation) these provisions and ultimately don't care if their employees are building and releasing side projects in their spare time. However, some companies do care, so you should be clear about your legal status before jumping to start your company.</comment>


Zoe, a New Smart Home Hub That Lets You Control Your Data - <AUTHOR> http://www.curbed.com/2016/3/28/11317418/zoe-smart-home-technology-hub-data-privacy <comment><USER2> It's unfortunate, but I have no faith in crowd-funded hardware. There's plenty of "according to" and "promises" in that article for me to want to take any claims with a very healthy pinch of salt.

<comment><USER3> Same here but I'm definitely going to be keeping an eye on it. If it does succeed and ship, and looks like it's trustworthy I might seek one out. I'm currently using a Smartthings hub and while it's a lot better than the wink i had previously i'd love one that doesn't need the cloud to do so much.

</comment></comment><comment><USER4> I wonder how it relates to [https://mycroft.ai/](https://mycroft.ai/)</comment>


Why does dust gather in corners - <AUTHOR> http://math.stackexchange.com/questions/13884

<comment><USER2> Is this a test/trick question? LOL

... because we don't walk in corners, silly!</comment>


Forms vs. Applications - <AUTHOR> http://www.useit.com/alertbox/forms.html <comment><USER2> "...in the current generation of pre-Vista Internet programming..."

Plonk</comment>


The Humble Programmer - <AUTHOR> http://c2.com/cgi/wiki?TheHumbleProgrammer <comment><USER3> > program testing can be a very effective way to show the presence of bugs, > but it is hopelessly inadequate for showing their absence.

Have seen this idea stated in various forms. In an absolute theoretical sense, the idea is quite true, but I'm not sure what wisdom or value is supposed to be imparted through expressing it - especially in the way it's phrased above.

The vast majority of programs exist to deliver net positive value in some form. In this context, the value and even the concept of absolute correctness become very fuzzy. Not all bugs are equal in terms of impact on that delivered value. Beyond a certain threshold, what even is a bug? Is it a bug when the program crashes when a user intentionally feeds it with extreme inputs, that would never be used genuinely, to try and crash it? In a mathematical sense, yes. In an engineering sense.. most likely not.

From this point of view, testing _will_ show an absence of bugs - <USER2> categorically _all bugs_ , but _all bugs I care about_.

With testing I can show that my program performs a certain set of functions as I want it to, with a certain set of inputs. That's a baseline, proved to be bug-free. If that baseline provides the minimum value the program is written to provide, then the program is by definition correct for its given purpose.

Whether it's correct in a pure, absolute, mathematical sense is a different question (perhaps even a philosophical question) that it doesn't provide me much value to answer. So where's the practical value in expressing this idea?

<comment><USER4> Tests work because we don't use only tests - we use tests to support and correct our logical reasoning. Even for a very simple task, if you literally didn't think about how to solve it at all and just did the simplest thing to make each test pass, you'd never accomplish it. E.g., "find the absolute value of a number" would end up with a function like

        abs(n) {
            if(n == 1) return 1;
            if(n == -1) return 1;
            if(n == -3.5) return 3.5;
            ...
        }

This is why testing is not a substitute for logical reasoning, but a complement; once we think we've solved a problem logically, we can test several cases to check our reasoning.

This is also why no amount of testing will make up for a program with no logical structure. For example, if you use unstructured GOTO as the only means of control flow, then you won't be able to solve the resulting bugginess by writing more tests.

<comment><USER5> People actually do write tested and reliable "unstructured" code, eg pure assembly. It's harder but it's not automatically impossible as is often implied.

</comment></comment></comment><comment><USER6>
      The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague.

My very limited skull size balks when I see regex, IoC architectures, EAV data modeling, fancy ORMs ... and, dare I say, ... functional programming.

<comment><USER7> All those are tools that make certain jobs a lot less complex. I dare say you either use them for the wrong job or you should try expanding the size of your skull.

<comment><USER8> We demand actual proofs of program correctness, but for some reason we don't even ask for proofs that practices actually work or even that they don't do any harm. We just take it on intuition and faith, and propagate practices by peer pressure. If it looks fancy, and people like it on HN, it must be better. I don't know in what sense this is "engineering."

<comment><USER9> Some people do actually gather evidence in this area. The best collection of it I have found so far is the book Making Software: What Really Works and Why We Believe It.

</comment></comment></comment></comment><comment><USER10> I find this easy-to-overlook and mostly-off-the-main-topic passage quite deep and sadly truthful:

        There may also be political impediments. Even if we know how to educate tomorrow's professional programmer, it is not certain that the society we are living in will allow us to do so.
        The first effect of teaching a methodology —rather than disseminating knowledge— is that of enhancing the capacities of the already capable, thus magnifying the difference in intelligence.
        In a society in which the educational system is used as an instrument for the establishment of a homogenized culture, in which the cream is prevented from rising to the top, the education of competent programmers could be politically impalatable.

...and the funny thing is that these "political" impediments have been driven by nothing else than plain old month to month business objectives: by striving for "replaceable programmers", or "reproducible performance" or "reducing the buss factor" etc. we trowed away the most promising _" programmer brainpower amplifiers"_, prevented "the cream" from rising too high by drowning it in endless debugging and optimizations tasks that "needed to be done" because "legacy", and we got a [C, C++ and Java] main-languages-combo instead of a [some-low-level-ML, Lisp and Smalltalk] one.

 _But if you know that you can always fire your top programmer and still survive as a business, it was worth the cost of x-times programming productivity reduction, right?_ (Plus the more global thing: anyone with less money and training than you have, like some bunch of unknown 3rd world country programmers, is very unlikely to overtake your business if most of the true brainpower-amplifiers are thoroughly crippled, and you also have the "network effects" part turned against them - read below)

And the _awesome_ part was that by doing this industry-wise, any competitive advantage that could be had by the party-line-breakers choosing the x-times tech was lost because of the network-effect-induced-handicaps: if they need to take a week to rewrite that library in their smarter language/stack and another week for the other one etc., that x-times advantage goes away pretty fast ...except for a few that were _really smart_ and made all the right micro-decision at all the right levels (and had some _pretty strong_ place and time advantages too - like simply _being_ in SV around '95), like PG with Viaweb and a few others.

...it's really sad to read and write this, seeing that despite someone really smart like Dijkstra saw this a few decades earlier, it still went this way.

<comment><USER11> This statement by Dijkstra sounds a bit determinist/elitist. Differences in talent/"intelligence" is largely a myth while only accumulation of experience matters. This kind of claim is dangerous in that it allows those higher up in the ladder claim that they're "naturally gifted" to take their positions while in fact they most likely just have had more resources growing up. The current society is already inegalitarian and unmeritocratic enough and such claims could only fuel the situation further.

I totally agree with the point on homogenization of programming. However this is more likely just a ubiquitous feature of today's globalized capitalist world. I don't think it has anything to do with so-called "difference in intelligence" or whatsoever. More aspiring programmers will want to program at higher levels, and it's a good thing, as long as they don't claim this is due to them being superior intellectually than their other counterparts.

</comment></comment><comment><USER12> > To put it in another way: as the power of available machines grew by a > factor of more than a thousand, society's ambition to apply these machines > grew in proportion, and it was the poor programmer who found his job in this > exploded field of tension between ends and means.

I always thought that it was easier to be a programmer in the old days. Back when you could assess the performance of a program by counting the number of CPU cycles. All you had to learn was an assembly manual (a mere hundred pages?) and you knew everything there was to know about programming for that architecture. And there weren't that many architectures. Now we have non- deterministic CPUs, hundreds of high level programming languages, multiple operating systems, an entire jungle.

<comment><USER13> We went from basically being mathematicians ("That solution is best, and here's my proof") to engineers ("This solution works, and it works with the parts you give me, and don't ask why there's cake") to "why does this posting for a back end developer also require CSS fluency?" I grant that the last is not as concise as mathematician or engineer, but I feel like we're just about there.

</comment></comment><comment><USER14> Warning: this article is by Dijkstra.

You may remember him as the person after whom the unit of arrogance, the nanoDijkstra, is named.

<comment><USER15> Dutch directness has a side effect of coming across as arrogant, its merely a difference in culture[0].

For example, if you are Dutch and your friends are Dutch, you don't go on and ask "how are you?" to the people that aren't close to you.

The question "how are you?" is actually there for you to show genuine interest in someone else's life at that moment. The polar opposite of it is the US version i guess, where a "how are you?" results almost always with a "fine and you?".

On another note, i think the main reason(i might be very wrong here) that they had this clash is Alan Kay being a pioneer in object oriented programming. And Dijkstra's counter-discourses against it and sometimes those discourses were harsh[1]. (Although we can agree oop is garbage :D, that is certainly not the best way to put it.)

[0]: Although i have met some Dutch people that were being rude and trying to cover it with "Directness"

[http://www.iamexpat.nl/read-and-discuss/expat- page/articles/...](http://www.iamexpat.nl/read-and-discuss/expat- page/articles/perks-of-dutch-directness)

[1]: [http://harmful.cat-v.org/software/OO_programming/](http://harmful.cat-v.org/software/OO_programming/)

<comment><USER10> > Although we can agree oop is garbage :D

Can we? The stuff that Alan Kay put forward in Smalltalk, with message- passing, polymorphism, late binding etc.... was definitely NOT garbage imho!

What C++ an Java and all the all the languages that tried to copy them, and also Javascript with its prototypal inheritance ended up with... it stinks indeed.

But where Scala on one side, and Go and Rust on the other are going... that will be interesting at least :)

Maybe Odersky is on to something with his whole "functional and oo are orthogonal" thing... though the way macros are implemented in Scala _on top of and USING the oo core_ instead of _separate and serving as the foundation for oo (CL style)_ makes me wanna puke when reading the resulting code...

<comment> vezzy-fnord Indeed, OO hatred is usually a sign of an inexperienced functional programmer.

<comment><USER16> Hatred of most any language or set thereof is often a sign of inexperience. The only exceptions I can think of are production use of most joke/esoteric languages and Oracle Forms.

<comment><USER17> Doesn't this mean that anything in production is beyond "hatred"?

</comment></comment></comment></comment></comment></comment><comment><USER18> Is there a new c2 wiki where programmers hang out? I know we have HN, proggit (reddit/r/programming), and stackoverflow but where's the coder wiki where dilbert comics are posted every day? :P

</comment><comment><USER19> The humble Programmer can't handle the taco.</comment>