skysight-inc/HackerNews huggingface dataset:
I didn't appreciate unit testing until I started doing development test-first in Smalltalk. You just sketch out the skeleton of your classes with instance variables and accessors. Then you write tests the way you want your objects to work (design your API by pretending to use it). Then run your tests, and marvel as the debugger stops on missing methods and lets you create them at that point and continue the test. It's a terrific way to get your code right the first time.

I don't know what he's using there at Justin.tv, but most languages that are more rigid (than Smalltalk or Ruby for example) are certainly not quite as nice for unit testing.
>> "If not for my unit tests, I'd be scared to change much of anything, for fear of stirring up a whole bunch of trouble that I'll have to fix later on."

For me, if I had unit tests everywhere, I'd be scared to change much of anything, knowing that after the refactoring, and usual testing/checking things work, I'd then have to rewrite/fix unit tests.
I like the color scheme actually. It makes all those small backquotes and weird characters stand out.
broke my BlackBerry 8800
Ask HN: how to start my own business?
Well, when I read startup stories and their bibles, I show my respects and envy them their good fortune :) We know that success is hard to be copied. Sometime I felt an impulse to start my own business, and when calm down, I double myself is not capable enough.

Here I'd like ask the question -- what abilities are necessary in one startup? and any tips to training myself? Thanks.
OT: Is a subscription to Gamasutra worth it?
Buried halfway in the article is this completely out of place pun: Searching for the red flag that says: “I can’t stop this bleeding, deep inside of me”
No really it is ;)

As I said it is a fine line: but read into it and their main aim is to stop them using the ads. That's an attempt at censorship (I'm not disagreeing that it is a boycott too).
There are sites which have severe problems with persistent trolls -- the kind that, once banned, will come back under pseudonym after pseudonym. A lot of spammers fall under this category. And, yes, I expect that charging money will solve that problem. This may be why some sites have had great success with charging money -- they needed a big hammer to solve a big problem.

But is that a problem HN needs to solve? My impression is that whatever PG is doing to keep out the spammers is working very well. I don't see a lot of complaints about it, even from PG himself. (Not that PG ever seems to complain. He just quietly goes about the business of trying things.) What people seem to be complaining about is a sort of gradual degradation in the quality of comment threads. That's not a problem you can easily solve by banning anyone, unless you really do want to make people flee in terror. ("That LOLcode meme used to be funny, but now it's ten months past expiration! The penalty is death.")
Invite-only would get rid of people like me, who come here to learn from those who are able to do, with hopes that one of these days I'll be able to do it myself. I lurk, yes, and only try to comment when I feel I can contribute to the discussion. But I certainly don't troll, or post witty one liners just to get my karma up.
A pay site would at least allow me in, but I don't know anyone here, and no one here knows who I am, so I wouldn't know how to get an invite.
The other side of the coin is that they've maintained arguably the best General BBS for years and their members work en-mass to do some really insanely good (and bad!) stuff. SA basically has the best of the best in whatever the members choose to do.
I'm talking about the personal history an individual perceives through his memories. The history that connects the "me" of the now to the "me" of the past.
Native Lizards Evolve to Escape Attacks by Fire Ants
I thought the ads were stupid and tasteless... but come on, you're already watching war porn (pro sports) and you are going to get upset about some cleavage?
I'll pay that and a little more without hesitating.
Sounds great! But in the meantime, I've put a couple of prototypes online, got a bunch of feedback, iterated, and figured out that nobody wanted the thing we designed in the first place. I've moved on to an evolution of the original idea, while you're still focused on getting the first idea to work "perfectly".

My point is that unit tests aren't cost-free, and their ROI is awful for most things.
Apparently you work at Justin.TV. I don't know how big your individual projects are, but personally, I didn't get unit-testing religion until I started working on really big stuff, close to the limits of what I'm capable of. I worked for a year on a 60,000 line program, and it started getting painful. I worked for another year on a 100,000 line program, and that's when I finally had to relent and start writing unit tests.

Here's a common scenario that made me want to write tests. I want to implement feature A, but to make it work, I'm first going to have to write library B and C. So I write library B, but there is no way to test it in the program yet, because feature A doesn't exist. Right after I've finished the code, I have a pretty good idea of where things might go wrong, and what corner cases I want to exercise. But by the time I finish library C and then get around to implementing feature A, I've forgotten that stuff. Pain points go unaddressed.

In summary, unit tests really start to show their value when you're working on a program that's too big to fit into your head all at once.
How far can we generalize this? If an application has millions of users, can just a little of your server-side load into their browsers can end up saving real money in server/scaling costs?

More evil-ly, how much computation/storage capacity could Google get by pushing off work/safety advantage of GMail users' machines? Of course, a single computer isn't reliable, but with millions of users, it's a simple matter of failure/redundancy probability. A distributed file system in browers' Gears databases would work just like GFS, but with higher failure rates.
It's a false sense of security though. It's like putting a big badge on your website saying it 'validates' - even if it's totally broken in real world browsers.

In my experience, the more common bugs are integration bugs, scaling bugs, weird memory usage issues, not to mention interfacing to external systems - for example some weird browser comes along and does idiotic requests you'd never expect a sane person to do.

Those things are very hard to test for, and don't really produce a good ROI as abstractbill says... Best just to log things, graph things where possible, spot weirdness, investigate and fix.
What's really interesting, now that I finished reading, is that the test in question has been available for years, but is unused because of a lack of normal values. The research that's being done isn't exciting or ground-breaking, it's just measuring these values over a lot of samples, and yet it could have a profound impact.

The non-sexy science can sometimes be really useful.
I understand your reluctance, and I'd love to see strong editorializing on some site on the internet. It seems, though, as any site becomes reasonably large the editorializing disappears and is replaced with algorithms.

Has the idea I proposed (essentially the Netflix recommendation system) ever been tried before for a comment/story posting system? If not, why not go the whole hog and try it? Let's see if it works.
Wow this is pretty awesome, our small team has been focused on the base app and utility but we're definitely now looking around for tools like to take our apps to the next level.

I think the next 6 months will be interesting for the AppStore as the junk apps are shaken out (economic pressure and through changes in the store's functionality), and developer tools begin to mature.
Censorship requires a censor with the ability to remove information. They don't have that and at least as far as is reported in this article, they're not pushing the people with the power to censure the media to do so.

Trying to get a company to stop doing something that a consumer considers offensive isn't censorship. This is just like the anti-sweatshop boycotts that are common on the left end of the political spectrum.
I'd pay. I left Digg because the signal to noise ratio got so bad that just felt it wasn't worth my time anymore.
Managerspeak - A Developer's Guide To Speaking to Non-Technical Managers
you just need two things, really: a good idea, and the ability/will to execute your idea. everything else is bonus.
MSFS advantages:

-- visuals (though X-Plane 9 closed this gap a fair amount)

-- licensed scenery content (scenery library)

-- large developer/add-on community (Level3, etc)

X-Plane advantages:

-- Flight Model (geometry based, not lookuptable based)

-- Mutli-Platform (Win/Mac/Linux)

-- Networked operation out of box (vs 3rd party payware FSUIPC)

-- Developer relations (all major devs maintain blogs, etc)

-- Scenery/aircraft development tools (open-source AC3D plugin, WED, DSFMaker)
Unit tests have nothing to do with, and aren't in any way mutually exclusive to load testing and logging and user reports. Frankly, it just sounds naive to say that you replaced unit testing with logging, or load testing, or letting your users find the bugs for you.

People that do unit tests do all that stuff too!

Your lack of specs also has nothing to do with unit testing. It might dictate the difficultly in writing acceptance tests, but that's a completely different subject.

I don't feel the need to proselytize unit tests since you've already written them off, but what's the point to posting about why you don't like something only to back it up with some sort of rambling, incoherent analogy that you probably don't even believe?
Boston Film Transfer
The responsibility of Film and Television at Boston University offers undergraduate and graduate degrees leading to profession in filmmaking, digital video, Taping & Production.
It's much easier and more likely for someone to give you money than to give you more time.
Yes, I am talking about intended trolling. 'Accidental' trolls can be brought to shape by the community, as they always have. Also, the payment T&Cs should say that the community still has the right to kick them out, refunding the amount if necessary.
That's a cute aphorism, but I'll mod you up if you can provide interesting examples!
It is amazing how relevant most of these rules are more than 50 years after they were published. Kelly would have been one heck of a founder.

I found this one on documentation particularly applicable.. 5. There must be a minimum number of reports required, but important work must be recorded thoroughly.
This is arc code - try reading it, I think you'll be surprised. It does takes a little effort [1], but certainly no UML diagrams - there is an especially fun learning curve around learning what the macros do [2], but nothing like the training needed to read theoretical math or CS papers.

1. The tutorial helps: http://ycombinator.com/arc/tut.txt

2. `aif' and `awhen' are good examples not covered in the tutorial: they set "it" variables to the result of the test:

(mac aif (expr . body)
`(let it ,expr
(if it
,@(if (cddr body)
`(,(car body) (aif ,@(cdr body)))
body))))

(mac awhen (expr . body)
`(let it ,expr (if it (do ,@body))))
"Accepted into the California Western School of Law, a private San Diego institution, Kellum couldn't swing the $36,000 in annual tuition with financial aid and part-time work."

That choice of a law school was probably crucial in how the story unfolded. That's not a law school with a high return on investment in that local job market.
There is already a list of leaders, which I see you are on.
That's why I'd propose a forking. Create mini-HN communities and slowly thin out the userbase. That's if the site ever gets too big. It's perfectly manageable right now for me - I don't think new systems are necessary.

Ask yourself: has content recommendation ever worked? I've never seen an "If you liked X you'll like Y" work for any original content. Even for movies/books it's shady at best. Working with something as complex as comments is too tricky to make worse. How do you measure tone versus stance versus wit versus writing style? They're all elements of what I look for in comments.
Ask HN: How much transparency for an online reputation system?
In light of the new orange usernames, it made me think about something that's been bothering me for a while. Please bear with me - this makes more sense as a blog post, but I'm not going to get the comments there as I will here. :)

At Dawdle, we have a substantively different approach to how we evaluate sellers versus eBay and Amazon. At first, we didn't want to rate sellers at all, given that we have a 100% money back guarantee like StubHub. However, it became clear that users just weren't comfortable with no seller ratings given the type of merchandise on Dawdle - new and used video games, systems, and accessories.

So when we decided that we needed to have a seller rating, we tried to figure out the best approach. We thought that eBay/Amazon-style ratings aren't the greatest because it's all about accumulation of points (+/- 1, similar to Karma here on HN), where each additional point has diminishing value. So we decided just to start with buyer feedback, but layer a ton of other things on top of that. Thing is, we don't say what all those layers are: http://www.dawdle.com/help/index.php/sell-feedback/

We wanted to make sure that people weren't setting up shill accounts and inflating their ratings, and we like how Google gives guidance but not the exact algorithm for their rankings. The general idea is to encourage good behavior and to allow us some leeway to fix things as we see issues.

So what do you think? Should we tell people how we calculate it so that everyone knows it's on the up and up and we're not secretly favoring people? Or can we get people to try us out knowing that they're on a much more level playing field as a new user versus older users? (We're going to make it even easier to pick what seller you're buying from - you couldn't in our beta, just like StubHub doesn't tell you who the ultimate seller is - and these sorts of things are very important to both buyers and sellers.)
http://en.wikipedia.org/wiki/Censorship
"Censorship is the suppression of speech or deletion of communicative material which may be considered objectionable, harmful or sensitive, as determined by a censor."

vs.

http://en.wikipedia.org/wiki/Boycott

"A boycott is a form of consumer activism involving the act of voluntarily abstaining from using, buying, or dealing with someone or some other organization as an expression of protest, usually of political reasons."

Clearly, the Christian businessman in the article would like GoDaddy to "clean up" their act, but I didn't find any request by him for government intervention, nor any government action at play with regard to GoDaddy. Plain and simply, he has a moral objection to pornographic advertising, and has chosen to take his business elsewhere.

As a Christian myself, I've held the same stance towards GoDaddy for a long time, because I personally don't like being sold domain names with sex. They can continue to do business as they choose, and I can continue to state my opinion about their practices and take my business elsewhere.
Toyota Shuts Down All Assembly Lines in Japan... Except One
We are different and a lot of "these" matters are subjective. E.g. some use Vim while others use Emacs and some people prefer to work from home while others prefer to work from an office. What's better is not that objective and people should do what they feel best with.
I can't believe that. If you really wanted to spend the money for hn, which it seems many here do, you could save up 5$ worth of quarters at least.
Regarding the mention of Woz's interest in joining the board at Apple. What exactly would his role be there. I know Woz is an engineer, and a well respected one at that, but Woz seems like he just likes to tinker with things on a personal level. Would Woz have that kind of involvement with technology on the Apple board?
Couldn't you have tried to break that 100,000 line program up into ten 10,000 line programs? You might have found the additional benefit that each of the ten programs could be useful on its own. That's how I would usually attack this kind of problem, rather than throwing unit tests at it.
I'd pay ten dollars a year for HN if everyone else had to pay five dollars a year. :-)

In all seriousness, K5 provides a pretty good example of what happens when you do this:

http://www.kuro5hin.org/story/2007/9/10/13920/3664
Solve a puzzle for comment scrip
let's suppose: in order to comment, a user must pay one scrip. to get scrip, a user must solve small puzzles and challenges. a lot of us would find that fun in itself, and then we'd spend comments wisely.

i thought about applying this to submissions, too, but i think plonking submissions into hierarchical categories would go a long way towards useful customization.
You need to set aside your obvious disdain for religion so you can see this for what it is. This isn't censorship or even an attempt at an organized boycott as far as I can tell. This is good old fashioned market forces at work. And, frankly, while I'm not a very religious person, I've always hated the ads too and as a direct result have never even considered using GoDaddy.
Speaking about the "concentration span" I can't but notice that sometimes it's very easy to get lost when you are overly concentrated. That's why it is extremely important to discuss new ideas, algorithms or implementations within the team.

You physically reduce possible sources of distraction when working from home, but you still need to work hard to improve your concentration skills.

That's why I think that a good office ( the one with some private and quiet space for developer) + good discipline ( reserve some time for hanging around and talking, be concentrated all the other time) will work way better than working from home.
[Since I can't update the post itself anymore, I'll write an update with a reply]

After the great discussion that has followed, a number of good modifications has been proposed that could significantly reduce grievances. The fee could be one-time, and proceeds donated to charity. Also, uers with a lot of karma could invite other users (in case they cannot register due to no cc/no paypal/underage etc.) This would probably require an area for users to request invites etc. but even the process would certainly make users more mindful of their posting. Additionally, the new users could be mentored by the one inducting them, further increasing culture preservation. Keep the thoughts coming.
I certainly do believe the analogy.

The point was that the ROI on unit tests is almost always very much lower than the ROI of the others. So when time gets tight (as it always is in a startup), you should generally put effort into all the other things and not into unit tests.
> so that everyone knows it's on the up and up and we're not secretly favoring people?

Trust has to start somewhere. The people that think the above will in the most part either a) not be using your site or b) not convinced by your "open algorithms" anyway.

On the other hand opening them up fully makes it easier to game the system: unless it is a bulletproof system I would avoid full disclosure.
Oh you aren't from the us, I got ya. That would be difficult.
Interpretation of quantum mechanics is outside of the scope of physics, it's more like philosophy or something. For physics to be like economy in that respect, there would have to exist, for example, university professors who still wouldn't believe special relativity or quantum mechanics and claim that only the classical newtonian mechanics makes any sense.
often (and I'm not sure if this is a good thing or not...) it is only the second one of those that you need :)
I am saying they occupied a disproportionate size of the economy relative to any potential they had to add value.

Yes, they may have sold investments to those who wanted to invest, like the first commenter said, but that's just filling a need, not adding value to people's lives.
In this day and age college is worthless. Its pretty much 4 more years of high school, except this time you are paying $40-160K for it.

The problem is that most college students deceive themselves. They go to school thinking that all those people who graduate and get $80-100K jobs are the norm, when they aren't. So they get into debt to pay for school, because "its an investment" and then when they graduate they find out that instead of $80-100K, they have to settle for a job paying $30K a year.

So you pretty much put off 4 years of salary, 4 years of raises, 4 years of building contacts, 4 years of climbing the corporate ladder, all on the premise that it'll pay off in the long term. But it doesn't.

As long as the person didn't get a job at McDonalds, he'll be making more money after 4 years, than you would as a fresh college grad. And he won't have the huge debt, like you do. And that goes double for a person who majored in liberal arts.
So, you would feel sensible in caring about (having altruistic feelings for) someone who could remember being you. Yes?

Would you feel sensible in caring about the future-you if (the present) you knew that he was going to have amnesia?

Me: "I'm going to drain my bank account and run wild, having a good time, because I know that tomorrow (and forever after) I won't remember having done such a dastardly thing to myself."

Does that make sense?
I second this suggestion (and agree with the hypothesis, although its probably not just a function of raw problem complexity, other variables must come into play)

Hasnt it been done already? Couldnt find anything I would class as 'scientific' with a quick google search. Would be a good thesis for someone.
Teams gather around ideas, without the spark you have no fire.

Both are equally important, but I understand where you are coming from.

Yesterday I walked away from a startup that was created around my initial idea. Sucks to walk away from that but I couldnt trust the players at the table and eventually it would of gone south and I would of stressed my way into heart failure as a result.

Execute your own ideas if at all possible. The barriers to do so get easier and easier every day. Learn accounting, and get as many good biz mentors as possible. Soak it all up- and own your own creativity- because there are millions of people who cant create for #!@$ who are just waiting to pounce on your skinny and walk right out the door with it.
But it was yesterday--only ~15 hours earlier. Plus, he added a ? on the end to force the system to accept the duplicate.
DomainTyper: Fast Domain Search (with a name generator on the left)
Seen this used a few times before, but not usually with ugly custom attributes and innerHTML :/

Those 2 things really have no place anywhere IMHO.
Command-line Fu
I'm reminded of (Good) Will Hunting's zing to some jerk in a bar, right after calling him out (in a pretty spectacular way) for plagiarizing:

"See, the sad thing about a guy like you is in fifty years you're going start doing some thinking of your own, and you're gonna come up with the fact that there are two certainties in life. One, don't do that. And two, you dropped a hundred and fifty grand on a fucking education you coulda got a dollar fifty in late charges at the public library."

"Yeah, but I will have a degree," he says in return.

It's an open question whether the markets in general (i.e. not just startups, tech, etc.) will get over the apparent value baked into a college degree / GPA, and start worrying about what kids can do, what they know, and how they think.
but "good ideas have lonely childhoods". Selling vision is hard.
good reminder. nonetheless, see noodle's comment for why this fails to console.
I would gladly pay $5/year