skysight-inc/HackerNews huggingface dataset:
I wonder what will happen when his 1 year thing with russia will end...

Maybe canada or south america ?
Checks an balances seems to be a concept completely ignored so many ways in modern America.
I said swag-frat and somehow the reply convinces me that I said 'swagtard.' I'm not trying to insult retards, and it'd be pretty hard considering that it's a pretty factual condition in which brainpower is quite limited. There's nothing wrong with saying that people who place all their value in swag, aren't using their full brain power. If anything it's crude but not anywhere near a rape joke. Anyhow, the term was 'swag-frat' not swag-tard. And by that I meant the whole bro-be-cool culture of being stupid and dressing obnoxiously.
I used to look at the TIOBE index all the time, until I saw Visual Basic .NET jump a bunch of spots this year. I then started to question either TIOBE index or the people that are using Visual Basic.NET
Great points all around.

I'll add one thing to your point - multimethods are a fantastic example of how Clojure allows you to structure programs in functional way that takes a programming feature (in this case polymorphic method dispatch based on the arguments at runtime) to the nth degree.

In Java and many other languages that have polymorphic method dispatch - the dispatch value is usually the type of the object for whom the method is being called on. Functional languages like Haskell take a much more powerful and expressive approach to this and extend it to matching the dispatch values for the called function on the type or pattern matched value of any argument.

Multimethods are essentially Clojure's take on this in a dynamic language. They allow the programmer to define a function that constructs the dispatch value however it wants - usually from the arguments given as input, in any order, on any condition.

To illustrate, I'll give an example I showed my wife yesterday. She's writing a roguelike game in ClojureScript at the moment that you can play in the browser - naturally she needed a way to represent the game world and the players position as they move around.

So, for illustration I'll omit the code for the world state, but she needed to bind event listeners for the keyboard to properly dispatch the proper movement logic. So the code she wrote looked like this:

https://gist.github.com/aamedina/8114944

She came to me with this code with the following problem - how do I think she should organize it? Clearly the handling logic is going to be more complex than a single line per direction (:up, :down, :left, :right) could handle, she has to account for terrain differences, buildings, monsters, what have you.

So I suggested using multimethods to accomplish this. This is what the multimethod solution I cooked up would look like in this case.

https://gist.github.com/aamedina/8114949

Now she has room in those multimethods to handle the potentially complex logic needed to make those arrow keys move the character properly. But another effect of this is that it hides the underlying state mutation from the implementation.

Now your move functions are pure and isolated from the coords atom, in addition to the fact that multimethods made the logic more organized, at the expense of a few more lines of code.

edit: moved code to gist
Hey OP,

Please email me at hi@josh.ml. I have exactly what you're looking for but not the development skills. I actually built an MVP last year and gained 2k users in a couple weeks at my local university.

I'd love to chat and see if we could combine forces.
Exactly. That proves my point. There are no Ruby like languages ready to replace Ruby right now.
How to learn a new programming language
What have been the biggest stories or moments on HN this year?
In a Universe where consistency, soundness, orthogonal API design, modularity and evidence that the developers gave some thought to their language is expected. I would like to believe that this is such a Universe.

I mean, many of the endless list of functions imported into the default namespace were named so that their hashing distribution worked well with strlen for a hash. How much work went into working around the fact that just about the worst hashing function that you can come up with in three seconds was used?

And we can enumerate such blunders all day here. There are many better languages with good tooling, and guess what, they're free. I wouldn't use PHP if I can avoid it, and there's ample chance to avoid it nowadays.
For a Google-backed language to replace Rails, Golang has less of a shot IMHO. Mainly because the popularity of Rails stemmed initially from TextMate in the original screencasts. It'd be silly to say that's all that mattered so I'm going to merely strongly imply that without additional books or cookbooks, screen casts, etc. it's hard to see Golang taking off in a community that isn't already invested in learning it. Those looking for more stability will pick a JVM-based language, which includes JRuby, and call it a day.

If I had to then pick a replacement, I would argue for Dart. Dartlang has a much stronger set of novice documentation, nodejs-like magic of running in client and server, but advanced Google mojo like support for SIMD. All Dart really needs is Chrome support and a decent "Rails" clone to popularize server-side development. We're a few years off, but Dart could be quite exciting. Or it could end up running on the JVM like everything else :p
Sacha does it for a noble cause, comedic effect and makes it obvious that he's not serious. These guys are not trying to be entertaining, they're profiteering through hidden agendas perpetrated on their too-dumb-to-realize-it-audience.
I love getting another perspective from European publications. However, I've come to discover that the comments section of ANY worldwide newspaper makes you lose faith in the local population.
20 month old girl sings and dances to gangnam style
And everybody that wanted to distribute copies of Windows in the United States was forced to pay for a licence to avoid going to prison, by that same government that collected 30 cents of every dollar Bill Gates earned. Let's not pretend that private property isn't backed by force - necessary or otherwise - here. The average person has a lot less choice over whether to work for a living than Bill Gates has over whether to do business in the United States on its terms or not.
So what can you do ? You can't fight the private key retrieval right ?
I mention Wordpress only as great example of "getting this done" approach of PHP. Never did i mention it as example of "high quality PHP code".

phpBB and Drupal have their problems, but they both improved their code-base alot, moving from legacy PHP software to software that is much more maintainable. The road to "high quality software" is long, but throwing software out of the window instead of slowly improving it is not the right solution either.

Both projects have high numbers of unit-tests and can guarantee backwards compatibility and regression free releases in a much better way than most of the software out there in any company, written in any language.
I think the (right) assumption is that http basic auth should always be used with TLS. Its why you can't generally install multiple certs on the same ip without sni support, no http headers, uri, url's etc. make it over the wire before the transport layer handshake. I've never seen these credentials appear in logs, and many browsers strip the auth preamble from the address bar. Anyway just food for thought, http basic isn't as bad as made out.
This is not scientific research, but many folks quote Joel's article on Smart, Get's Stuff Done. http://www.joelonsoftware.com/articles/fog0000000073.html

Steve McConnell reported on the 10x phenomenon, but again it's not so rigorous that it could pass a Physics journal. http://www.construx.com/10x_Software_Development/Measuring_P...

Now venturing into the realm of survey design... If you were to ask 100 technical programming manager, and 100 banking vice presidents, "Would you be more likely to hire and promote your intern if they had 10 more IQ points, or put in 10 more hours per week" you would get a statistically significant different answer. This is based on a small sample size of personal observations across both industries. In finance and banking there gets to be a point where people are "smart enough". There is enough complexity in software that you can always extract more value from more intelligence.
I used to belong to a number of hacking(carding) forums a while back. I never participated in the activities, but did take an interest in their source codes, tools, etc. Its interesting to watch people such as Iserdo show up in new articles like this as they were well respected members on the forums and were looked up to. I remember Iserdo from one particular forum and its strange to think about the "off-topic" posts from Iserdo joking around. I can't help but feel I almost knew him
> What do you guys think? Is Ruby dying? Did you once use Ruby and have now started to use something else?

I was using Ruby as my main language for 3 years before I switched to first Coffeescript and then Scala now. Personally I prefer the simplicity (a function is a function) of Coffeescript and the richness (so many things to fool around) of Scala over Ruby.

The popularity of languages don't die over the course of a couple of years. Projects with legacy code rely on them and maintenance of their libraries. And legacy code is very very hard to kill.

If the interest is in finding out the trend of the "favorability" of a language, it might be more accurate to survey how many green field software products(not libraries, which could be driven by the need of improving some legacy code) are choosing it. Unfortunately, such survey is more expensive to perform, and might be close to impossible to perform retrospectively to understand the trend. Given the fact that the "popularity" of a language isn't that important, the favorability is probably even less, such survey is probably hard to justify.
How and why did anonymity come to become important to people?﻿
AFAIK Dart still does not have generators. I want to like Dart but if puts me in the same boat as Javascript does on the server, then NO.
I've seen people symlink graphics for reuse. For for reusing @2x graphics on iPad, etc.
Ask HN: Teach me to think like an engineer
A few years ago I often heard this advice: go to law school, because it will teach you how to think. Nowadays I keep hearing, reading or experiencing for myself that law school has been replaced with engineering, with many pundits citing someone's background in engineering as the key factor that helped them solve all manner of non-engineering problems. For example, from the WaPo piece on Edward Snowden currently on the frontpage: "Snowden is an orderly thinker, with an engineer’s approach to problem-solving." How can I learn to be an "orderly thinker"?
Pouring Cheese on Icy Roads in Wisconsin
Ruby is still holding its own in he HN hiring trends too[1]

[1] http://www.ryan-williams.net/hacker-news-hiring-trends/2013/...
With so many problem's, I doubt it's just an issue of testing. They probably have serious design issues and other engineering problems.
Mensa is one place. But there are others. Cerebrals Society, Intertel, Prometheus Society, The Triple Nines.

My role at Microsoft was as Subject Matter Expert. SME's don't write "much code" but we tend to prove problems are addressable in code and build proof of concept code.

My current role as CTO I work in python which is not a language I have been doing for very long. I struggle with Lambda's and List Comprehension, often opting to use slower constructs that a less experienced developer would use. But the logic is solid.

I also often am completely with out error handling, and just say. "Well duh, if you try and stuff HTML in my text field it breaks." or "Why did you use curly quotes I'm not handling your Unicode".

Part of that is "not knowing" because I don't do it 40 hours a week, and part of it is that it is cheaper to have other fix my code than it is to tie me up adding all the error handling and input validation.
The problem with the education system
It may be economically not significant, but its a huge pile of food.

I live on the east coast, and much of my food is still from California farms.
| Also most software has advanced features that require you to do things that use coding skills — setting up mail filters, creating spreadsheet formulas, even styles in Microsoft Word.

I've worked with many people who, while presumably listing Microsoft Office skills on their resume, spend time with repetitive tasks in Excel that could be done in minutes or seconds with a formula and a click-and-drag.

I've found that the hardest part is finding the best way to tell them that there is an easier way without being condescending or making them feel foolish. I usually go with "Hey, um, can I show you something?" But ideally this opens the window to realizing that you can make Excel (and computers in general) do stuff for you.
> Someone will probably be writing an OS kernel in Rust.

There are two or three of these, at least at the stage where kmain is Rust code. I'd be really excited to see this develop further.

I just don't have time for ever project I'd like to do :/
When I am healthy, or plant a fruit tree (on previously unused land), or come up with a better or healthier way of doing something, nobody else looses anything. (That has been going on since the dawn of time if you will, and certainly not just since the last 200 years.)

But on the other hand, a million dollars is in no small part worth a lot because most people don't have it; if everybody did, that wouldn't make everybody rich, it would just mean a loaf of bread now costs a million dollars. You can't just ignore that "because rising standards of living". Wealth is first and foremost a word, not an actual thing, and the associated concepts can be complex... but wealth purely in the sense of market shares, of bank accounts, even of being an expert in comparison to non-experts.. there is so much of what we tend to consider as wealth that is obviously a zero-sum game.
20 High-Paying Jobs That Make Workers Miserable
Google Santa Tracker - Follow Santa on his journey around the world
I like Go, but in my opinion it is not an appropriate language for building web applications. It makes for great sub-components of a larger stack which are focused and do relatively low-level tasks (networking, file serving, caching, etc.). It is also great for scripting where you need easy out-of-the-box concurrency.
I disagree. If have a $100,000, and somebody else has zero, neither of us have any value until I spend the money.

If I spent the $10,000 to have someone do my laundry for the year (increasing my free time), then they have $10,000 with which to buy things that they might value more than the time doing my laundry. It may be groceries, it might be books, it might be a vacation.

If I invest the remaining $90,000 (let's say by buying a bank CD) then the bank will lend the money out to people, who have an opportunity to buy houses, start businesses, or otherwise put it to use.

Unless I stick the money under my mattress, putting money to use helps others. Nobody forces them to accept it.
High quality PHP does not exists, since PHP is ultra low quality language:
http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de...
Ruby IS dying faster than MongoDB! Evidence to prove it! http://bit.ly/1c9vo1S
And I really couldn't give one, at least in this setting. And really I've yet to see a good estimate for cost of living. Full time in minimum wage-land is 35 scheduled hours, less if you are let go early. Getting behind on bills also constitutes additional fees.

As far as what I remember, I ended up having about $100-150 left after bills per pay period. There are other factors here as well, bad roommate, car accident, that I'm not going into.
I don't disagree that that is how it would be portrayed by the media and viewed by the public. But a thinking man would argue otherwise, since it would mean that a terrorist attacked just when the NSA had the most amount of information available ever. A terrorist attack right now would show that dragnet surveillance on top of being Orwellian is also ineffective. When you're looking for more needles, collecting more hay without extremely powerful tools for hay processing is insanity.
And how do you think most people get started? As pros?

Again php is great for 90% of the things that is done on the internet today and its popular exactly because it's not claiming to be more than it is and easy to get started with.

No other language not even python especially not ruby does that as well. And then we haven't even talked about how easy it is to use php with javasrcipt, html and css.
Yes PHP is deceptive in that it saves you about 2 hours of your life right at the setup, compared to other languages. You end up paying them in spades over the next 5 years you'll be using it. I should know.
Smartphones (and the distinction at the low end is blurring fast) are simply displacing PCs, as was inevitable and anticipated by people such as Mr Gates when he launched his war on Symbian.

The fun part about this Internet of Things business is it will go one of two ways; either everything will end up linking through the cloud/NSA, a paradigm web browsers can handle, or it will work with a lot more peer-to-peer connections and long running services, for which the only viable frameworks today are native apps. There are a lot of vested interests pushing the former option, but I'm more willing to bet that the latter is what actually happens.
The Rapid Packing Container
I think that setting up apache+php is much harder than copy&pasting few basic lines of flask code a running simple python program.
Many regions skip landlines and go straight to mobile phones. This idea that everything will get stolen because people are poor speaks to a very small subset of the population. People have mobile phones in the favelas of Brazil. You don't get much poorer or high crime than than.
Software developers should better appreciate the uniqueness of their testing situation: like any other field, writing, maintaining, and executing takes time. But in no other field that I can think of is testing so relatively cost-free to continue doing..."regression" testing is either not possible or feasible elsewhere. The ability to automate and near effortlessly run tests with every code change has a fundamental impact.

To give a non-programming example...journalists make silly mistakes all the time about dates and misspelled names. It's not always, or even usually, because the reporter is incompetent. Sometimes they hurriedly typed in a fact from the top of their head and forgot to put a "TODO" near it (some in-house CMSes do not make meta-comments easy). Or, just as frequently, something got changed as the text moved from one editor's desk to another...there's pretty much no such thing as diff software, which is fundamentally different than keeping revisions.

Spellcheck can help detect and auto-fix some problems. But generally, you need to manually proof-read things to verify them, and at some point, you just assume that no one is going to change what you've verified, and then you press "Publish". It's not that continuous-proofing isn't possible, it's just not feasible.

It can be frustrating working with people who think testing software is to keep "proofreading" it over and over again...user testing is vital, obviously, but I'm talking about people who test the wrong, already-verified things, and then sap their energy not checking for other variations, and this is understandable and very human, of course.

I guess the big picture to understand is that screwups are frequent in every field, all the time. The best surgeons forget to wash their hands...not because they're idiots, but because emergency surgery will cause all kinds of things to go haywire, including basic procedure.

And obviously, very basic mistakes can occur in production code. But as programmers, we uniquely benefit from what we can do to prevent that. And this superpower of ours is something that I wish was more conveyable to the greater world.
I'd reverse those answers, actually.

1) the mailing list post states that OpenSSL wants to be comprehensive, even when that means providing implementations of algorithms that you probably shouldn't use. The inclusion of weak, or even broken, algorithms does not undermine the product as a whole given this mission. It has no impact on the effectiveness of other, stronger algorithms in OpenSSL.

2) OpenSSL knew that one of the algorithms in the standard was weak, but thought it was still valuable to implement the standard. again, the comprehensiveness goal means it's up to the end users to utilize OpenSSL in a manner consistent with their use case.
Well, you can lock down the device so that the end user doesn't own it, doesn't have root, and can't inspect your binary/data outside of your exposed interface. Which is exactly what iPhones and many Android vendors attempt to do.
Nice story. Tell me another one.
Great idea. Thanks for sharing!

A test suite would be great (as mentioned by JadeNB) but is the end of this something along the lines of a MOOC or a programming community?
TIOBE results for Ruby won't be the same just quite yet, because December 25 is the traditional Ruby release date. Ruby will get a lot of press over the next week that's still in December, but wouldn't be counted yet.
I see C and Ruby code being written every day in San Francisco.
You are in the wrong universe mate.

And you are missing the point. It's not just about the language it's about all the other things around the language.

How easy it is to find a webhotel and get started, how easy it integrates with HTML, JavaScript, CSS.

Of course it's ugly, but who besides a bunch of snobs and people who actually can't use it really cares? Who should care?
Gov. propaganda "Sponsored by Windows"?
Google considering making its own computer chips
Maybe it's just me, but I need you to tie this together for me.
Just what we need, some more Objectivism.

If the free market ensured that all people were given a wage that adequately reflected their value, the bottom 40% of earners would be getting more than 10% of the income.

Bill Gates paid 30 cents of every dollar in exchange for access to an educated and healthy workforce, use of the interstates for shipping, use of the police and military for protection, and use of a contract law system. Microsoft then abused its wealth to "embrace, extend, extinguish;" which is sort of a perfect illustration of how consolidating lots of money gives totally unbalanced market advantages to a few entities.
I disagree.

Ruby was slow (still is), but that trend is changing. More and more effort is put into speeding up and modernising Ruby in general.

It might have only begun to mature, but it's definitely getting a there.

Rubinius is a lot faster than MRI and has proper multithreading support. There is also JRuby, which runs on JVM.
Consider making some nice feature that no other service has. For instance, user A may "secretly" mark that he likes user B. When that attraction is reciprocal, it's made known (visible) to both of them.

That's one of the weird ideas I had while studying relational algebra.
That logo is absolutely awful. It's like the CEO got his "superstar" nephew to do on the cheap.
This is a decent guide for installing from source, which is itself, quite instructive. I just wish they included the make check lines as well, probably the best way to make sure things are going according to plan.
Hilarious and brilliant!

Now to only add the vowel/consonant choosing for optimal letter sets and solving the number puzzles.

I've been trying to come up with a comparison about it being a poor man's Watson, but failed.
I don't disagree with you at all.