skysight-inc/HackerNews huggingface dataset:
He makes excellent points, but let's compare the two scenarios for a moment.

A) Helping out Twisted, they'd have gotten:

* Kudos from the Twisted community for their contributions to the project;

* Less code required.

B) Creating Tornado, they got:

* To avoid other people's code they didn't like in the first place.

* All the credit. They are the authors of the framework, not just contributors;

* A fresh start. A project designed to their needs;

* Ability to lead the project in the direction they like;

* No stigmas attached (e.g., "Twisted is too complex");

* Major kudos from a large community of developers interested in "real-time" web services and applications;

* Tons of free publicity to the project and FriendFeed/Facebook's open source initiatives.
Django Dose - Introduction to Aggregates in Django
Flipping abundance and scarity
Since the pigeon story - http://searchyc.com/pigeon?sort=by_date -
is proving to be so popular, I thought I'd remind people of the RFC concerning IP over this "new" medium.

I use this as a specific example of an RFC when describing the concept to people. It comes as a shock to some just how readable RFCs are. Then I pull out the very original descriptions of how the internet works, and some get really quite interested.

It's amazing how clear those first explanations were, and how quickly one can advance to explaining a lot about the current "InterWeb" thingy.
> I think this whole fear is a simple case of the media over-reporting child abductions.

While I don't have a reference for this off the top of my head, sometime roughly a decade and a half ago the statistics for American child abductions spiked. This wasn't due to any increase in actual abductions, but rather because the rules for counting them changed, and now abductions by relatives or parents without legal custody were counted as abductions by strangers.

The news media, naturally, blew it up into a story about a dramatic increase in child abductions by strangers. Most people aren't great at reading between the lines with statistics, particularly threatening ones, and most parents understandably err on the side of caution when it comes to protecting their kids. This paranoia about strangers, coupled with the common alienation from walking developed by decades of living in car-centric suburbs, means that "protecting kids from abduction" typically takes the form of chauffeuring them about rather than letting them walk alone.
I'm looking for a co-founder for http://www.hiphopgoblin.com ... zackster@gmail.com
There seems to be a rather unrealistic assumption that people who don't like your product (be it website, framework, sandwich) owe you well-reasoned feedback. It's a great and useful thing to get but the fact is, most people are interested in solving their problem and unless they are quite sure your product is the best way to solve their problem, they'll simply move on.

Perhaps this is an artifact of how seriously the Twisted people and their 'lead hacker' take their project. But the twisted-centric view of the world leads to petulant posts full of odd statements:

My main point here is that if you're about to undergo a re-write of a major project

They wrote Tornado, they didn't 'undergo a rewrite of Twisted'.

For a tiny fraction of the effort invested in Tornado, FriendFeed could have worked with us to resolve many of the issues creating that chaos.

Interfacing with an another team to solve problems in a framework they didn't like (even if just aesthetically) would have probably taking significant resources for close to zero return.

There's quite a bit more in the same vein. It's wonderful that the Twisted people care. But perhaps a little too much.
These things can be fixed by automatic check for updates and preferably seamless automatic update, but the problem is that people who normally like open source don't like automatic updates. People don't like when they're asked too much questions ("Do you want to check for updates?" - Yes - "Do you want to download update?" - Yes - "Do you want to update now" - ffs just do it!) and they don't like if program does this kind of stuff silently in background. How to fix this problem?
Honestly, I am getting sick of people starting comments like yours with a negative sentence about the US. Don't let ridiculous stereotypes get in the way of intelligent discussion.

I grew up in the US and I did all of those things you mention.
A number of other numbers, that puts this into even more perspective, are missing:

1) How many children walk or bike to school every day? ~10 million?

2) How many of those 115 were kidnapped while on their way to or from school? Half?

3) How many of the answer to 2) were kidnapped while they were on their way to or from school alone? Half again?
One thing to remember about Twisted is that it is basically worked on by two people. It is an enormous code base for those two to maintain, develop on, and document at the same time, even if they are ridiculously smart (which they are).

I gave kudos to Tornado, but Twisted deserves some appreciation too -- and contributors! I tried to take twisted.web into the present (the client anyway), but I unfortunately wasn't sufficiently TDD to get it contributed. Perhaps next time!
I'd like to see a list showing each kidnapping, the motive of the kidnapper, and the result of the situation.

Is it mostly for sexual abuse? Child labor? What percentage occur in middle class suburbia compared to a poor inner city area?
Store evey state, and if you ever get a state you've already stored you know you're in a loop. Should be possible to store it in very few bytes in "raw" form, and then compress it for good measure.
How to pull off a slick tech demo (in 5 easy steps)
What specific problems have you had with it? I'm part of IBM's design partner program, and they actually do take feedback from us seriously.
Even today most Open source apps are developer (not user) friendly.
Even more sexy when Larrabee arrives.
I'll talk about the setup and configuration part. I mean this has been talked about to death but people still don't get it. And lately I'm starting to fear that maybe some people like it.

This is especially visible when trying out various new programming languages. I have written exactly one .NET application in my life and I absolutely loved it that I could just downl... I mean buy the Visual Studio, install it and start coding, debugging and deploying the application. The same story with Delphi.

A very different story is about Python, Haskell and all things Java related. You need to download compilator, then you need to find and download IDE separately, then you need to figure out how to make it work with the debugger, if you're lucky enough to get it working at all. It takes time and effort that doesn't benefit me. It's all reading instructions, changing paths in configuration files and setting environment variables.

And the reason why this is done so is because as I mentioned some people absolutely love the idea that they can use any tools in any configuration that somehow after some effort work together. And people who like to tinker are the people who write open source. So there.

Also making good product = fun, making good setup = boring.
Not every database needs to be relational. Some applications, such as e-mail and groupware, are better suited to the document database built in to Domino. If you want to run arbitrary queries that can be done easily using the full-text query language, or with the free NotesSQL add-on.
This is deeply silly. More fame and glory? So one day, Bret Taylor leaned back, rubbed his hands and whispered to himself 'Yesss, I shall write Tornado for fame and glory. Before I start I must briefly consider how I'll keep all the screaming teenage fans away and what to wear at the ticker-tape parade'. Or perhaps he just wanted to solve a problem he and his team had. And having done that, was nice enough to open source the solution.
I focus less on knowledge and more on skill esp. API design. This makes me a good programmer, I hope, although often an uninformed one. In an "open book" world I can't help feeling like I made the right choice. The _right_ skills are resistant to change.
Interesting how he says he relies heavily on IDEs. If those IDEs weren't there as crutches how do you think those frameworks might be written differently?
Yeh, I've remembered it. And I'm thinking on intro it to my best friend.
To Windows users, I strongly advise to use Cygwin instead of any other solution. You will have a functional Linux-like environment with bash, grep, sed, awk, python, rsync, scp, ssh, svn, git, X and a whole lot of other goodies. I hate to admit, but using Windows also allow you to use Tortoise[Svn|Git] and those two are really fancy tools.

I develop Django apps under Windows and, while Windows is still a kludge, Cygwin does a great job civilizing it.

Tip: Also install MinTTY and use it as your main "entry point" into Cygwin. Nobody deserves to use a Windows console.
I think this misses the mark, at least in the enterprise world. What the commercial companies have is huge sales teams- sales personnel that know how to convince people to by their product.
I agree that FF should have asked and should have used twisted under the hood. I hope the porting efforts will be successful and eventually replace the original Tornado impl.

I cannot help, though, but yet again in this blog post notice the unfortunate, defensive tone that is so omnipresent in the twisted community.

The post starts out by (politely and rightfully) pointing out FriendFeed's communication mistake and then goes on to describe how green the grass would be in twisted land.

What I miss is a bit more critical self-reflection about the reasons for FF skipping twisted, even without FF spelling them out in detail. It's not likely that FF found completely new and unseen problems with twisted. I'm more inclined to believe that they simply stumbled over the standard, long-known twisted problems; first and foremost the lack of documentation and (probably) the verbose coding-style that many parts of twisted demand.

I have the highest respect for the effort that went into twisted and for their often cited code quality. But they need to realize that they can't display a "your own fault if you're not smart enough for this"-attitude towards documentation and at the same time mock anyone who doesn't want to put up with that.

Like any OSS project twisted is ofcourse not obliged to anything. But neither are people like the FF guys obliged to choose twisted.
I removed my "fame and glory" comment as it was misleading and didn't truly represent what I think. I'm not arguing that he/they premeditated it and did it for the glory. Their priority was getting FF done, undoubtedly. However, there are concrete advantages (and visibility) deriving from their choice.
I would call that a hacker. An expert in the real world just knows a lot of stuff.
It means the author/editor or some combination is a bit muddle-headed about how this works.

Here's my guess. There's software in the cell towers that now forwards ping times to a server somewhere that does the triangulation, as opposed to your handset. This way, the iPhone doesn't have to do anything it's not already doing, hence no drain on battery life.
Maybe "advertising" is the wrong, but both Google and NBC are in the business of selling eyeballs to companies selling products. They choose different media, and one can't really call a TV network cool, but it's the same revenue stream(s).
Could you please get a micro payment system to work? There are so many interesting projects that would require this as an infrastructure to build on, and the road to monetarization is obvious.
When I studied C in College, I could tell you all functions on the ANSI library. More often than not, it meant that I knew if a library had something already done so we wouldn't need to do it again. Even simply things like using freopen to redirect standard output to a file, or using sscanf to parse an user input where outside of the class curriculum that I only got to know because I studied the language somewhat in depth. Now that I work with C#, nearly everytime I need a class that is somewhat uncommon, I am forced to do a research, and it usually DO exist in the framework (exception in mind, double indexed lists) somewhere. But I do not know it. Even the expert C# guys do not know it. We need to research. Because the framework is too big, it is not possible to know it. And because it is not possible to know it, every time I am coding, I feel like blind because of the possibility that of what I am doing is actually already there and I don't know it because I didn't think of the right words to research it for.
An expert is someone that can code without using google to teach him how to make every other function.
Study: Mobile (And Particularly iPhone) Users Not Keen On Clicking Ads
I'd be pretty damn upset too if some other project got a lot of press for an announcement which included comments undermining the quality of my project. Sorry, but if you're going to strongly imply that my project's ease of use and performance are subpar, them's fighting words.
To avoid other people's code they didn't like in the first place.

'Not Invented Here' syndrome. A bad reason.

A fresh start. A project designed to their needs

That's shortsighted. Maybe the short term goals had different accents, but in the long run, Twisted and Tornado have the exact same goals.

Major kudos from a large community of developers interested in "real-time" web services and applications

For rewriting something that already exists and not doing an significantly better job and arguably a worse job? Applying those resources to Twisted would also have yielded this result.

Tons of free publicity to the project and FriendFeed/Facebook's open source initiatives.

Also belongs under A. Large contributions to OSS would yield that same effect.

A fresh start. A project designed to their needs
Ability to lead the project in the direction they like

You are assuming, without any reason, that they wouldn't have had that chance with Twisted. If that wouldn't work out, they could easily have forked Twisted, effectively taking over the project.
If it's really two blocks, is it so hard to walk to school and back? Call it parent/child bonding, use it to point out things in nature/things changing in the neighborhood - possibly even a time for the adult to bond with neighbors?
Daytum: beautifully-designed site for tracking personal statistics
I wonder if we're any more productive - whether we spend more time doing research to find a library routine than it would take to just code it.

This is one problem in the OCaml community. Uptake of the new "standard" libraries is lukewarm because everyone has already half-written their own standard library.
Well, if this benchmark from yesterday is accurate, then Twisted can't handle as many concurrent connections as Tornado. I'd say that's a good reason not to use Twisted.

http://www.apparatusproject.org/blog/2009/09/twisted-web-vs-...
Piedibus ;p Pedibus isn't exactly a name parents would like ;p

Pied is foot in french.
The comments were really in passing. 'Looked at it, wasn't for us', more or less. Perhaps them's fightin' words. But getting huffy about them probably helps your project even less, given they'd have otherwise gone largely unnoticed.
people who normally like open source don't like automatic updates

Really? Where does that come from? Because one of the things I love most about running Ubuntu is that everything just stays up to date on its own. I'm always very wary of installing something myself and will nearly always take the apt-get route unless I really need that very latest feature.

Whenever I evangelize running linux, (which is very rarely) this is one of my big selling points. When people see the update manager pop up, update a bunch of programs while I'm doing other stuff and not even ask me to reboot they're often convinced to give it a try.
For our demos, I’ve built a VM which contains an OS image installed in the same way as one of the production servers, with the application installed within it. This ensure that everything the application needs is available, because it’s how you deploy it.

You then avoid the long startup steps, because you just boot the VM, and you can go back to the beginning of the demo by reverting to a snapshot.
> "About 115 children are kidnapped by strangers each year, according to federal statistics; 250,000 are injured in auto accidents."

Maybe. My question is that how many of those children that are in auto-accidents are pedestrians? The problem is that a lot of motorists do not drive carefully around pedestrians (since there is no risk to you by a pedestrian).

I have driven with people who do not even attempt to slow down when there is a group of kids walking along the side of the road. I would rather have my child in a vehicle than on a bicycle when he is in an accident. A guy in an SUV will not even notice that he drove over a ten year old.
Everyone should know it's the latency that matters, not the throughput.

Depends entirely on the problem you are trying to solve. Sometimes DVDs in the post really is the best solution. I've done it on more than one occasion.
Ask HN: What do you do to make sense of your thoughts over time?
A generic question that comes back often is how to put one's thought in consignment somewhere so as to not let this potential "big idea".

My question is further down the road: once all the ideas have been streaming and been written or stored somewhere: how do you assembled them together ? how do you review this product several months later ? Are you happy that you have been mindmapping your thoughts correctly ? has this had an influence on how you conducted your "business" ?
I thought that glyph's response was appropriate and on the mark. It seemed to me that Bret had taken a few jabs at Twisted without really providing quantitate evidence. Particularly the comments about being "demo-quality" and "tons of bugs".

It would have been nice to see innovation happen collaboratively between FriendFeed and the Twisted team. Everyone would have benefited more IMHO.

Twisted has certainly done a lot for event-based architecture. As Glyph points out, the use of Deferreds have made their way into javascript frameworks like dojo. To me, that's credible and proof of twisted's impact in the development community.
Agreed and I'm a Canadian who has lived in the US for a while. Every time I go up to see family I get 50 comments like this.

And what Fox News reports isn't a representation of Americans as a whole opinion wise. 8 million viewers =/= 300+ million people.
If you read the comments in the blog, it's likely just related to the platform. I did the test on my mac, which certainly isn't the final say... I'll redo the test today different hardware today.
Don't you think it would have been more honest to say:

* …115 kidnapped… 2,000 are killed in auto accidents… *

(Presumably that number is correct. I got from some ambulance chasing lawyer's site, but he suggested it was a real number.)
I understand the response at some level, but I also totally get the idea of making things work the way one's mind works. It makes coding much more enjoyable and speeds the process of app development once the core work is done.

And it was nice of the author to do some QA work for Tornado, too. Hopefully he'll go the extra step and submit those bugs he found as tickets so that he's walking the walk and not just talking the talk. :-)
Objective-C 2.0 Class Extensions Explained
You could use that to your advantage. Ex: make a clone chip and leave in under your pillow when you go out all night.
That doesn't help give kids a sense of responsibility and independence, though.
You right an expert hacker! :)
We are more productive. It is not simply a matter of have/not have the routine. It is also a matter of usability. If you did the routine yourself, you would make it specific. When you needed it again, you would need to either write it again from scratch or modify it. The framework has its methods coded in ways to be the least specific possible so to avoid rewrite (in an ideal world, everything would be like it).
Very slick, but it really needs a JSON pretty printer in addition to the XML one. Most JSON services just send one huge line, which is exactly how Hurl displays it.
Video Game Sales Slip Sixth Month in a Row
> While I was in grad school or when I worked at companies I constantly felt I had one great idea after the other for software/web projects

Ideas come more easily when you are not idle.
At one time the Twisted guys were accused of walking away instead of trying to improve Python's async module. History repeats.
I can only repeat: Awesome!

I hope the FF guys will work with you to ensure that there will be only one Tornado in the future and not two independent forks.

It always hurts to throw away code that you put your blood and sweat in (in this case their custom network layer). But the advantages of rebasing this onto twisted are overwhelming for both sides.
That's what I love in HN... great idea!
But there's a catch, isn't there? There's always a catch. At work (Big Company TM), we call it the "MS Happy Path." If you're on it, you're golden and life is good. The overall development experience is great. If you're not, well, sucks to be you. With the other choices you probably have a way out. Even if there's no scaffolding for you, you can at least implement something yourself. Granted it takes more time up front, but it pays off when your priorities vary from those of your tool vendor's.

We've made lots of choices explicitly for the purpose of staying on the MS Happy Path, since we knew it would make our life easier. Not because they were the best solution to the problem.
It's also kinda hard to make other observations if you've never been to the US and all you've been fed is what the media has chosen to serve you.

Not that I feel he was right to make that statement, but speaking as one with relatives in other countries, sometimes stereotypes are all they have to work with. I've stopped counting the number of times I've had to explain to them that not every block in L.A. looks like 'tha streets of compton!'.
You're talking about the average user?

It's simple: because they can pirate proprietary software and they always perceive something which has a price tag as more valuable than something which is offered for free. Something which has more (perceived) value but which you can obtain for free will always win against something which is offered for free (and thus is perceived as probably worthless).

Sad but true.

There are some exceptions, though. A lot of people use Vlc, for instance, because it can play every single (probably pirated) video you'll throw at it. And there isn't a market for commercial video players. Something like Firefox wouldn't have reached such penetration without a lot of marketing (most people doesn't even know what a browser is, go figure).

I'm constantly baffled by the number of articles about these subjects coming out every day from authors who don't understand (or completely ignore) basic human psychology.
And not responding to disparaging comments helps your project?

I think he makes a pretty strong case in this article.

It's a bit passive aggressive though, I.e. "hey I don't have any sore feelings about it, but they went about it like real jerks". Just come out and say they were real jerks without the "I don't have sore feelings" crap. We can tell you didn't like it, and I'm completely OK with that.

I think the mindset that created Tornado is one that a lot of us share as coders. If there's an existing framework to do something but it's messy in your opinion, and the job you need to do is simple enough and not covered very well by that existing framework, well then often it costs a lot less in terms of investment to build it yourself. Then you get exactly what you need too, and nothing more (which increases complexity). It worked out for them too!

I also think twisted could market itself better, but that takes effort that could be spent elsewhere, and I doubt they're all that interested. We'll see.