skysight-inc/HackerNews huggingface dataset:
The main reason is because, while Pharo is obviously heavily inspired by (and, in fact, a fork of) Smalltalk, it's not trying to stay Smalltalk-80 compatible. Think of Racket: Racket started life as DrScheme, but as the goals of Racket gradually drifted away from being "just" a Scheme dialect, they decided to just call the entire language Racket to avoid confusion.

Pharo's doing the same thing. For the moment, the changes are relatively minor--new GUI hierarchy, support for method lambdas, some cleanup of the class hierarchy, support for traits alongside classes, and so on--but the team wants the flexibility to break compatibility more thoroughly as time goes on.

In other words, it's not about Pharo not wanting to give credit where it's due, but rather about not setting false expectations.
A noteworthy companion piece would be this FiveThirtyEight look into the relationship between Unions, Wages, and the Middle Class:

http://fivethirtyeight.com/features/americans-dont-miss-manu...

One of the more interesting points I took away is that the Midwest, though facing issues, is one of the last holdouts of a large demographic that might be called Middle Class, often in close correlation with Union presence.
A) Give them a "take away" project... or bring them into the office to DO a project. Make it simple. Have them write "login". Don't be specific, tell them the exercise meant to be vague. Tell them that there are some things they may want to "hint at" or be a skeleton. If they are back end, you want just the api... front end just the UI (they can create static json for responses). Do they encrypt, did they leave hooks in for password reset, were they writing code that was going to be hard to I18N?

The white board is a terrible way to get a sense of a persons ability to code. Does your design team ask candidates to come in and "design" on the whiteboard? Why would you pull an engineer that far out of context to see what they do.

I have seen interviewers bring in "code samples", sometimes with bugs in them. "Read this and tell me what you think it does" becomes a great question, or what is this for. Syntax highlighted code printed in color may speed this exercise along but isn't required.

References help, but really your calling someone they expect to give them a golden review. Linked in is your friend here, some "outreach" may get you a different perspective than the people they have listed.

B)Short of someone being lazy, or unwilling to learn, there is more than a bit of bullshit in "corporate culture". There have been several occasions in my career where I heard that my immediate boss didn't want to hire me as I would be a "bad culture fit", usually followed by a promotion. Culture is code for "status quo".

Lastly: Talk to your HR department about terminating bad employees after 90 days. No matter what you do, sometimes you just get it wrong, and getting that person out is better than dragging it out.

EDIT: I should have mentioned that rather than focus on "culture" you should be finding out if the person cares about your product.
I think joelonsoftware predicted a lot of the IoT failures a decade ago with this piece: http://www.joelonsoftware.com/articles/fog0000000037.html

There are lots of companies that seem to be looking entirely at how IoT can help them, without actually considering whether their customers benefit. There was a group at CES offering an IoT propane tank valve. It gathers user data, great, but who the hell wants to sink $50 into a smart valve for their grill?

An awful lot of the these companies are offering tiny value propositions to users, and expecting that they'll pay for the chance to give up their data. The "smart grid" is a wonderful dream, but when no two pieces integrate you're just selling some shitty wifi monitors.
A diversion into the pedantic, but hear me out: I'm legitimately interested in terminology here.

This actually seems more like ontology work than epistemology work. In one of my academic fields (I do software, education, and the learning sciences), we tend to use the term "epistemology" to be knowledge about knowledge itself. Generally questions like "where does the ontology of pizza come from?", or "who has claim on saying what is and is not a pizza, and where do they derive that claim?" are epistemological ones, and mapping out the state of different claims are ontological ones.

Is 'epistemology', as used here to mean more of a meta-ontology a common word usement that's being structured these days? Is it something from clojure or one of the other lisp-y spaces people are building ontologies? I played with building ontologies about epistemology (specifically, nature of science, quality of scientific claim, etc) using KQML back in the Dark Ages of 2000 or so, but haven't really looked at the work since then.
I had the same reaction too. After googling it to make sure, english was a germanic language like I always knew. Then I'm like, English might as well be romance because it's riddled with french words.
“Top 10 Books to Read” by Barack Obama and Steve Jobs
Thank you for the lucid definition of the middle class.
this one is nice because the difference is so staggering. you just cannot mix up `x` and `xs`.

`movie_collection` vs `movie_collections` is a bit trickier
The third will never be solved. MBA love to suck the souls of everyone below them on the chart. In fact, that is what they live on/for.
Oh, you mean like we used to do in the past? History repeats itself...
Already posted in original form: https://news.ycombinator.com/item?id=11688061

I don't know why SMH would take a Washington Post story and change the title to something stupid, while keeping everything else the same, but that's what they've done.

Wait.. there's one more difference. A pathetic picture of "an AI".

"an AI"? Seriously SMH, just use the original title. Your editorial blundering is embarrassing, and could easily be replaced with "an AI" tasked with re-wording headlines.
the job is in Python?

I like type systems when I play around with personal projects in well-typed languages
But by that same token, it doesn't appear that this is actually "email" either. It's sending messages via the internet, securely, using a custom client. If you send to someone without their client, they end up with a link (via actual email) to the website and have to use a password to view it.

I think we're at a point where any long messages sent via the internet are going to be called "email" regardless of the actual transmission process. Especially if they aren't meant to be some kind of real-time chat system, as that is usually called "instant messaging".
What is wrong with wordpress.com?

Is that the best use of funds?

Why not put at least 1/10th of that money into just providing a sliver of love to their big breadwinner Wordress VIP?
Silver got lucky a couple times with predictions and people believe everything he and his company says now. Now that they have clout, they use their predictions to push an agenda, which is why their predictions are so innaccurate.
I'm not quite understanding why the "Lower Class" trends seem to be so flat, while the middle income trends are down. Where are the middle income families going if not the lower income bracket?
I live in a town in the US where the median household income is roughly $36k and the median household size is 3.9. Most adults own their home here.

I know most HN people tend to see urban/suburban areas as the only habitable zones, but come on - you are definitely living high on the hog, it's just hard to see because you choose a location and lifestyle with very high expenses.
Pillow-SIMD: improving the performance of image processing
Interesting, I think it's a good thing to see people at least trying to avoid the clichés of starting up in silicon valley or NYC. Even the US for that matter, it's only gonna help the world economy if people say "hey, I can make the best of things right here" instead of thinking they NEED to be a US based startup company
Show HN: Server Components – Composable Rendering with Web Components for Node.js
I guess it'll make you 3 times as productive by making you only use one browser? That's how productivity works, right?
Leadership is important. There's a reason that all successful businesses follow certain structures and processes.
A new scientific truth does not triumph by convincing its opponents and making them see the light, but rather because its opponents eventually die, and a new generation grows up that is familiar with it.

https://en.wikiquote.org/wiki/Max_Planck

often summarized as "Science advances one funeral at a time."
It may be worth pointing out that as of right now, CAD $125K is only USD $96.5K, while USD $125K is CAD $162K. There are probably a number of other factors offsetting the exchange rate, but with a family income of >$150K in Canada you're at least pretty well off and in a high percentile, house or not.
Many of the places that LOST the most middle class also seem to have a big RISE in UPPER class. At least it looks like that from the map. Am I reading that wrong? Can we interpret that to mean at least some middle class went up? I guess the word "Shrinking" here is assumed to mean "Gone Down" but at least some of that Went Up, didn't it? I can't seem to figure out from looking at this.
> I was around at the time of, and affected by, the AI winter. There was certainly no consensus among those working in AI that they had got as far as they could. Work stopped when funding was cut, often for political reasons.

I wasn't around, but I got curious about symbolic systems after listening to MIT's AI course[1]. Did some reading about the subject. The impression I got matches what you describe.

It's ridiculous how many people here dogmatically recite statements about failures of symbolic systems without (apparently) knowing anything about how those systems were used and what they achieved. If you listen to the comments, it sounds as if research on symbolic systems only ever produced crude, useless toys. That was certainly my impression before I took some time to actually look into it. A bit of straightforward Googling can show that it's a gross misrepresentation of history. For example, MIT's lecture on knowledge engineering [2] has some really interesting info on this subject.

[1] http://ocw.mit.edu/courses/electrical-engineering-and-comput...

[2] http://ocw.mit.edu/courses/electrical-engineering-and-comput...
Thanks for the correction. I forgot that EME support (using Google's Widevine CDM) won't ship on OS X until Firefox 47, which is still in the Firefox Beta channel for another few weeks.
Solar-thermal distillation plant might provide cost-efficient desalination
Apple invests $1B in Didi Chuxing, China’s largest ride-hailing app
That's stunning. I studied AI in undergrad and I just didn't give it enough of my focus at the time. Little did I know that in my lifetime I'd see real world evidence of computers passing the Turing Test with flying colors.

Of course, Turing was right. What's outside of the set of computable sets? Not much!

I recently read an article headline that talked about creeps using AI to stalk porn stars. It's interesting to think that as computation power continues to grow, there's a huge potential for evil uses of AI. All of the things we see and hear and consider "public" have little or no nefarious uses to other humans. But what about a computer that has human-like capabilities and inexhaustible computation resources? The sci-fi scenarios of conscious AI making decisions to save humanity from itself are not what I fear. The evil humans sitting at the helm of powerful AI is what I fear.

A lot of society's norms are predicated on humans having private thoughts and telling small and large lies as appropriate. What happens when AI-augmented humans know when you're lying?

The future is so exciting and so terrifying.
$4k/mo is higher than average unless you're talking about supporting a family as well. If you're supporting a family your risk tolerance should be lower meaning you'll want more saved. Though it should hit people equally regardless of rent. The only difference is that people with lower rents can afford to take lower paying jobs in the event of a downturn.

$4k/mo is significantly more than my total monthly expenses. This leads to the other obvious advice: live below your means.
Makes sense as a use case. TAs must hear the same questions over and over again from different students, both practical things like "what homework is there" and reference stuff like "What does the line above the X mean?" (No pun intended!)

I wonder how good it is when people don't know what they're asking. This used to happen all the time when I was in tutorials. "I don't get why there's two transistors in a chain". "What's the significance of the process being adiabatic?"

If you can crack that, education will be changed forever, massively.
The joke is that the rural people are oppressing themselves. "Urban elites" have long advocated for policies that would benefit the rural poor but the white rural poor are dead set against any policy that would also benefit black people. http://www.nber.org/papers/w17234 and http://www.amazon.com/Whats-Matter-Kansas-Conservatives-Amer... for more on that.
It might just be that any such organism was almost immediately out-competed by anything with an internal chemical energy factory, so we never will.
Could you say more about "WebTV -> YouTube, Netflix"? There are two things I could imagine WebTV meaning here (TVs used for Internet access; broadcast TV including more interactive elements) and both are basically the opposite of YouTube and Netflix.

I'd also question the "VR->Warcraft" thing. the 90s notion of VR was about something much more like the current hype for VR, with head-mounted displays and natural human movement in imaginary spaces. Even in the 90s we had what I think of as the predecessors to WarCraft and MineCraft, which were 3D games like Doom.

I also think you can't sweep timing under the rug like that. The next-big-thing phenomenon has timing as literally the first word. And that's important when talking about technology as a business. PDAs were always a niche business; it took integrating them with the cellphone to make the leap to ubiquity. But none of the PDAs made it into the promised land; Palm even had PDA+Cellphone models, but by then they were too old, too tired, too confused to seize the moment, so Apple did.
Disagree:

When we first launched Sync we had to settle with "Sync.us" due to all other TLDs were taken. We forced ourselves to love the name. We printed "Sync For Us" on all our t-shirts and swag. We thought it was an awesome way to capitalize on the TLD. Sync Us .. Sync Us ... Sync Us ....

Boy, were we ever wrong! At some point the powers that be (Nokia I think) put Sync.com up for auction.

We stumbled on it quite accidentally, one of our developers landed on the auction page while trying to get to our own website. This little irony itself highlights the value of the TLD.

So we paid a small fortune and rebranded our company from Sync.us to Sync.com.

This turned out to be a game changer for Sync. Everything came into focus. People could more easily remember us, and find us. We gained credibility. Traffic to our website increased dramatically, as did signups.

Our initial TLD decision held us back.

Is .blog a good TLD? For WordPress users it just might be.
> Anyone able to offer an explaination of why having a large middle class is viewed as positive?

In the traditional view espoused by many advocates of capitalism, the traditional "middle class" (those living by a mix of capital and labor, either applying their own labor to their own capital as small business owners or yeoman farmers, or by having both capital to which other's rented labor is applied and labor which they rent to others -- i.e, an upper-income wage laborer with some personal real estate and financial investments) is idealized; I'm not sure if there is a substantive reason for this so much as a PR one, though -- its something that the working class can somewhat understandably (even if not always plausibly) aspire to and the existing middle class can identify with. But, if you look at most of the criticisms of capitalism, they mostly focus on the problems that exist in the relationship between the capitalist class and the working class, so the more of the population that is in the middle class -- which is both less subject to exploitation than the working class and less capable of it than the capitalist class -- the less the problems associated with capitalism are.

Note, however, while this idealization of the "middle class" remains in the US, the definition of middle class in many media uses (including this article and the supporting research) has drifted to refer to a range around the "middle income", which is very different from the traditional concept of middle class; most of the people in this band are firmly in the working class, with only the top-end of most median-income-centered definitions of "middle class" containing people that are plausibly in the traditional middle class.
No, I'm not bubbled, because I'm well aware that in other places and subcultures, it's considered insane to prefer Windows for dev.
CLASH ROYALE and CLASH OF CLANS Fans Must See This
That condition is quite normal in an empirical sense. It is how almost all civilizations in the world have been structured for almost all of history.

The conditions of the past 200 years -- mass urbanization driven by the Industrial Revolution, and then the post-industrial service economy -- are both highly anomalous, a brief, tiny outlier in the vast historical data.
Oh gosh. I really hope I will never have to work with you or ever use a product you have worked on. This is just terrible software engineering practice. You are doubling the amount of work you have to do and are creating a breeding ground for bugs. Remember this age-old wisdom "measure twice, cut once"? You are doing the exact opposite.
This is probably their business model which backs up the driverless cars they are currently prototyping.
I think that those are valid names in a good context. e.g. if you have a function like "substring", then you can name "str" as the parameter and "result" the variable where you accumulate the result. Any other more semantic name for "result" would be "substring", i.e. the name of the function itself.
You can use the Java 8 streams interface, converting back and forth at the ends. Or there's a method in Guava-collections (won't be lazy though). Or you can use Scala.
When my wife and I went to Japan, we received the best service we'd ever had in every single restaurant, from random burger joints to classy Shabu Shabu restaurants. (Classy for us, at least.) None of them accepted tips. They just did their jobs well.

It was just proof for me that tips didn't have anything to do with good service, not in the long-run or the short-run.

Of course, I tip still, because it's part of their wages and they deserve it. But I don't for a moment think that it actually teaches them to serve people better.
Just the number of points of failure in this pipeline relegates this to toy status at best.

WIFI interruption? Button doesn't work.

Internet connection down? Button doesn't work.

Bad network congestion? Button doesn't work.

Amazon suffering DDOS? Button doesn't work.

Battery dies? Button doesn't work.

Too many presses? Button doesn't work.

Misconfigured server? Button doesn't work.

Certificate expiry? Button doesn't work.

"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Every time there's an article like this, this exact comment gets trotted out.

Phrases can have two meanings, that you can determine by context.
OK, I get it. Word inflation. Totally makes sense.
Wish I made that much at the two startups I worked at. I didn't even quite reach that when you combined the two salaries. Plus I had prior job experience.

Yeah, I know. Shhh. They were still amongst the most interesting jobs I had, and some of the projects I'm most proud of.
Wasn't this the kind of understanding that Cyc was supposed to accomplish?
Thank you for this! If anyone is interested in the evolution of pop music over time (especially the last 20 years) and how hits are made, read "The Song Machine: Inside the Hit Factory"
If you're doing fast prototyping or hacking for fun then mindless variable names make sense, but working on a production codebase that is or will likely be shared by others is a different situation.

There no argument for absolute quality in code, only value relative to its use case and context. Outside of correctness of behaviour and acceptable performance, the human-readability of code probably carries the most value in most situations.

Sure you can get by without it, but code that is readable will ultimately be more valued/reviewed/supported/improved.
http://alecb.me/blog/p-vs-np
nice contrast to this article at the same site. http://nautil.us/issue/36/aging/physics-makes-aging-inevitab...

I'll go with physics in this case
> It makes scanning, grepping, etc all so much easier.

Or you could use a decent editor, that keeps track of variable scopes.
There is a part of the semantic web being subsumed by AIs. Viv, Alexa, and Google's and Apple's offering will be interesting as people start creating apps for those. (And as you said, timing and how widespread things get is fuzzy).

Another part of semantic web that had not taken off had to do with www itself. For example, in thinking about blockchain and ipfs, it's possible to create a fully decentralized data store. But to do it well, we'd need to incorporate the semantic web ... And possibly machine learning. I don't think anyone has yet figured out how to do a fully decentralized AI yet.
I believe what you are seeing is the white middle class dying off.
I'd say that Second Life is more of a descendant of MUSH/MOO/MUX than of Ultima Online/Meridian 59.
I guess what he's getting at here is that these variable names don't convey what the variable holds.

Let's say you're writing C and you want to return status information from processes as integers. Instead of:

> return retVal;

where retVal could be 0, -1 or -2 to indicate success or failure of the function, how about:

> return functionStatusCode;

? Or be even more specific (let's say the function tried to parse some text) with parserStatusCode.

All of those are more helpful than retval, because they give you some sort of idea as to what you're returning. You'r enot returning how many values were parsed, or some sort of information about what you parsed, you're returning the status of the parsing function.

The meaning of those values is probably a little harder to encode in the variable names (especially if there are many such values), but that's what the comments are for.
This is definitely an impressive result, but I'm pretty sure it was made easier by the opposite pattern.

I've had a couple of TAs who I strongly suspected of being chatbots, even when I was talking to them in person. I'm still not 100% convinced they were human.
I too abhor single-letter variable names.
My personal convention: minimum identifier length==2. {i,j,k}->{ix,iy,iz}, c->ch.
The only number that actually matters here is "median household income". The distance away on both sides doesn't matter, because the article is analyzing movement away from the center.

Does it matter if you're capturing the middle 20% or the middle 60% of the country? Not really. There are fewer people in the "middle", for some definition of middle.
I have mixed feelings. For a return value, retval et al are completely appropriate. Same for count. Tmp/temp borrow meaning from whatever they are a temporary for. These are all fine.

But "value" is horrible. You really don't know what it is? You might as well name it "variable". "Str" is in the same boat, unless it's short for "tmpstr".
Try FTP.