skysight-inc/HackerNews huggingface dataset:
if it matters, i doubt many early start-ups worried about or even used version control. we used dropbox when starting out because we never worked on the same code, and we had to hit deadlines quickly. as it turns out, we got funded, and we took the time to polish the code (and implement version control) when we had the opportunity. a vast majority of founders of yc funded start-ups i've asked have told me they did not use version control early on (ie justin.tv and airbnb didn't, although i think reddit always did).

i know for a fact that youtube for example did not touch version control early on. you should definitely appreciate speed when you're starting because your ideas could change (and your code).

it's a trade off, and eventually you'll start doing stuff like unit testing. at some point, the more time you spend perfecting your code, the less time you can spend prototyping and changing the idea if it needs to be changed. i don't think it's comparable to a "wear your seatbelt, you should ALWAYS be using version control in EVERY situation" thing, you should really think about whether you need it. you should worry about hard disk failures, so do a back up every once in a while with a flash drive or dropbox at the very least. but version control has its own learning curve.
In fact, a few months spent learning best-practices for programming in general (including version control, proper testing, automated deployment, isolated environments, etc.) will pay dividends later. Learn these things now (and apply them even where they aren't necessary, in order to build experience and comfort level) and within a year or two I can practically guarantee you'll be better than at least 90% of working programmers.

There are so many life-altering tools available for developers now; far more than were available when I started programming. Unfortunately, the longer you build up bad (or simply inferior-to-current) programming practices, the harder it is to apply new, better techniques. Integrate them into your life now and you'll have a sturdy, solid foundation to build on.
How exactly do you send tweets while "playing" football?
Also submitted here, but no discussion yet.

http://news.ycombinator.com/item?id=800441
Also submitted here, but no discussion yet.

http://news.ycombinator.com/item?id=801712
The FTC doesn't like ads implying things are for sale that are not, either -- but at this scale enforcement is unlikely.
Didn't intend to cause harm in "straw-man"ing. I think it's valuable to know where people are coming from. You care enough about programming languages and verification to have a blog on it, that's awesome. It's perspective.

No where in the post is there an example advocating dynamic invocation based on computed strings. No where. In fact, the more I read your responses the less I believe what you're saying has anything to do with the contents and examples of the post. We're on the same page here: dynamic invocation with computed strings: bad. spaghetti code. evil like eval.

> What does "dynamic invocation" have to do with higher-order functions?

Everything? Whether you're rolling your own or making use of PHP's built-in higher order functions, like array_map http://us.php.net/array_map, you're dynamically invoking something: a lambda, a function, an instance method, or a static method. Unfortunately these are distinct things in PHP. So with array_map its first argument is a callback, or something that returns true to is_callable as described in the post. What you're arguing is that you should never send a string name of a function to array_map, but should instead wrap the invocation in a lambda. So..

array_map(function($s) { return strtolowwer($s); }, $array);

Is preferable to:

array_map('strtolowwer', $array);

Point blank, it's just not in PHP. It's more than twice as slow, it takes more than twice the memory, and, most importantly is every bit as unsafe. Notice I misspelled lower with an extra w? Let's imagine that's a bug, a programmer's typo. Neither case will error out until array_map is executed which means both parse and generate opcode just fine. Reconsider the function call wrapped with in a lambda. What must it mean deep down for PHP to be able to generate valid opcodes on a pure method call to a method that doesn't exist? It means the internal opcode must simply store the method name as a string waiting to be executed. So once we hit the op a table lookup based on a string in your code happens. Both ways. One string is wrapped in quotes, the other in a far more elaborate construct.

As for reflection, I'm all for it but in PHP a reflected function or method object is not a callable, thus cannot be passed to a function like array_map. Even if you could, I do not believe that, in PHP, the following is any less evil:

array_map(new ReflectionFunction('strtolowwer'), $array);

Again, more memory, more code to execute, won't error out until runtime.

I really don't think you or I disagree on anything in terms of "best programming practices". The only thing we seem to disagree on is what this post was about and trying to demonstrate/advocate.
What is the relative effect of being posted on the front page of digg vs being posted on HN ?
You missed the point. It is not scalable because most people value their time higher.
I've been using TeamApart for a few weeks now with great results. Once remote desktop sharing comes online this thing will be unstoppable.
Supermarkets here in Australia used to give their day-old bakery goods etc. (which are heavily discounted at the end of the day) to homeless people etc.

Until they were sued for offering food that was unsaleable (and therefore probably not ideal healthiness) to people.
Elucidating you, tptacek, is my highest priority.
Chad Ochocinco, formerly known as Chad Johnson, is famous for nicknaming himself "Ocho Cinco", wearing the name "Ocho Cinco" on his jersey because he thought it would be funny, getting fined by the NFL, and then legally changing his last name to Ochocinco just to get away with wearing it on his jersey.

The joke was on him though--due to legal obligations with the manufacturer of the jersey, he had to wear the "C. Johnson" jersey for a full year after he changed his last name to Ochocinco, since they had to get rid of inventory of Johnson jerseys.
Tips about chatting.
Before you start chatting with a webcam, you need the chat software to be installed in your computer. Most of the chat softwares like those available with MSN and Yahoo have programs which allow the chatters to use both the images and the audio. One benefit of chatting in this way is you get to see the face of the chatter and hear his or her voice while chatting. This facility is unavailable in normal chat rooms.
A benefit of learning version control early is that once you're good at it, it doesn't slow you down, even in early rapid/solo/investigational work. (The few tiny extra steps it requires quickly pay themselves back by providing de facto backups, reversing wrong turns, helping to debug or reconstruct prior reasoning, etc.)

I would guess most people on their second startups enable version-control from the beginning.
Go to local programming and tech meetups and talk to people. Where do you live? In some places this may be harder to do than others.

In general, if I was at school and some guy walked up to me and said "Hello. Are you interested in opportunities?" I would probably think you were insane. This has actually happened to me twice.

Might be a good idea to include your contact info in your HN profile too.
Google offered to host them for free, without ads.

They turned them down. I guess that's where the non-compromising comes in - despite google offering to be totally hands off, just free hosting.
> keeping the templates simple

That's the whole point here, isn't it?

They're keeping the language simple at the expense of making the templates more difficult to read and less efficient.

There is no slipperly slope here, only in the eyes of those who want to present it that way. It's a simple design flaw that has been kept in its place against a fair bit of community pressure.

There are other issues like this, for instance at the ORM level, have a look here for a fine example of that, you won't even have to leave this site:

http://news.ycombinator.com/item?id=523661

If it is broken, and people put up very solid arguments for it being broken the idea is to fix it, not to come up with all kinds of arguments 'why it isn't broken'.

What is broken or not depends on your use case. If you ORM or template language forces people to twist themselves in to all kinds of weird shapes to jump through your hoop you should make life easier for them, even if your personal experience is different. It's a matter of viewpoint, and by playing 'dictator' you are making life harder for others.
You buy long term (5-10 years) CD's.

You know your expenses pretty well, so it's easy to plan it that far ahead.

Or coupon bonds, which pay interest regularly with a fixed amount and on a fixed schedule (set at purchase time for as long as 30 years).

Slightly more risky since they are not FDIC insured, but if you hold to maturity you have zero risk due to market fluctuations, only a risk of the firm going bankrupt totally.
Oh, OK. It's been a while since I read that story.
Windows 7 doesn't ship with flash. In fact, Windows has never shipped with flash.
Student Debt Grows Dramatically
Man, are you californian? I have noticed that what californians call irony and my own definition are completely different. What you're talking about I'd maybe call deadpanning - sorry, not really up on the various types of comedy. Irony would be more like a guy who had long publicly scorned version control, mocking all who used it, losing all of his code because of some problem which would have been easily avoided by the use of version control.

Guh, reminds me of what my friend used to do. He'd be acting all excited and say "Did you hear? Nine Inch Nails is having a concert here next month!" and I'd be like "Wow, cool, I want to go!" and then he'd crack up laughing and say "I can't believe you thought I was serious".

edit: he didn't deserve to be downvoted .. wtf. Maybe downvoting should cost the downvoter a point too, like on Stack Overflow. Would be an interesting experiment.
Best Article Submitters And Marketing Tools
Powerful automated tools for getting more exposure and backlinks to your website or blog.\r\nTRAFFIC TRAFFIC TRAFFIC!
I thought the quote near the beginning of the article about how the death penalty proves the sanctity of life gave a pretty good solution to the "problem" of the death penalty:

Anyone who, either knowingly or negligently, contributes to the execution of any person later found innocent, is guilty of murder punishable by death.

Now, who wants to be the first to help put someone on death row?
the timer starts from the time the contest opened (2 Sep 2009 23:00 UTC).
I've been using Verizon' MiFi router and my friends old iPhone with no issue. For me (not much of a phone talker) this works great using text mssge, Instant messaging, email & social networks to communicate w/inner circle. Have Skype on it too, though don't use it too much. Verizon's 3G everywhere router is a bit pricey $60, but cheaper then iPhone's $70 i was paying & getting junky svc.
Active players on the sidelines, during timeouts, and between periods can still easily be considered to be "playing" the game-in-progress, even for those moments they are not strictly "in play" or "on the field".

But you could even imagine -- with a team's permission for promotional purposes -- that players with helmet radios could dictate tweets to someone else.
Shrug. All I know is that 3G = calls dropped, 2G = calls solid (irrespective of displayed signal strength). Repeatable on pretty much any Saturday afternoon in downtown SF.
There's really nothing to learn. I only know a few commands

svn up
svn st
svn rename
svn add
svn remove
svn ci

that's all I need to know and I've got by with just that for years.

version control is so essential to the way I work now that I can't even fathom working without it. it's not just about version control for me (I very rarely need to "roll back" code etc), it's more about security, having access anywhere I want (my repositories are remote) and being able to deploy sites with just one line of code instead of faffing over what has changed and what hasn't on the live server.
Sorry to stray so far off topic, but:

Miniature computer: http://en.wikipedia.org/wiki/File:IPhone_3G_S_sides.jpg

Minicomputer: http://en.wikipedia.org/wiki/File:Pdp-11-40.jpg

I suppose this is in the same class of usage error as (e.g.) saying 'ordinary bicycle' when you mean a typical one.
Lose 50-60lbs Following a Free Diabetics Diet Online
Basecamp is great tool for lightweight project management. It won't solve your motivation problem but it will make it easy to keep things organized. My suggestion: make a to do list about a particular function/feature and quickly jot down those tasks needed to make things happen. Any time the planning urge strikes you jot down some more. After a while you'll have a decent backlog of work to chew through. When you're feeling less motivated about work and planning start working your way through that list. This prevents you from trying to force yourself to plan when you run out of things to do.

The key to project management is the same programming. Keep breaking up the problem into smaller chunks that are easily tackled. Find the quickest system that allows you to document this without spending more time figuring out a new PM tool on top of your normal priorities.
Ask HN: bring on the feedback (especially if you like gear)
been working on this for a couple months. bring on the feedback, especially if you're a gearhead:

http://gearburger.com
1.

Make sure you position yourself so that people want to work with you. Work on your website and your authority first. If someone else is looking for a cofounder, would they contact you? - You need to reach that position first... your possible co-founder needs to be as much of a fan of your work as you will be of his work.

When I was looking for a cofounder, I created a kind of "elevator speech" for my startup idea. And then called 20 people asking if they knew someone who knew someone... went through 30-40 possible suspects before meeting with and interviewing a few of them.

2.

Birds of a feather fly together. Find someone talented in the area you are looking for. And even if she is not available as a co-founder - see where she hangs out. Pick her brains. And ask her if she has friends who would be interested.

Hang out at events that are about the talent and skills you're looking for.

3.

Create tools and presentations that will wow the person you want to partner with. Folks work many hours to create a PPT for VCs and banks. But a partner is even more important than that. So spend the time after her that you would spend after a VC. Buy them dinner. And spend 60 minutes convincing them why your idea could be the next big thing. And why you are a good person to partner with.
A matter of motivation
I have to recommend the http://progit.org book, because Scott did an amazing job of explaining it step by step in a clear and concise way. It's also free online, which is an obvious bonus.
And ulterior motives abound. The only reason for a single global patent system is to reinforce the powers of the patent hogs to quash innovation by smaller companies.
No amount of solid evidence has ever detracted a conspiracy nut from their pet subject, I don't see why it would be differently this time.

Let's see:

<conspiracy_nut_mode>

- the Indians are conspiring with the Americans

- the Americans have interfered with the transmissions from the satellite

- subtheory 1: they have planted a spy in the place
where the satellite was assembled and tampered with
the software

- an American satellite in orbit around earth
messed with the image in transit

</conspirace_nut_mode>

And that's without trying really hard.

And by having all these people falling over each other to say that this 'rubbishes' the claims of the conspiracy theorists they're giving those idiots way too much credibility, the best thing to do is to ignore them. Post the pictures (which none of those sites do, by the way!) in as high a resolution as you've got and let the rest of the world enjoy them. The nutters will do their thing anyway.

The Chandrayaan satellite is a pretty good way for India to show the world that they have a space presence, it can do all kinds of useful stuff, let's not diminish it by just using it to give attention to a bunch of people that really don't deserve any.

The media are very much complicit in giving these fools airtime, let's see them give airtime to Chandrayaan without being tied in to that nonsense.
'MySQL server has gone away' Part 2: session timeout
HBFS Offers cash for property
Ugghh... i wish flash would just go the fuck away.
Bankcard Empire
Himalaya V-Gel - Relieves itching - Vaginal candidiasis - Vaginal trichomoniasis
Himalaya V-Gel - Relieves itching - Vaginal candidiasis - Vaginal trichomoniasis. V-Gel's demulcent action soothes the inflamed vagina and cervix, relieves itching and accelerates the healing process
Truthfully version control has never really helped me out on anything other than backing up and restoring. I still have to google svn command just to figure out how to go back to previous revisions.

I would recommend you just learn how to set it up and learn a few basic commands like checking in and updating and then see if using them in your workflow helps at all.

If you work on any collaborative projects you'll probably have to use it, but just the basics.

As far as all this talk about good habits, etc. Its all bullshit. Its a tool. If it solves a problem use it, if it doesn't don't sweat it. And when you are eventually forced to use it, just learn a few commands or ask for help.
Its really no big deal.
I'll get voted down for this as it's taboo to ask, but what is this obsession with keeping things out of landfills?

It's a myth that there's a shortage of space for landfills. According to the guest on Penn and Teller you need something like 30 square miles to store 10 thousand years of trash for the US at the current rate - sounds like a lot but work out how much space there is in the US.

And it's also a myth that toxic chemicals leech into groundwater. They don't put landfills near groundwater sources, and they put many feet of clay down to stop things leaking through.
Compiler Hackers: Duetsch, Ingalls, Jones, Armstrong, Thompson, Zawinski, Steele, Allen and Knuth.

There is something about compiler hacking that grooms one to be a better programmer.
Shouldn't the funeral goers be spending time with the dying person while they can?
I'd suggest waiting until you want to start collaborating on a project. My first few scripts used folders for version control, and it was perfectly adequate.

Why wait? Here's a few reasons:
1. If you've only written one script, then your time is better spent learning and working on interesting programming problems.

2. Dropbox includes basic version control. It's more than adequate for a few scripts, with the advantage of being automatic and dead simple.

3. Version control is a pain in the ass. Installing software, setting up ssh keys (if working with a remote repository), and learning the commands was exceptionally boring for me.

There's no need to experience this tediousness right now -- just dig into whatever is the most interesting to you!
I could never figure out Git until I read this:

http://www.eecs.harvard.edu/~cduan/technical/git/
From the FAQs - "It works and it's awesome."

No argument there- great concept, cleanly executed. What plans (if any) do you have to expand the product range?
Applying different style to visited links is a feature. The trick to pull the info back to server is an exploit.
"Did not make the usual joke single founders make when asked how long the founders have known one another."

What's the usual joke?...
Their past performance is a good indicator of their commitment.

I am also a firm believer that "environment trumps discipline." So maybe (and just maybe) their inconsistency with your project is because they've failed to create an environment that forces them to work. (Thats why many lazy folks become disciplined if they're given a deadline with a promise of a bonus if they meet the deadline.)

I do rely on a few tricks - for example - I see if the potential partner reaches out to pay the bill after dinner. I'll always pay the bill - but I just want to see if they make an effort. Shows if they have a sharing personality or not. Selfishness doesn't go well with new startups imho. Obviously - this is not a scientific test.

Another tip I picked up from Zappos - is asking them how weird they are. Some weirdness is necessary.

And oh - I'll sign an MoU with them only after they've worked on something small for you first. Only real work will show if you both are a good fit. And if they're committed and timely.
thanks - glad you like it. we'll likely focus on outdoor gear for a while. hunting, fishing, etc. electronics could be a good area at some point but we're trying to stay focused.
Great execution, but in terms of the market this strikes me as being 3 degrees separated from profit:

Tweetvite -> Tweetup -> Twitter -> Profit!
KATRINA KAIF LATEST WALLPAPER
GET ALL NEW HIGH RESOLUTION WALLPAPER.CHECK OUT ALL NEW DESKTOP WALLPAPER AND BE THE FIREST ONE TO HAVE.READY TO COLLECT ALL NEW WALLPAPER.
MySQL server has gone away, part 3: net_write_timeout. I wish there was a comprehensive checklist of possible reasons of this 'gone away' error.

An informative entry in MySQL log ("session dropped because of interactive_timeout") would also be nice, but let's not get over ourselves.
Samsung I 7 Digital Camera
Building on its heritage in digital camera innovation, Samsung Cameras has today unveiled the sleek i7 equipped with an industry leading, intuitive, Physical User Interface (PUI) designed to make capturing and enjoying special moments an effortless affair.
Also - look out for any red flags - or any gut feelings too.

Experience with an ex-partner: we worked well together for 3 months. Then one time I met him and I got this feeling that things aren't looking good. The crazy thing is I still don't know why I got that feeling. Things at that time were actually going very well and we were actually discussing ramping things up. But a week later - he sends an email and that leads to us not working anymore.

Usually though - red flags are more obvious. A meeting with a potential partner - he started out saying that an app would take $15,000 to make. When he saw I didn't balk at the price, he raised it. And then he raised it again. By the end of the meeting, he was at $40,000. So look out for inconsistencies like these - not only in price - but with all their answers.
> I'm not trying to sell Cutco knives here, I think I will take a different approach :)

You get some excellent advice on a question that you put out for the community to answer and then you go and put down the person that answered you.

That's a pretty weird attitude. If you didn't understand the advice - and it is very clear to me - then why did you bother to ask the question in the first place ?

After all, you are saying that your co-founder is not working out, the attitude you display here is making me wonder if it isn't you that isn't working out.

To be able to take advice when given and to be able to ask follow up questions and communicate openly without being abrasive in times of disagreement is one of the things any co-founder, including you, should bring to the table.
I think focused is the right move - better to have 100 outdoor gear fans who swear by your service than 1000 people with no common interest who think you're kinda neat.
Patient, 76, with self-contained artificial heart dies