skysight-inc/HackerNews huggingface dataset:
Google Collapse: How Low Can It Go?
Add a cutoff of, say, 10 comments or 10 posts...
The Top Acquisitions of 2007
The first thing that comes to my under-caffeinated mind is the fact that set! and the like don't return useful values. PG also considers hygenic macros to be a mistake. I haven't used them enough to form a meaningful opinion, but they feel like a mistake.
2007 Acquisistions Account for 615 Deals Worth $44.4 Billion
I would have thought this was a fantastic idea....before Anywhere.FM .
Of course my opinion counts for little since I did not download the software, and have not actually seen it work
The Place to buy your Computer
Topology!

It is an almost totally overlooked area in any curriculum (math, CS, physics). And it is just as fundamental as algebra.

Algebraic topology isn't that incomprehensible as some think X the basic ideas are very simple and intuitive. Take a look at this short introduction http://www.inperc.com/wiki/index.php?title=Topological_Featu.... You need to know at least as much.
Who cares about EULAs?
Snocap CEO Rusty Rueff interviewed about what makes a great employee for entrepreneurs
Ask YC:  Have computers turned engineering and law enforcement upside down for similar reasons?
Just wondering. One might argue that computers make it so easy to break some laws (e.g., copyright) that enforcing them is impractical. At the same time, computers also make it easy to create things, thus calling into question the value of computer science/software engineering degrees and professional associations.

Digging deeper, what's the common thread if any?
the purpose of the radio buttons confuse me a bit

so it's basically an ajax web directory?
fbFund trundling along?
The message thread is "Has anyone gotten any money yet?"

and one person writes:

"Peter O'Leary (San Francisco, CA) wrote on Jan 8, 2008 at 7:30 AM.

Not a hoax.

A group of us presented yesterday in Palo Alto. Their panel is top notch but there are many people involved so it takes time to get things going."
Well, people were discussing the legality of such a service, so..
Adobe Illustrator Tutorials - Best Of
This advice is not for everybody. We needed our own mailserver with a TON of storage, so getting our own U1 worked best. But for most people it's too much hassle.
I believe not including a hashtable in the standard was one of the problems (but I don't know much Scheme)
I don't know about implementing Arc but I might take a stab at writing a language that would make writing Arc easy.
I'm trying to hopefully convince someone to write a new language I can use so that I don't have to write it myself.
How do you learn?
After reading a codinghorror article I came across this in a comment:

Good programmers also figure out their best method of self-learning. I'm one of the oddballs that reads the entire manual.

That struck me as interesting. I know I learn in what's probably quite an unusual way. I'd be interested to know how other people here learn.

I teach myself new stuff in a very exploratory way. For each of the new languages I've learned since starting at justin.tv I've spent probably five or ten minutes learning the syntax. Then I jump in and start writing a real program that needs to be released within a week or so. I usually start by writing a "hello world" program, and just add stuff to that until it does what I want (of course, as I learn new tricks I frequently remove a bunch of stuff). If the language has a REPL I use it constantly. If not, I fake it by just printing expressions in my program, and working in a tight loop of editing and running the program again and again to see how the output changes.

I rarely use a reference at this stage unless it's to achieve something concrete. For example, I find myself googling things like "actionscript string search", but only after trying a couple of likely-seeming things myself (i.e. I'll actually just write things like trace("foobar".find("bar")) and trace("foobar".index("bar")), etc until the compiler stops whining or I run out of things to try).

Funnily enough, after I've written a real program that works, and I feel like I understand the language a bit, then I go back and read the reference books thoroughly. It doesn't work the other way for me - I need to have had the exploratory phase and built up some context so that I can read the books properly (and it's fun to read the books at that point and remember how I "discovered" each feature that's discussed).
Like baseball statistics, these are only interesting if you have a minimum number of at-bats.
You can't find a particular song from your friend's collection via Anywhere.fm. You can only listen to their playlists and skip at most 3 times.
I don't know about implementing Arc but I might take a stab at writing a language that would make writing Arc easy.

Be careful. This sounds like it could be the first step down the Dark Path. You do realize that this is how Lisp ended up where it is today: approximately 73 forked versions, differing in arcane and subtle ways, none of which has definitive mindshare, all of which snipe at each other in terms that most programmers can't even understand. The result: market confusion, stagnation, and possible eventual extinction.

So, by all means have fun writing an Arc interpreter, but don't float off into space like an untethered astronaut. Please consider trying to make Arc better rather than handcrafting your own, individual, poorly documented meta-Arc clone thing. Please. Think of the children.
the radio button shows which site that the search will be going to. it is a directory like site.
High Scalability? [pic]
Definitely aston. I love Rails and am using it for my personal project (http://www.babynamemap.com/). However, every time I've been given the opportunity to "rewrite" some big feature/app/module, the 2nd attempt is hugely improved. It's always tighter, even when rewriting in the same language.

Simply having a better understanding of the problem domain and total solution makes the 2nd pass a better implementation. I'd guess the bulk of the benefits Outside.in experienced are due that "rewrite effect". Rails no doubt contributed though since it is a nice framework.
Congrats Nick. Glad to see it.
Oh, I have no intent on writing a new version of Arc and floating it around. I simply used Arc as an example of something that should be easy to write in a new powerful language.

I would love to contribute to Arc if it was available for example via distributed source control (like Git).
Cinematic Web Design
"Years of experience" is a lousy metric. It only gets used as much as it does because people (especially recruiters and managers) have no better way to distinguish good programmers from bad. It's not only possible but common for a programmer to do something for years, badly.

Would you rather have a good programmer with little experience on a given platform or a mediocre programmer with lots?
Google Open Social Hackathon - Who's Going?
Reble, Reble, I Like Your Playlist
Interestingly, your comment lacks humility. How about quoting to back it up?
This is almost exactly the way I learn. After years of doing it the "traditional" way (ex. reading an entire book on a language), I realized that I was mostly wasting my time. The only way to really learn is to try to solve a real problem that you will benefit from directly. Book exercises are boring and will ruin your motivation.

I think the idea of staying in a tight edit/test loop is good too. I tend to make lots of typographical/syntax errors that can be a nightmare to debug if you're having to scan many lines of newly written code. If you're only writing a few lines at a time and then testing, finding errors is much faster.
A Quick Jaunt Through Merb's Framework Code
i hate to say this, but I feel that it's not very intuitive and it should be changed
I think he wants me to learn not to post things that will be downmodded. He probably thinks I didn't see it coming.
I used to be a "read the reference manual in full first" guy, but I was cured of that when I tried to read the whole manual for GNUS.

Also, when you use a "obscure" language like lisp the documentation is often subpar/incomplete/obsolete/lying/whatever so sometimes the best it can bestow is a false sense of knowledge (which fortunately is somewhat useful to get started).
What I really hate is when people comment the obvious. For example:

/**
* Add var1 to var 2
**/
$total = $var1 + $var2;
I love SoftLayer. They've been amazing. Dedicated boxes only, but you can get something decent for under $150, and they can get you new hardware in about two hours, which is great. Granted our needs are a bit larger than yours at this time, but even when I just had a single server, I thought they were a great host. Amazing support, simple plans, etc...
Giving them a discount devalues their investment and reduces the odds of success.

Why do you want to do that to friends?
He is not the first one to think about this. John McCarthy put in around his page long time ago on his future. http://www-formal.stanford.edu/jmc/future/index.html, Remote service http://www-formal.stanford.edu/jmc/future/teleserve.html
Ratzilla (Cool micromouse robot)
This is a great design report for a neat robot. It is built by a team of students including fellow news.yc'er chengmi.
My style is different, of course. :) I tend to learn new things by reading, or at least skimming, the best book I can find, first. I like having an overall perspective on the scene before getting into the weeds.

For Scheme, I read SICP, of course. For Java and C++, Bruce Eckel. For Ruby, _Why followed by the Pickaxe. For Emacs, I read Learning Emacs, a very good book. I even learned Perl from a book, although not the Camel book, which is torture to read -- I used Randal Schwartz's Learning Perl, which was very good. I learned CSS by reading Eric Meyer's O'Reilly book, pretty much cover to cover, as well as Dan Cederholm's book. I learned SQL (and Tcl as well) from Greenspun's books (e.g. SQL for Web Nerds) which weren't really dedicated and pedantic SQL tutorials but were, in a way, much more useful.

Of course, I'm the guy who got bored with BASIC as a kid and decided to teach himself Pascal. So I read a few books on Pascal. Unfortunately, we didn't own a computer at the time, and the library didn't have a Pascal compiler, so I didn't get to compile a Pascal program until two years later. So maybe I just got into that habit early and never really lost it.

Of course, you can't actually learn a language from a book. You have to practice a lot to get the syntax and the semantics and the idioms into your fingers. So it's just a question of whether you do the reading first, or second.

There are quite a few exceptions to my usual rule. I know a bunch of C, but I never read a really good C programming book. Of course, that means I get to look forward to K&R, which is nice. :) I probably learned as much Perl from randomly hacking as I did from Learning Perl. I still haven't gotten far through Mastering Regular Expressions, though I've used them for years. I have yet to find a really great book on PHP (to everyone's astonishment, I'm sure) -- the O'Reilly book is okay, but I keep getting bored. And for some reason I cannot make myself read any docs for jQuery. It's so sensible that I can't concentrate on the docs; it feels like a language that I already know!

Technology is changing things. I normally hate learning from lectures -- talking is just too slow, and you can't skim it -- so I was surprised to discover that podcasts and screencasts about programming are actually quite useful. There are aspects to being a good programmer that are best learned by watching over someone's shoulder, or listening to them ramble on about their most-favored and least-favored tools. And then, you know, there are blogs and news.yc.
Trial and error. I'm a tinkerer. I learn just enough to get me going, and then I tinker with everything until the rest comes. Seems more efficient, but sometimes I miss out on some fringe things.
Is the Democratic Party, well democratic?
What Is a Living Wage?
I was trying to learn Salsa dancing by watching videos on the train. That really didn't work and in fact was counter-productive. Weekly lessons here and there helped but I really didn't start climbing up the pretty-steep Salsa learning curve until I started messing up on the dance floor dancing with random women. You can't simulate experience and the hardest thing was getting started (and continuing). I think you learn by taking on new experiences (if you do the same thing at work every day, you're bored and not learning).

Programming is similar. We make mistakes and brute-force our way through. We start to recognize patterns. That's experience. It's a lot easier however (even though it's all in the head) to do fail in something if it's only you and the compiler/runtime (who cares if it doesn't work right away, you know it will) - when other people are involved, it's a lot harder (fear of what people think)
Book exercises are boring and will ruin your motivation.

I would agree with you about 95% of the computer books on the market. But, if you find the shortest and least pedantic books, they can be really helpful.

Greenspun had a fun rant about how book publishers insist on producing gigantic doorstopper books in the style of Learn Blub in 21 Days -- 850 pages, only about 150 of which are actually useful, and the rest of which consist of tedious examples and filler material and stdlib documentation which you'd much rather just look up online when you actually need it. He argued that, e.g., Cooper's About Face was a good 125-page book trapped in the body of a 600-page book.

Of course, I've already admitted on this thread that I haven't really read K&R, so I can't speak from experience, but I've heard it said that K&R is the essence of a great language book: it's short. It doesn't feel the need to seem heavy in order to seem important.
I'm struggling with this though I can tell it will be well worth it.

Try the peepcode git tutorial, which includes info on migrating from svn.
That's a good point. Thanks.
Another interesting possibility, which I almost wrote about, is robotic warfare. If there are truckloads of robot shells in the combat zone and US troops who clock into at an office building in the US to pilot them, how can an enemy fight that? Every time you destroy a bot, another one walks out of the warehouse. Our soldiers are already trained for this. Just like a video game, you get 'killed' then respawn.
Okay, please don't take this the wrong way, but I'm going to put my Vince Lombardi coaching hat on and pick on this statement:

I would love to contribute to Arc if it was available for example via distributed source control (like Git).

What on Earth are you talking about? Arc is 4600 lines of code! Steve Wozniak used to type in more than that by hand every time the power went out on his Apple I! You could do the source control using papyrus and it still wouldn't be a showstopper!

Okay, I'm taking the hat off now. Admittedly, the only reason I'm exhorting you to get started is that it's easier than finding the time to learn Arc myself. ;)
+1 for great explanation

+1 for a quality article (non-election politics sure taste better nowadays)
How do you design user authentication for an app that runs on the open web and social networks?
I want to launch an app that is accessible within social networks, for example, Facebook. Assume it is in an iframe. What's the best way to handle the user's table in the database so as to take maximum advantage of the user's facebook/x social network? What's the best way to handle authentication?

Ideally the user could authenticate with Facebook and utilize features that exist due to facebook's network, but what about users who dont want to be on the facebook network, but do want to be on the app's network? Meaning they login to the app and make friends, see people nearby geographically, etc...
Maybe have a list of technologies you've used for 6+ months as a checklist and then a list of completed projects. Certainly a traditional resume isn't a good fit for programmers.
I was a PHP developer for six years. I also learned by writing "real world" applications, except I almost always kept my browser open using the manual as a reference.

Then I found Python and Django. Now I just kinda type... 7/10 times I'll get it right, which is a great feeling! I also read a lot, and often find little gems in books that I wouldn't have picked up as quickly by tinkering.
Cool stuff. More than that, I finally get to know who alaskamiller is. I lived in Alaska for 10 years and see him commenting all over the intertubes in the exact same places where I tend to lurk.
The layout, the naming.
I'll be there Thurs-Fri this week.
I will never fail! I don't need priorities!

Good luck with that...
I believe that the best way to learn is from de oficial/owners documentation or reference; and reading a lot.

Nobody can teach or no mechanism is a good thing if you are not willing to learn and likes it .

So... what is the best book to learn python? :D
A Better Way to Select Random Rows (in Rails)
I believe you have me wrong here, just on being able to make the application (yc, etc) hurdles. I have 30,000 + users in nearly 15,000 different organizations using the system I have developed.

I am also about to release a version that works & acts like ning.com, and versions targeted towards specific verticals (all that run on the same base of code, so there is no code duplication at all).
Especially when the comment is wrong or misleading, as in this example.
Boulder Startup Weekend II
All the world wants to be the 'new' Silicon Valley
Actually, you can do better than that. Having a one brain:one robot shell doesn't scale as well as having one brain:many robots. There is currently work in DARPA on getting one person to manipulate swarms of robots, instead of micromanaging them all.
Silicon Valley Angel Investors
There are probably other good ways to learn as well. I find that working on a problem you have (or have implemented before in a different language) is a good way to pick things up quickly.
EULAs are generally not legally binding. So no.
This may not offer much advice for your particular application, but may at least show you how NOT to handle authentication. Its the best resource on the subject I've seen thus far [PDF]:

http://pdos.csail.mit.edu/papers/webauth:sec10.pdf
Agreed.

In addition to having demonstrable ability (thru side-projects for example), I'd also want a candidate to explain a technical detail or concept to me. I'd phrase it like ("Explain an interesting technical concept to me - your choice"). This would show me
a) what they think is interesting
b) how well they understand it
c) how good they are at sharing/teaching.
Seed funding for athletes: buy a share of this pitcher's future performance.
I'll go out on a limb and suggest that reading something in order to learn it will always fail: you're trying to understand something exactly the way someone else does, and that's impossible.

Also, learning is like birth and death: there might be other people in the room, but you do it alone. Learning is an experience, not the result of reading something. You can understand what you read, but understanding an idea != learning.
Like many other people here I learn in an evolutionary manner. I dive in, get something working, reflect, notice pattern(s), try and get more working, recurse. However, I tend to like to seed my evolutionary exploring with some canonical knowledge first.

For example: When I was learning Perl, I first read about "make repetitive tasks easy", "good text processing", and then got hacking. When I was learning Lisp I read about macros, recursion, list-processing, and then got hacking.
It's already been built (http://laptop.org/), except for cell network access. They also have minimal color and a small amount of graphics. You can even power it with a hand crank.

As soon as they build one with a bigger keyboard, that's my new machine.
HFS has some cruft from pre-Unix implementations. However, this cruft allows you use the filing system on older versions of MocOS. HFS implements swap space as a hidden file. HFS+ implements journalling in same way. If you boot an older version of MocOS then you temporarily lose journalling. This is the behaviour that you'd want. However, some bits are messy, including directory seperators, Unicode file names, file forks and instant indexing of file names.
Interesting. Perhaps you could aggregate the numbers by time and compare the relative rates of change in karma and subissions for different time periods?
Nice to see him doing some substantive blog posts again.
I agree, resolving problems, most of the time is where you start to learn; but eventually all roads will lead to the ofcicial source/reference.
wtf..its writen in Perl .. wtf ..and he didn't use strict; wtf i think he did so so he could autovivify the variable,

wtf I don't have a Perl interpreter on this machine stupid machine, wit i guess $total now is equal to zero

Perl is f awesome

fawesome hehe ... new word to the dict ..wtf..
I learn by doing, like abstractbill does.

One thing I've come to understand: you only learn when you are asking questions. Reading a book doesn't put you in the frame of mind where you're asking questions. You are being spoon-fed information, sometimes before you know why you need it. The information might be useful or vital, but if you don't know you need it or why you need it then it won't stick.
I prototyped something like this recently and enjoyed it quite a bit, so I'm glad somebody else has tried to make it into a business. I, for one, am a bit skeptical for a few reasons.

1. The barrier to entry is pretty high. In a world dominated by web apps, who wants to try a heavyweight Java app that might take a full 2 minutes to get set up? We live in a 30 second world these days.

2. Home routers are messy. People who aren't tech savvy aren't going to want to mess around with opening ports. UPnP helps this, but I've found that it's unreliable on many popular, low quality routers. Users who download the app and then find that it doesn't work oftentimes will just give up instead of diving into the router.

Of course, maybe I'm underestimating how much the average consumer can get done these days. It'll be interesting to see what kind of coverage this gets, especially since I'm working on an app that approaches the problem more in the style of Anywhere.FM.
OOP and FOOP
In a general sense, all people learn in the same way, and would do well to remember this.

In particular, learning -- creating knowledge -- consists of creating something complex (an idea in your own head) that didn't already exist.

How complexity could come about is a famous question. The original answer was via a designer, but that begs the question, because either the designer already contained the complexity in question, or had to create it (somehow).

But now we have a better answer: evolution. And that is how people learn.

Evolution consists of imperfect replication and selection. In thinking terms, what you have to do is think of lots of ideas, subject them to criticism, and then think of (hopefully improved) variants of the surviving ideas, then more criticism, repeat, etc

This is important to know because being open to criticism is more important than people realize. It's generally considered a good character trait, but it is in fact absolutely fundamental to learning anything.
XHR Concepts: A Comprehensive Guide
Actually, the XO is nothing like what I'm talking about. The screen is too small, it has color, the keyboard is too small, mesh networking is too new to be sold as a consumer product, and it is designed for 3rd world non-hacker children. They are a demographic as close to me as hiphop hacker single moms.
I'm thinking you're starting to be obsessed with the hiphop hacker single mom niche, Ivan. :-)
Nerds' Hack for Valentine's Day: 10 Ways to SGFM
Serverbeach is excellent. Google on "serverbeach referral" - there's plenty of codes out there to get you money off.