skysight-inc/HackerNews huggingface dataset:
A while back I tried to learn Backbone.js but had problems grokking material from the docs and various tutorials. Today I decided to buckle down and create a simple app with it. This is the result!

P.S. One thing, I'm not fully sure if I'm using Backbone right (I followed the Todo tutorial). It all works but something about the way I implemented the model binding feels awkward. If anyone has any suggestions for improving the code, I'd definitely appreciate it!
One unmentioned caveat of SGD is how to configure the learning rate schedule. scikit-learn is using Bottou's tricks that seem to work reasonably well in practice but it might even be better to implement the online estimate of optimal learning rate schedule from this NIPS 2012 pre-print: http://arxiv.org/abs/1206.1106 (No More Pesky Learning Rates).
The power of stupid ideas
Not many people using it since I haven't publicized it. For encryption, it's using the high grade AES algorithm, which is a standard cipher approved by the NSA for top secret information.
Another video from E3:

http://www.giantbomb.com/e3-2012-john-carmack-interview/17-6...
iTunes and WMP, mostly.

To be honest, I don't know what else people are using. It's one of the places I've had to do the least research in software. WinAMP has been a stalwart for over a decade.
I absolutely loved that player. I actually STILL use it. It runs really nice under wine.

I thought about doing a clone of it and making it open source under the GPL but I'm still not quite as productive as I can be in C yet.
Nice. I similarly built streetbooking.com (which I think is broken because of some api changes) for the same reason. This sort of thing comes in handy when you meet people for the first time with common names. Good luck finding them through the native people search.
i've being dalliancing in haughtiness for years.
AngelHack Hackathon Final Judging Live Stream (30 teams)
Thank you for that link. It was a very entertaining read.
It's too bad Windows support is not a priority. Half the point of Dropbox is to keep files synced across all computers.
Why we fool ourselves into optimism
reminds me of sky island http://games.adultswim.com/sky-island-puzzle-online-game.htm...
There are significant lessons to be learned from functional programming, the least of which is the value of immutability in making complex systems comprehensible.

Immutability is almost completely necessary for easy-to-understand concurrency, and extremely helpful in designing easy-to-understand APIs and operations on in-memory-models.

It is a poor programmer indeed that discards the lessons of FP and instead writes purely imperative OO. Your interns may have been writing bad code, but it wasn't the "functional" part that was the problem.
Switched On: Surface tension
The Anatomy Of A Pass, A Quantitative Analysis On Why A VC Passes
I have one for your list:

0. APIs that don't leverage the compiler to enforce correctness and catch bugs at compile time.

Designing APIs in such a way often requires FP language features. You can often model equivalent APIs without FP features, but they'll be so verbose as to be unusable.
Already discussed 5 days ago, with plenty of comments: http://news.ycombinator.com/item?id=4133396
Whilst I salute the guy for showing initiative and entrepreneurship, I wish these sort of articles got less attention (everywhere, not specifically on HN).

These sort of articles are starting to get the feel of the 'Get rich quick' or 'Work from home and earn big dollars' ads you see stuck on walls and sign posts - it's the new Amway.
> Is it actually possible for everyone to sign their executables? Last time I did it, I had to fork over something like $250/yr for a signing key along with providing copies of various documents. This seems a little high for someone who just, say, wants to make free utilities available to the world.

No, it's not. If you sell programs, then forking over the $250 a year makes sense. If you give away programs, well, is it a loss if a user is scared off? (Serious question)

> In the case of Firefox, one would think it would be possible for you guys to do something about it on your end.

In the end, this is what we did. But it is impossible to do this for everybody.

> because you're the ones who added this reputation system that's causing users grief.

Oh boy. We did keep stats on this. Files that the reputation system scored to be "bad" and were later vetted. All in all, the reputation system works really well. There are some false positives and those do cause grief, but a majority of the time, the system blocks legitimately bad software.
Anyone with even an ounce of critical skill who has educated themselves on the literature of the firm knows that a hierarchical management structure does not suddenly become a flat structure simply because management has decided to "get out of the way." Not to mention the absence of literature on what it means exactly for management to "get out of the way."
For years it was the only player that could also handle digital tracker (.mod, .s3m, .xm, .it, etc.) files more or less correctly. In those days, downloading a 100k .mod file over my dial-up or a 5MB mp3 was a big deal and being able to find lots of cheap music that was also light on the bandwidth was invaluable.

I loved Sonique.
Then I would be interested about your opinion on OcaML/MLTon, F# and Scala. To me they seem like a good balance. If you are more adventurous then try Felix.

EDIT: apparently someone did not like your comment. Some downvotes confound me.
Someone Needs to Make a Better Keyboard
Hvac trade school
The South Florida Academy of AC is a private HVAC Academy that can teach you HVAC training in only 8 weeks! Classroom or Home Study Programs Available.
Then I'm not sure if you should claim to be a growth hacker. My impressions of the term is someone who is proficient at both coding and marketing...
I still use winamp. I tried VLC, but I can't seem to make the playlist permanently visible while it plays media. Maybe I'm an idiot, but that frustrated me so I went back to winamp. I'd love to hear a tip from anyone about how to make VLC always show the playlist..
maybe a new kickstarter project?
Too Many Advertisements
Sorry, did I miss something. What is the first rule?
Agreed. This article seems highly suspect, and anecdotes about success are not particularly helpful in becoming successful.
For a while AOL support winamp pretty well. I remember watching hundreds of hours of streaming TV (and streaming radio) over Shoutcast and in2tv when AOL was trying to become a media company.

Now that all seems to be dead...fortunately some of it live on...VLC supports shoutcast TV and there are still dozens of stations still broadcasting.
Learn from the Brightest Minds.
Do people use VLC as their main music player? I've always found its organization pretty primitive.
This is most definitely not HN material.
Off the top of my head, 'back in the day,' the transition animations on OSX were private APIs and only used by Apple software. Some smaller software products that did things like hack in virtual desktop support hooked into them, but it also meant that OS updates could break the software (mostly after major revision updates).
When I tried playing it, it was a very confusing experience. The built in tutorial was very simple, and the actual game didn't resemble it much at all. I gave up.
It wouldn't be a problem if the company was not a +300 employees one. It's baffling me as well.
I don't know about other developers mentioned in the article. But Linus did say that he has to be honest, he once was a kind of people who sugar-coating the truth to keep the spirit of Linux contributors. Until one day someone proposed a feature that Linus was not really happy with, but he keep quite. The guy who propose the feature spent a lot of time working on it until the kernel release date, when Linus has to decide whether or not to include that feature, and when he saw that it was horrible, he has to say it honestly to the team, and after that he heard one of the guy in the team commit suicide.

I hope this article doesn't put any of the people mentioned as someone who misused their position and pride to bash others. When you're trying to build quality software, everyone need to be honest and share their views when things aren't as good as they should be, and need to handle good criticism in a positive view.
Nice read to make you remember the good 'ole days of MP3 ripping when it actually took some work. I'm not sure if Winamp could have ever reach iTunes level but it was a major piece of software in the 90s. Nostalgia!
Just FYI, the Todo tutorial app is horribly outdated. I'd check out some of the newer sources out there if I were you. Stackoverflow.com is a good resource.
Most people that I know use foobar2000.
I imagine you'd advertise for a support specialist in the traditional sense, but once hired, they wouldn't have a job title. Their skills would be in customer support though so that's what they would naturally do. If they tried to work on development, but had no skills, then the group would remove them from the project. They'd then have to go back to support or find something else they can work on with their skill set.
Sanskrit As A Language Of Science
They should make all-metal keyboards
Ahhh facing worlds. I loved playing sniper on that map. Not as challenging as some of the other maps but tons of fun.
And a surprising number of people now use Spotify or Pandora for their primary music interface.
Can Facebook change the search paradigm?
I note that he claims to have 29 sites, but hasn't listed them. A simple list of the 29 super-duper money-making sites...that shouldn't be so hard to provide...
I don't think a sale to Facebook makes much sense at all. While FB wants their own phone, they don't even know if they can be successful with it, and I don't think they want a hemorrhaging phone business on top of that.
Interesting for its sociopolitical primary application, but this paragraph from the discussion section shows its general relevance to a lot of strong-AI tasks:

It applies whenever a
‘‘bell-ringer’’ event must be found by sampling with replacement,
but can be recognized when seen. For example, one can thus sample
paths through a trellis or hidden Markov model when their number
is too large to enumerate explicitly, but one path can be recognized
(e.g., by secondary testing) as the desired bell ringer. It seems
peculiar that the method is not better known.

It does seem a little peculiar, although it's not quite as unknown as the author implies; rather, it provides a mathematical justification for one of the hacks we would sometimes try (often helpfully!) if our figure-of-merit was being overly dominated by high-ranking items: take the square root of the probability[0] and use that. :)

[0] Well, once we'd got to the point of this kind of hackery to improve our performance, it typically wasn't much of a probability anymore, at least not as such; call it a "probability-derived score".
sorry, but this is just another story about a teenage kid who did "SEO" to reap money from naive people and then brag about it.
Is the related kickstarter active yet? Link?
I think Wikipedia has done a first class job of destroying peoples trust into "nouns as links". They mention a blog entry in a Wikipedia article, but of course clicking blog just takes you to the Wikipedia article on blogs, instead of the actual blog in question (which you then have to find through the references).

Guaranteed confusion every time.
Who has a "best friend" who is a fitness trainer at age 17?

He doesn't seem to be US-based (mentions IB, and English is his second language) so not paying (as much) tax must help things.

It sounds like SEO linkbait/blogspam type stuff to me—he mentions surveys too.
I wouldn't really blame him if it was indeed true. If he did show them, there will be 100 clones for each with a few months because they'd think that exactly the niches he's in must be making him this kind of money, and they won't bother to think for themselves.
Native Android or HTML5
To paraphrase Torvalds, you've been brain damaged by standard Windows button UI.

Mac OS X takes the approach of labeling buttons with action verbs instead. This makes scanning dialogs much simpler; with Yes/No/Cancel, you have to carefully read the dialog message (and hopefully the text is clear) so you make the right choice; or you sometimes make the wrong choice since nearly all dialogs use Yes/No/Cancel and your brain didn't do branch prediction properly.

In your case you are annoyed since perhaps you know exactly what the app is going to do and you don't want the extra 500ms overhead, but for your Average User, clearly defining a button's action is better.
Simple but nice, good use of Bootstrap without looking like Bootstrap. How about a way to activate an entire column?
Magnetic Cors - Part I - Properties [vid]
Part II - https://www.youtube.com/watch?v=An-GIhx0z4c&feature=relm...
I think what has multiplied the confusion factor in the years since it was released (can you believe the game came out in 2007?) is the... culture that has sprung up around it, fueled by a unique feedback loop between fans and Valve. There's this whole strange world of hats, crafting, backstories, inside jokes, Australia, and hats that has coalesced, making it about as culturally daunting for a newcomer as an established Blizzard game.

This feedback loop has evolved what was once billed as a "class-based team action game" to, and I quote Valve's official PR, "America's favorite war-themed hat simulator." I'm not kidding.
I've been in acquired companies a couple of times, and have friends who's told me what happened to them.

One common thing about every acquisition in our little sample is that first lie they told us was "nothing will change"
I guess so. But I really think this scenario is better for everyone involved if the employee in question has a single boss.
Ivo's answered so I'll just say the main trick to turning a function tail recursive is to have the function lug its state around. So always look to see if you can rewrite your function so it passes the current value explicitly to the next iteration. Non tail recursion is like winding a spring and then having it unwind, a jack in a box. Tail recursion is like a snowball rolling down a hill. You should always try to make a recursive function tail recursive if you can.

As for fold it's a bit involved and has a lot of scary sounding jargon on the way to understanding it. You can write a fold for a tree and then code depth first search in a couple lines. Folds follow some basic properties that allow for program derivation. I rarely use those but it does inform my programming. It's kind of like how knowing Lisp informs your python. There is also an opposite or dual to fold called unfold. You can write many algorithms efficiently just using fold and unfold and a couple techniques to prune inefficiencies. Fold is the same kind of object to your initial tree as say a matrix is to a vector, or a derivative is to a polynomial.
I was thinking of going that route, but now I wonder how long it is going to be before a Retina version comes out... Also, the Thunderbolt display doesn't have an eSATA port so I'd still need a converter and even the standalone ones still almost cost as much as the docking station I linked...
I did [PPC] for a month and made around a whooping $2.5. For me this was huge, and I was very happy about it.

I think that was the most important quote from the main article.

It's that type of excitement over relatively small gains (in most peoples eyes) that is one of the key points to becoming an entrepreneur.
If you're a marketing/growth hacker you should be further ahead than most freelancers already (I'm a good coder but don't know anything about marketing; I mostly find jobs through previous jobs). Were I to have your skills I'd try setting up a website for myself that advertised my services and using SEO/marketing knowledge to get the word out to local businesses, especially startups.
I can think back to the age of onion belts and when "press" was the dominant verb form to refer to activating a button; I'm not sure when that changed.
iTunes does all those things. :)
When I first spoke about investment, I did not mean the narrow meaning you've understood. I was talking about why people are poor and I discussed consuming resources versus using them to produce more resources.

Ok, but in that case, most poor people simply don't have much to invest in themselves. Most of their efforts are consumed each day in just getting a living (by implication: most people are poor).
Thanks, I had to resist the temptation to add the black nav bar at the top. Agree with the need to activate an entire col/row - I'll definitely add this.
If you were really a good C programmer, you can program in almost anything.
I bet the more common and more frustrating experience has been the ad services that auto-inject hover-ads into common nouns, such as "loans" or "books"
All those things and much more that I don't need/care. Too much bloat.
Thanks for the heads up, although I recall seeing that the Todos app was recently rewritten. Any suggestions for latest and greatest resources?
Express-Coffee Template 1.4
OK, so who cleans the toilets and empties the garbage? Contractors, presumably -- easier to get non-employees to do this than to incorporate menial staff into your oh-so-flat structure. Reminds me of the way ancient Rome ensured that all citizens were equal by creating a huge subclass of non-citizens.

What's my point? Just that it's easy to over-fetishize a non-heirarchical structure, but it only works (a) under certain very specialized circumstances and (b) with a little bit of smoke and mirrors.
Thought it wasn't so cool until I checked it out to see that this entire thing is a single <input>, not even an image in sight. Great job. It'd be cool to see as a light-switch that did something with page contrast.
Yeap, foobar2000 is basically the "standard" now.
I'm relatively young and entrepreneurial, and when I hear about people making loads of money in internet advertising like this (especially young people), my gut reaction is envy and jealously. I think "sheesh, I could totally be doing that"... but I always come to the conclusion that I would be absolutely miserable doing what these guys do, because it's just not something I'm into, and spending every waking moment doing something I hate/despise is certainly not how I want to live my life.

In fact, I cannot imagine being much happier than I am now. I live in Los Angeles, so naturally I am surrounded my wealthy individuals flaunting their money everywhere I go (houses, cars, etc), but despite all of this, I cannot imagine that these people are any happier than I am. Likewise, I don't imagine that I could be happier if I had the material possessions that they have.

This guy says he loves what he does and advocates others doing what they love, which is fantastic advice.
There are markets where the monthly cash cost of owning a home is lower than renting. It sort of looks like that could be the case in parts of the Peninsula right now -- but mainly because there just isn't much inventory either way.

Thinking like Warren Buffet ($1 today is not $1, but actually $20 after it compounds many cycles) is technically inaccurate (the correct thing is DCF/DV), but products a more correct result.
> Now when I go back to Java I often get frustrated and the amount of code I have to write simply to work around the fact that functions are not first class objects.

Frankly, I've mostly gotten over Java's lack of first-class functions and just make do with the boilerplate involved with regular for-loops or with anonymous implementations of interfaces that are just stand-ins for functions, etc. What I really struggle with nowadays is Java's (relative to Haskell's) weak type system. I'm only a novice Haskell programmer, but even so I miss things like Maybe, Either, tuples, etc, which can be really painful to work around the lack of in Java. I've realized I would rather work in a dynamically typed language or a strong statically typed language than the wretched mess that is Java.
IIRC, the Nullsoft team admitted they rushed out that release because they really wanted a version that had "mp3" in the name.

Also, that interface was called Wasabi.
The guy also admits to knowing barely anything about SEO.

"I have no idea about SEO, but if I can recall it was something about Web 2.0 blog links, high PR domains, etc."

I'm calling bullshit on this whole IAmA
Once you have other people involved, or any substantial expenses to offset, it's really worth incorporating.

I hate that California imposes a minimum $800/yr tax. That's the single worst tax law in California for startups -- a really pro business California would give companies years of minimal taxes ($50?) as domestic or foreign-registered corporations. Also, minimize all the compliance paperwork for a company with less than N employees, or where all employees own more than 5% equity. No UI/UC, WC, etc. Possibly a federal FICA holiday for small employers for 1-3 years, too.
How Nokia got bamboozled by Hollywood
Callaway razr hawk hybrid woods
And of course there always is a single boss even if this fact is hidden; in the case of Valve it's presumably gaben, who owns the majority of the company and must presumably be the final arbiter of everything that happens.

I can only assume that the actual firing process involves a lot of hushed talking followed by an approach to gaben followed by a discussion followed by a "sorry, bye".

One could in fact suggest that the flat management structure only works when there is exactly one clear owner of the company. Everyone can pretend that everyone gets a say, when it's clear to everyone who really has the final say.
Well, if the error reporting of Enumerable.Single() isn't good enough for you (i think it throws InvalidOperationExceptions with different messages for both error cases), nothing stops you from implementing it once for yourself and profit from the benefits everytime instead of writing the same looping constructs interlaced with error reporting again and again.

public static T MySingle<T>(
this IEnumerable<T> collection,
Func<T,bool> pred,
string foundNoneMsg,
string notUniqueMsg) {
Check.IsNotNull(collection, "collection was null");
var filtered = items.Where(item => pred(item));
Check.IsTrue(filtered.Any(), foundNoneMsg);
Check.IsFalse(filtered.Skip(1).Any(), notUniqueMsg);
return filtered.Single();
}

bool HasName(this Thing item, string name) {
Check.IsNotNull(item, "item was null");
Check.IsNotNull(item.Property, "item.Property was null");
Check.IsNotNullOrWhiteSpace(item.Property.Name, "item.Property.Name was null");
Check.IsNotNullOrWhiteSpace(name, "name was null or whitespace");
return item.Property.Name
.CompareTo(name, StringComparison.CultureInvariantIgnoreCase);
}

collection.MySingle(
item => item.HasName("Blah!"),
foundNoneMsg: "collection has no item with Property.Name 'Blah!'
notUniqueMsg: "collection contained more than one 'Blah!');
There is no talent shortage