skysight-inc/HackerNews huggingface dataset:
> who insists on maintaining top-down control

This is quite the opposite of what he insists on. He insists on good code, not control. He maintains control because of the former. He went so far as to design git to avoid top-down control and make sure that anyone can fork the code at any time.

The funny thing about the ARM "blow up" is that all the ARM devs for the most part agree with him. Things needed to change, he knew it and they knew it. He just provided the push.
Ouch.

I came to stackoverflow from search engine multiple times while searching for solutions to my problems. I was pleasantly surprised how fast I could find question that was asked and after confirming that the asker has similar problem to mine how fast I could browse through responses. Also I could get to know reservations other user had to responses (stated in comments to those responses). I shouldn't probably be surprised by my amazement because the thing that recurrently cropped up in my search result in old days was experts-exchange.

After multiple visits I finally got curious what is that site that helps me so often and I clicked link in the orange banner on the top that drew my attention. Up to this moment the only parts of the page that I've noticed were, questions, answers, comments and banner on the top.

After I registered and answered few questions I picked tags that interest me. They are visible on the right. Tags are for answerers not for askers. Tags visible to unregistered users are just cool unimportant bonus info similar to pageviews and they are placed in the bottom right when nobody even looks if he's not bored and exploring.

There are maybe some features that are not necessary, and some missing but what is important for me, no unnecessary feature ever got in my face while using this site.

As for the proposed redesign I think it's horrible.

You can barely see votes and up/downvote buttons that are very important for this site to work. If people can't find them and hit them less often more bad answers would be mixed with good ones.

User info is in prominent place and it is almost of no importance ~8k rep guy can give you bad answer. Votes on answer matter, not the rep of answerer. Also insane spacing around it immediately kills aesthetics of the whole design it might have possessed. I rarely see something that awful outside of works of beginner designers (and yes, also developers).

Putting main menu in the right top corner where are all the things that you don't usually care about until you want to search for something or log in is a bad idea. But I don't use this main menu all that much so probably it wouldn't hurt too much. ... Besides if you see input box in the top right corner what do you expect it to be? A spot where you can place your pizza order? Even if that box was empty as long as it looked as input box I'd have thought that this is serchbox and when I put some stuff there and hit enter site will be searched for occurrences of it.

Questions are just barely discernible from answers. Stackoverflow does this better but I'm not sure why. Maybe with spacing? Maybe by not discouraging you from reading it by putting it somewhere in the middle of gray background?

Only thing I think might be good in the redesign is exposing "Ask a Question". But I think SO does almost as good by surrounding this option with plenty of whitespace.

As a footnote:

Don't try to redesign how thing looks until you understand what it does.

"By developers for developers" sometimes works.
Ask HN: Why are there so few apps being built with JSP?
It seems to me that lots of small to medium webapps are built either in php or in ruby on rails. I'm wondering why there seem to be only a small minority of webapps (at least not enterprise ones) being built using JSP technology.
Most articles and posts I see on HN seem to be webapps built with other technologies but Java.

JSP web apps can be built quickly as well. Eg. you have the JSTL tag library, and orm frameworks such as MyBatis or Hibernate. And there are also other things for simplifying, decoupling and modularizing a webapp like the Tiles framework, Struts, Spring MVC frameworks etc.

Now, I know for a fact that there are some other advantages php or rails apps have, particularly the lower price of hosting and possibly smaller memory requirements, but I'm wondering if there are any other reasons that JSP/Servlets/Java based small webapps are such a small minority and why adoption seems to be rather low for small to medium web 2.0 apps.
FYI R users in DC area... party tonight
You can't really compare the two. If you want to compare you'd have to look at GNU/Linux.
Attributing that success to just the genius of Linus goes a bit too far.
I agree, there is something in the design that feels more balanced and makes the page elements work well together.

However, Stack Overflow is a business and I think moving the ad banner like that would have some big implications in terms of conversions. Also, the tagging system, which is a key navigational element as well as potential revenue source (sponsored tags) is removed.

Also, another thing I disagree with is the change in proximity of the user image to the voting icon. I think psychologically this has some implications because it now looks like you are upvoting the user vs. the information presented.
I thought the same, then saw you wrote first. It's not crass to believe that an author, wanting to express an idea, may not want to drive away an audience for the idea.
Experiencing The Endowment Effect
This is why almost any contract you sign will have a clause stating that if one section of the contract is found to be invalid, that it does not invalidate the whole contract.
Better User Registration with Postmark
That's called placeholder test: http://diveintohtml5.org/forms.html
As I remember, US residential agreements are quite restricted because the average renter isn't expected to have any legal sophistication. Commercial lease are much less restricted because a commercial leaser is expected to more sophistication.

In any case, Rumpelstiltskin's contract probably wouldn't be honored in a court of law.
I do this before I post: http://www.google.com/search?hl=en&q=site:news.ycombinat...
Better designed by developers than developed by designers!
The concept of a 'challenge-free game' as the author points out seems to be fed more by narcism and the opportunity to say 'hey I'm doing something', even when that something is to say 'hey I'm doing something'.

A downward spiral that has strangely captured the imagination of many.

Does anybody thing FourSquare is in the same boat? I get awarded for 'checking-in'? So I get rewarded not for meeting a challenge, but for taking a simple action when I do something that I always do anyway?
Do I deserve a reward for buying my 5th latte?
Anything by EWDijkstra or CAR Hoare or David Gries.

The Science of Programming by David Gries was very good, it covered some maths needed for programming such as set theory and then it used its own programming language (based on Dijkstra's) to discuss programming language concepts that may come up. It had a great little section about deriving conditions based on loop invariants. Also there's a section on Predicates. Basically it covers all the stuff you'll need to know when using any programming language and that programming language tutorials fail to discuss.

You can see a preview at Google Books: http://books.google.ca/books?id=vv5pot-ySsEC&lpg=PP1&...

There's also A Discipline of Programming by Dijkstra and I love that one too. He has examples of great algorithms and the way he develops them is awesome: http://www.amazon.com/Discipline-Programming-Edsger-W-Dijkst...

The reason books like that aren't written is because they're too academic for some peoples' tastes. Unfortunately, books like Head First or whatever else, sell like hot cakes because they appeal to the lowest common denominator of programmer, the one whose eyes glaze over whenever there's math involved (that's usually the North American programmer, Europeans (at least the French and Dutch) don't mind the math).

I also think a lot of people dislike books with several exercises because they add way more pages. You don't need 3-5 pages of exercises, older math books only had 0.5-2 pages of exercises. Older math books are also not cluttered like the modern textbooks.

You could also do what Dijkstra did, which was write. Think and write about your experience, think and write about how you will approach a problem and explore alternative solutions, etc. Make up your own little notation for programming so you can free yourself from worrying about some obscure syntax or library call in a language.
"I don't know, I think it's fair to say that computing is a field where really smart, but shy, individuals can participate and excel, compared to many other fields of work. "

I'd argue that the IQ distribution amongst programmers is no different than that of the general population - there are just more people who mistakenly believe that they're smarter because they can throw together spaghetti code in a text editor.

As for this stereotype about social intelligence being an issue with most programmers - I call b.s. on that too. There are plenty of programmers who know how to socialize and how to relate to people - they're just not the ones portrayed in mass media.
It is successful, other projects are successful too - how do you want to determine "most successful"?

Most mindshare? Most impact? Most users?

I wonder what metric you'd come up with that doesn't have Linux come out on top.
I remember hearing on the radio some time back they were interviewing Brian Mcfadden and he was talking about the inspiration for he's latest album. Basically he had gone and sought out exactly what the popular trends in music young people were listening to at the moment and created an album to match those trends.

It seems like sales and popularity wise a smart thing to do but I was quiet thrown by an artist saying that there work wasn't a personal expression but rather designed for maximum return, it seems counter to most of what you heard with artists speaking of there music.

Granted I wouldn't personally be listening to his music either way.
Ouch!

In the Stack Overflow podcasts, that is the one app they strived to be so vastly different from.
You're right about one thing: there is not much good writing out there. The -ly rule is a pretty established one. These adverbs are almost always pointless. Other adverbs (for example "not" or "almost" or many of the adverb phrases) are more crucial to language and important for clarity.
Clearly, it depends on what you do. My experience is quite the opposite of yours. I cannot speak for what you do, but, in my field (robotics) if you do not have a strong mathematics background, you will not last very long.
Like android did.
> We just happen to be in a time where there's still value in being able to manually translate 'what I want' into 'what computer understands'.

Developers have the ability to think clearly and actually create a working system that follows logical rules and accounts for edge cases and malicious users. This is not just "factory work" and never will be as long as we want software to do something that hasn't been done before, which will always be true.
Can you teach a man to fish who doesn't want to learn?
For 10 lines of code, a meaningful function name might be enough documentation. But suppose instead of a 10-line function the same code were 10 lines inside a 100-line function. Then you'd need a comment. (It would be better to break it out as its own function, but suppose it were not so easy to factor out.)
As an aside, why do advertisers on 'geek' sites (by devs, for devs) even bother putting up advertisements is beyond understanding for me. Given the demographic that visits these sites (tech savvy power users), would the majority not be using ad-scrubbing-measures 99% of the time anyway?

I understand that these sites need to generate revenue and advertisements are one way of doing that, but given the eye-gouging (flash-gif-html5) ads designed by most advertisers my sympathy lies with the readers who visit these sites for reading content.
Personally, I'd much rather be compared to phpBB than SO. PhpBB has a proven track record as one of the most powerful and widely-used forum tools on the web. SO is still young, and could very well peter out. I've always found its ad placement extremely grating.
I do believe you should make sure the algorithms aren't crud. Also, any project where there is a separate DB Team kinda requires you to get your tables right very early because of the "cost of change" in most organizations.
The required permissions are listed specificaly by app developer, so no, there is no code analysis.

However, during app runtime, only those listed capabalities are provided to app. If the app tried to use something else, it would get exception. Short of bug in the platform, there is no way getting around.
That is simultaneously one of the cooler, and more horrifying things I have seen.

With Great Power, comes great potential for horrible, horrible abuse.
It's from the 'Google Webmaster Guidelines', located here:

http://www.google.com/support/webmasters/bin/answer.py?answe...

"Don't create multiple pages, subdomains, or domains with substantially duplicate content."
Facebook now has 500 million users
"We're not on the cutting edge of science, we're often not inventing anything new, we're just doing boring grunt work shoving things together. We're factory workers. In 50 years our jobs will all be obsoleted by automation. We just happen to be in a time where there's still value in being able to manually translate 'what I want' into 'what computer understands'."

Factory workers? Do you really believe that? Or are you saying that that is the way this work is seen by non-programmers?

Also, "in 50 years our jobs will all be obsoleted by automation", may well by true for any job. Once there are machines that will do complex surgeries flawlessly, with access to all the medical knowledge in the world, people won't want a "stellar surgeon" either, for example. I wouldn't like to tell them that what they're doing is "factory work", though. :-)
Judging from both Windows and Linux and programs running on each, there are far too few very smart programmers.
A lot of learning is by rote - doing something over and over again until it is drilled into your little f'ing brain.

With math, the end objective is to learn the material for the sake of learning the material. If you love math, that may be a reward in of itself, but I think that for the majority of people, this means that we're drilling it into our heads with no other objective than to pass a test, complete the course, and prepare ourselves for the next class that further builds upon the concepts. We usually don't have a real world application for our newly acquired math knowledge.

With programming, on the other hand, there is a real world application of our knowledge. Applications! (Pun kind of intended.) So the learning by rote that we do, is going out and applying the knowledge to the development of real software programs. If you're really excited about programming, once you're introduced to the concepts, you want to create something of your own, not labor through a bunch of (often tedious) mock examples.
Initial support for Oauth2 and Facebook Graph with the python tornado framework.
I'm one of the few active users of Google Wave. I'm all about the tracking of history so I can see how an idea evolved. I used to use local text files, but I didn't like that they weren't available on the web and could easily be buried on my desktop/documents folder. Wave also has rich formatting and supports inline attachments. One caveat - you can't really export out of wave easily.
I've always thought there were 2 types of things that could be optimized:

1. Things that need to be "cleaned up".

2. Things that never should have been written in the first place.

Simple example of Type 1: You rush to get something up and running, and in your first code review, you find the exact same code multiple times. So you write a function, parameterize a few variables, tighten it up, and reference it all over the place. Cool.

Simple example of Type 2: You have an SQL SELECT inside an iteration. At 500 iterations it runs smoothly. At 50,000 iterations, it becomes non-functional. Your only hope to scale this thing is to rethink the whole process to run with one SQL SELECT (and maybe a database redesign) outside the iteration. You basically have to start over. What were you thinking?

You need to trust your "process" that Type 1 things will rise to the surface in due time, thus avoiding premature optimization.

For Type 2 things, there is no such thing as "premature optimization". They need to be designed and written properly in the first place.
I have yet to dig into the Perl 6 features that make this possible, but having a low-barrier-to-entry way to create DSLs that are compile-time checked and usable opens the door to something big.

I agree but am also going to say-- I'll believe it when I see it. The article was very light on details. What they're claiming is already facilitated by libraries in many existing languages (including Perl 5)

Generally, the barrier to entry for designing and implementing your own language is not the difficulty of understanding how lex and yacc work, it's the need for a thorough and precise understanding of the DSL and every step of the compilation process. Error checking, for example... It's understanding what the compiler knows about your program, and what you can do to figure out things about the program, and how expensive that figuring is going to be. The details here are going to be different for every DSL.
and to be able to have plenty of time you need to make some millions so you do not have to work.
The problem surrounding the current patent regime is not that those being sued are blameless, it's that patents do not encourage innovation anymore. As you stated, companies that actually bring products to market are not ideally suited to launch patent lawsuits.

Only non-practicing entities (i.e. patent "trolls") can sue with great abandon because they don't sell anything that they could be counter-sued for.
I'd like to hear stories about companies that had a VC in an early round that didn't have that VC in a successful follow-on round and that weren't clearly, obviously, notably "killing it" in the market already.

You can say there are ways to navigate this problem, but it seems to me that negotiation timing and valuation are core skills VC's have that you don't have, and a VC that gets in on your seed round probably knows they have you over a barrel and can effortlessly make things hard for you. It's not just signalling; it's that it concedes a huge negotiation advantage to the participating VC, right?

(NB: I'm interested in this story not because I'm likely to go out for VC ever [again], but because it adds to the annals of "taking VC is hazardous to your company health").
The justice question here is interesting.

Whatever bad Zuckerberg has done, it doesn't seem especially plausible that Ceglia made a contribution significant enough to merit a percentage of Facebook.

At the same time, if the contract is authentic, it seems like there's a big back-story here you'd have to learn before making any judgments here.

And, hey, I'll admit I'm really curious what that story is.
I think some people have focused too much on his mockup rather than his point - Stack Overflow's design is poor, with some very bizarre decisions. He only touches on some of the problems with the site.

Let's take the bright orange banner at the top of the screen that appears only to new users.

Obviously, it's not just new users that see it. It's anyone who hasn't got a cookie on their browser indicating they haven't closed the ugly bright orange banner before, so it's hitting plenty of people who know this information already.

But let's ignore that, and ask whether it does the job: how useful is the information contained in the big ugly bright orange banner to new users? Not very, I suspect. For most users, the purpose of the site will be implicit - from context (because they did a search for their problem and were linked to it), from the design (it looks like a Q&A site), and from the content (questions and answers). If it's not implicit, then the exact same information is explicitly stated in a box on the right-hand-side of the site. No other popular modern site on the web does these sort of popups anymore, so I don't see why the creators of Stack Overflow thought they were a good idea. In addition, why does the big ugly annoying bright orange banner link to the FAQ? What pecentage of new users will ever want, need, or read the FAQ? Users don't read anything. If the idea is to encourage sign-ups, then create a sign-up link, not a link to something nobody will read.

Then there's the functionality of the big ugly annoying intrusive bright orange banner. It loads after the rest of the page loads, then shifts all the elements of the DOM down. Just in case you'd missed the bright orange banner that distracts you while using the site, it scrolls with you, displaying on all Stack Overflow pages until you're forced to go out of your way to move your mouse to close it (with their weird 'close' icon), when finally (if you're near the top) it shifts the DOM up again, just to ensure it can be maximally irritating.

I don't see how "you’re seeing the one-time new user screen layout" should be regarded as any sort of defence for the big ugly annoying intrusive distracting irritating bright orange banner. Do new users somehow deserve bad design and bad functionality?

In my eyes, Stack Overflow has firmly been a success despite its poor design. It's not as though Experts Exchange set a very high bar to beat usability-wise.
For some purposes, ORM works fine. I find ORM frustrating and unpleasant far more than I find it useful.
Don't click on link- page hijacking overlays.
Where is last year's photo-realistic trend or the dark ages of 2000-2005 before AJAX and web 2.0?
Spillovers in Space: Does Geography Matter?
When I'm looking for things others have created, I actually tend to use the opposite of this question. Was it created by someone who themselves finds it useful/interesting/etc., or did they just make something that they thought would be useful/interesting to others, but don't themselves really care about? I tend to avoid the second category if possible.
"I'd argue that the IQ distribution amongst programmers is no different than that of the general population - there are just more people who mistakenly believe that they're smarter because they can throw together spaghetti code in a text editor."

That would imply that the average IQ of programmers is 100. Seems unlikely, I do think it attracts people smarter than average (at least in times when programming is not "popular" because big $$$ are promised). I do agree that some programmers have an overinflated sense of intelligence and/or self-importance, though. But there are probably job types where this is much worse...
Yeah, it's a tough line to walk between being a pure artist and a pure mercenary. The most rewarding use of one's time is to find a balance, like Sivers suggests.

I think many artists (perhaps to their financial detriment) value the process/journey as much as the destination. I know that personally, the motivation I have to finish a project peters out when I've solved the fun technical challenges.
Mark Suster: Don't take the little things for granted.
Elements of Programming by Alexander Stepanov and Paul McJones (Hardcover - June 19, 2009) might be what you are looking for. Read the Amazon reviews.

And, of course, there is always Knuth's Art of Computer Programming in any of its many editions.
You can be way more overkill if you use lambda calculus / church encoding

http://dankogai.typepad.com/blog/2006/03/lambda_calculus.htm...