skysight-inc/HackerNews huggingface dataset:
Something I have learned is that at least some varieties of "extreme excitement" are a sign of character flaws, an indication that someone's trying to sell something not worth buying. That said, a morose lack of any excitement is also a negative sign. Best to be in the middle, a bit subtle but with a keen eye for quality and an affectionate (but not infatuated) respect for excellence combined with a reasoned aversion to idiocy and disease.

Also, something one learns over time is that the startup/technology world also has its in-crowds and celebrity bullshit just like any other social ecosystem. Yes, we have people getting million-dollar checks who don't deserve them; it happens. The celebrity nonsense is generated by, and it benefits, people of low character who really don't belong in our world, people who care more about exclusive parties and velvet ropes than about buckling down and getting shit done and building something great. The good news is that in 15 years, each and every one of them will be a bitter, morose has-been. (I made the mistake of working for a late-'90s dot-com celebrity, someone who spent more money than most people make in 20 years on a fucking launch party before crashing and burning a year later. Details withheld since this is my real name.)
EPiServer tries to stop Drupal comparison
I agree codecademy was the most fun I've ever had learning a language. I'm going to college now, trying to struggle through at least one language, but the professor only reads out of the book. :/
I've been very happy with yappi: http://code.google.com/p/yappi/ . The output is a little clunky to work with at first, but it tells you what you need to know.
I love org-mode.
A lot of development time has gone into the gesture recognizers in iOS. My understanding is that they we're not easy to get right, having a lot of subtlety and edge cases, especially when a given view employs several if them and they need to disambiguate between multiple possible gestures.

Win8 will get there in time, and already has at least one that I would like to see iOS shamelessly copy: the ability, when drag-moving an icon, to employ a finger from another hand to swipe from page to page. Awesome!
Being a private establishment, they have a right to kick you out for whatever reason. That said, some supermarkets do publish their prices online and openness should be encouraged.
Just to check, are you aware that you need to pay $99/year to actually put stuff that you've made onto an iDevice?

It's a lot cheaper than a Macbook, so I'm not saying you're not worthy or anything. It would just be a shame if you get a mac and can't use it for what you intended.
so obviously false.

go read martin fowler's _patterns of enterprise application architecture_.
That got it working, thanks!

Then I tried to write a comment in HN using WebVi in the reply box, and after I hit 'Submit', the comment that actually got posted was just 'M' instead of what I (thought I) wrote. Ah well, early days yet. :)
I wouldn't go so far as to describe ORM as an anti-pattern. I'd rather just say that I'm more productive in the long term without it. Like the author of this post, I always eventually end up dropping raw sql to get things done.

I don't even think necessarily much of an initial productivity boost. SQL doesn't take all that long to write, and once you do, you have complete control over your app.

I'm not completely sure what's meant by the statement "Use SQL in the Model." I think I agree, though I'm hoping this doesn't mean including SQL in the model class itself. I'd avoid coding references to how an object will be persisted in the model class itself. I'd lean toward creating a DAO (or some other API for persisting/retrieving an object) that you can use/call without worrying about how it is happening. The difference is that I'd rather implement that API through SQL than through an ORM framework.
Funny videos
funny videos
io funny might be able to relieve your tired after a day you work,
No built in functions such as the ones mentioned, and preferably no quick entropy generating methods that are obvious but that's not as important as not using the built in functions. Another requirement is that each run of the function has to truly be a reshuffle of the array so that it can't be predictable.

It's harder than it sounds, but I also don't expect a perfect answer - generally I just want to see how people think out of thee box to try and solve an odd problem.
Misunderstanding pull in lean startups
I'm in some kind of middle ground here. I generally fall into the same category as Gabriel (the blog author), but try to compensate by using words like awesome and cool to the extent that I have polite tourettes. I buy a coffee and when the barista hands it to me I reply "that's amazing, thank you"; someone tells me their mum's died and in the desperate struggle to think of an appropriately empathetic response mumble the words "that's cool, nice".
Hmm, not sure where I'm going with this comment - started out as giving an amusing anecdote / fishing to see if others fall into the same boat, but just realised I may have started using HN as some kind of therapy site, so will stop now. Replies are still welcome though. Awesome.
Hear hear.

Also, learning a different ORM every time you switch environments is costly. Switching from, say, Django to LINQ2Entities has nearly no knowledge transfer. Dealing with the quirks between MSSQL, postgres, MySQL is comparatively simple.
It really depends what you want to do as a programmer. Different programming languages do better or worse jobs of making the general concepts of computer science digestible. My advice for someone just starting off, who wants to be "well rounded", is to start learning Python. 'Learn Python the Hard Way' followed by a couple more introductory tutorials will help you get your head around a lot of the concepts of computer science that are found in most programming languages.

From there, it's worth working on a couple projects. You'll have built a few by following the introductory Python tutorials, but pick something you're interested in and actually build it. It doesn't need to be a huge project, something small will do. Once you understand the syntax of the language and why you use specific concepts, building something helps cement that knowledge.

Once you've built a few of your own programs, you'll have a better idea of what you're actually interested in, and what you can do. You won't need to follow a specific route by then, you'll be able to learn what you want to learn. I'd suggest that you pick up a functional language next. Haskell does a great job of packing in a LOT of computer science concepts, especially on the functional side of things. Follow the same process you did with Python. Start with a couple introductory tutorials, then build a couple programs.

If you've got Python and Haskell under your belt, you're really ready to tackle anything you can think of. Learning a new language will be easy. You'll find deep library support for pretty much anything you could want to do. From there you really can pick anything you're interested in and built it or learn it.
It would be really cool if you could do an offset, so you could have fun saying that searches for "green skittles" predicts the NASDAQ by 2 weeks or something silly.
First, I'm about as technical as they come (8 years old sounds about right), so take my advice with that in mind. But I think becoming "technical" is critical to learning how to code.

I don't mean you should start solving equations in your spare time. I just mean find a concrete problem that you're motivated to solve (i.e. something fun), and then solve it.

Maybe you think AI is cool, so try to figure out what it takes to make an interactive chat with the computer (easier than it sounds). Maybe you think computer graphics are cool, so figure out how to make a web page that has a ball bounce when you click it.

Above all, make the path interesting and fun for yourself. You'll get a lot further that way than you will by reading books or watching screencasts that brainwash you into the author's (or the programming language's) way of thinking. Most of programming is a transferable skill set anyway.

That's what I mean by becoming "technical". Just make something you think would be cool, and when you're done, make something cooler.

And if you don't know where to start, just remember this: Google is your friend. Search engines will point you to plenty of material you can copy-paste, and will answer 99% of coding questions you could possibly have. After 15 years of coding, there's still not a day that passes when I don't look up how to do something.
A hugely important thing to keep in mind when learning is "humility is endless". I remember when I started out I felt like I knew hopelessly nothing. Well it turns out that this is actually a good thing. You learn much better when you approach everything with the attitude of "I don't know this so I am open to everything" (There's a concept of 'Beginners Mind' in Zen Buddhism which is similar). I find that new programmers are discouraged by this feeling, when in fact the most dangerous thing is when you start to approach problems with the attitude (and we've all done this) "Okay I'm a smart guy , this should be easy to understand". So cherish that feeling of ignorance, and work to maintain it (the feeling not the actual ignorance).

And of course the biggest thing is to try to put in 1-3 hours a day of practice. Coding a problem you have solved before is not practice. Always be pushing yourself. At first this is very easy since everything is new, just code 1-3 hours a night. But as you get better continue to try to learn new things, code problems from a book you're reading, start learning a programming language that challenges you, implement new algorithms, refactor and improve something you've written etc. Essentially practice is very closely related to humility.

Put in enough hours of true practice and you will be a better programmer.

I also should add that I did find taking formal classes helpful (and it can help with pushing you to realize how much you don't know, force you to practice etc). People make a distinction between autodidactic and formal learning, but really the best solution is both, and they are not mutually exclusive so there's no reason not too.
Although I have been programming for many years, I have never really given Javascript a chance. A friend showed me Codecademy a few days ago, and as a newcomer to the language, I really liked to way the basics were taught.
> (except some clauses such as App Store exclusivity)

To me, this exception is the most part. I wouldn't complain if they had relinquished it.

As for viruses, I am beginning to think that an OS that crashes is just unacceptable. (Which may rule out even OpenBSD, but I'll bite that bullet. http://www.vpri.org/ gives me hope).
Trying to solve a problem that isn't a problem yet. By the time it is a problem, maybe ebook readers will be the cost of books et voila! No problem.

I'm seriously not worried about this, even if only for the fact that there are billions of print books and we're not burning them. They're just sitting there, waiting to be read.
All abstractions leak. The good abstractions make it easy to run some of your own plumbing when this happens. Good ORMs fit this description.
You should see Engadget's preview on it, and also listen ThisIsMyNext's latest podcast. They all complain about how inconsistent and messy it is to get back from one "desktop" mode to the Metro mode. They should've kept them separated as OS's.
Disqus Ranks
Facebook or Fakebook? ITU Report Urges "Caution" On User Numbers
I'm working on a pet project with nowjs and find it quite useful. What sucks is I started this a few weeks ago so I wouldn't be admissible for the contest. Nowjs basically kinds of adds an abstraction layer on top of socket.io and makes it easier to develop real-time apps.

It's especially useful if you need the concept of room. They have a multi-room chat sample which gives a good start. For example, this would be quite useful if you wanted to build a MMORPG game with different maps/rooms where each user is in a single room at a time.

I'm using it with the concept of rooms and instead of sending chat messages to users connected to a room, and send JSON messages of different types and based on the type of message received by the client, I use backbone.js to update the UI based on what's received. When a user's action affect other users' views, message a dispatched back to the room.

The only problem I see with nowjs is that if you need horizontal scaling, you would need a license for a more scalable version of nowjs that doesn't seem to be ready yet from their website. Since I'm thinking forward for my pet project, I wouldn't want to pay for this. I'm thinking to add a Redis pub sub layer to take care of horizontal scaling but would love to have access to their solution for this!
Oh, I certainly agree. But I only agree because my threat model includes adversaries other than malicious coworkers; particularly, it includes innocent coworkers with malware-infected workstations.

By the way, ten minutes I wrote the grandparent to this comment, a coworker IMed me and asked me to break into his workstation :-). He was working remotely, trying to SSH in, his system had gotten wedged due to what turned out to be disk errors, and he needed me to rescue it.
Ask HN: My site can't handle meaningful traffic. Help?
I'm looking for a company which can manage the hosting of my websites -- someone who can keep them up when one of them hits the front page of reddit. Twice this week, I've gotten there, and twice, I've been effectively offline.

The site which keeps crumbling is a Cloudflare enabled (but I've probably screwed that up) Wordpress install running one of the preferred caching extensions. So the problem is either my hosting provider (Lunarpages) and/or my total inexperience here, and probably both with an emphasis on the latter. But there are two or three other projects on the server as well, plus a number of mothballed ones that I'm keeping available.

I'm willing to pay for this, of course. I'm paying Lunarpages for a dedicated server (and too much, at that) would gladly move at this point. And I'm not well versed, to say the least, in these issues, so I do not really think doing it myself is an option.

Advice welcome.
Interesting to note that the first customer is going to use it to supply remote regions of the frozen north (think Ice Road Truckers). I wonder how these vehicles will perform in sub-freezing weather. Will the helium compress? Liquify? Lose some of their lift?
If so, this could prove to be a huge boon to supplying building material and other resources to isolated places that can't support airstrips for instance
Would you consider staying in México for the same offer? I'm an American in Guadalajara, and getting ready to launch my Rails-based start-up, and would be interested in a trial run.
You can. Just set a value in the "Shift series _____ weeks" field.
The answer is to use both. Do you really need realtime reporting? If you don't, store everything in a document database and write a small job to copy the data to a relational store for querying and reporting.
Anyone know of institutions/teachers/administrators who are doing this kind of style in the US? It's completely intriguing.
Deploying Django on Heroku
The helium certainly won't liquify. The denser air in colder climes will increase the lifting power. The volume of the envelope remains the same, and the increased density of helium at lower temperatures is negligible.
I was 14 and faced the same questions you do. I was surrounded by all these guys who could bend bits with their thoughts and had pointers and stacks for breakfast. They all used see and did stuff that seemed amazing to me at the time. Add to that the fact I felt more like a 'creative', in the narrowest of senses, so I was not sure how to reconcile both my interests, my friends were no help and I did not know much about the demo scene, nor of people like _why and the Processing guys.

Somewhere along the way I found Perl, and the way from A to B was not paved with incantations. It took me a copy of Randal Schwartz's "Learning Perl" and a Christmas Holiday to get really hooked — the immediacy of thinking and doing and making mistakes and fixing them was paramount to my believing programming was not only for the initiated.

While I second all the recommendations for having a mentor and working closely with knowledgeable people, I disagree with putting IDEs in the middle and choosing PROJECTS (more on that on a second). I sincerely think there's a great benefit to shortening the path between you and running code, and I believe dealing with compiler errors and linker spewage can be detrimental to the overall purpose of getting acquainted with code and thinking about programs.

About projects: having something as a goal is definitely a must; I don't object to that, but to all the baggage the term _project_ carries. Have something around which you'll structure your thought, but allow yourself to tinker and to put it in the backburner if it proves itself to be not challenging enough or too daunting a task for your current knowledge level. If you're neither having fun nor being challenged, you won't improve.

If you want specific tips on what tech to use, it would perhaps be better if you told us what you want to achieve. Do you want to code for the web, to take your designs to the next step, to code simple workflows?
Not in itself, but if you can manage to change it for someone without their awareness you have basically tricked them into running arbitrary (local) code.
Les Beatles - One - Yesterday
You are seriously deluding yourself if you think that the situation is better in Germany or France. Just for instance, evidence found in an illegal search is valid in German courts. This is abused by German cops all the time. And just as in the US, there are almost zero repercussions for this kind of stuff.
Interesting approach. So how should I become technical? Let's say I'm interested in AI, I can't just think about a problem without a certain base knowledge right?
Two things:

Presumably the comparison of what you say vs. what the video camera shows will happen after when you talk (plus if they know you've seen her their approach to you is likely to be different).

You lawyer will presumably know how word your statements so they are both true and won't get you caught in this sort of scenario. I'm not sure what works for real, but think of the difference between the statements "I didn't see her" and "I don't recall seeing her." Both say the same thing, but the former is obviously more dangerous.

Again, it comes down to the question of "What's in for you?" Nowadays there's pretty much nothing but downsides for you with no upside aside from the occasional situation where saying something will avoid your getting taken in for questioning or worse.

This is something that comes up a lot in the concealed carry/self defense community. Missouri requires a thorough 8 hour course to get a license and the one I attended was taught entirely by police, most or all of them still active in one way or another. Their advice, and they said they didn't like saying this---and I'll note SW Missouri is very favorably inclined towards legitimate self-defense---was that you shouldn't talk to them but retain a lawyer and speak through him.
I'm 26 and I still need 9 hours of sleep! Anyone else have this 'problem'?
The author wants to cool food and is disappointed with his toaster for doing a lousy job at it.
Gençlerbirliği Karabükspor maçı özeti canlı izle 17 eylül 2011
For profiling web requests for a WSGI app, I like to use the Scotch WSGI recorder [1], so you can set it up to record one request, do the request with your browser, then replay it over and over for profiling. (This would be equivalent to your CGI mocking, probably.)

[1] http://darcs.idyll.org/~t/projects/scotch/doc/
Is there a reason why you recommend 1-3 hours and not let's say 6-8 hours (split wisely)?
In the end, Paul seems to me just another pawn who doesn't understand the game he's in—not even who's on whose team.

There are two teams in this game: Team Multimillionaires On Their Way To Be Billionaires and team Clueless Minions. Guess which team Mike and Arianna are on?

On second thought, chances are Paul just understood what it was all about and found his way out as a fake kamikaze who gets to leave with all the suicide bomber honours and yet stay alive and well—which I wish him he does.
Why it's stupid to use a variable as a variable name
You could contact any of these companies.

http://yfrog.com/nwl3czj
On Fat Phones, Lame Phones & a Little Lavar Burton
Sergey's a university student in Russia, and he's actually quite private. As interesting as it would be to here his perspective and approach (almost all manual source auditing) I'm not sure he'd be entirely comfortable with that level of attention.
I'm really not trying to flame here, so bear with me. :)

It's just that in software, the argument "If I already know A, so why should I have to learn B" isn't really useful. Given that software is often about pushing down complexity, one of our main tools is building a "B" so that we don't have to do "A".

I know how to write socket code in C, but I'm glad for libraries that don't force me to think about that level--I can pop up a level or two. Examples continue ad infinitum.

On the other hand, I can buy the argument "B isn't really very good at abstracting A; I've tried to use B, and every time I use B, I end up just doing A anyway. So B isn't useful."

But with ORMs, my experience isn't so black-and-white. I find them very useful a lot of the time. When I run into problems, I can switch to doing SQL directly. That's an okay tradeoff for me. I can certainly understand if others don't find that tradeoff as useful.
Nmeyer32
You may notice that the title is copied verbatim from the subtitle. I submitted before I reached the end of the article. I already expressed regret for not being able to change the title. There is no reason to be sarcastic about it. Your comment is arguably no better for this community, than my rushed title submission.
Yes it's an interesting piece which deserves to be on the homepage.
ZZüy – A Lesson In Perseverance
A few years ago, I saw an article about a steam-injection-driven water pump. Haven't seen anything further, and the prototype scale was too small, but it made me think e.g. of the oil and gas industry. For example, drilled tar sands oil production already needs steam; driving the required pumps with it might be a good use depending upon efficiency and durability.
The the ACE editor behind cloud9ide.com seems to be undergoing pretty active development (https://github.com/ajaxorg/ace).

There is also a vim mode under development. https://github.com/Gozala/vice
This reminds me of hacking ANSI.SYS escape sequences back in the day. You could create a text file which would be "executed" when someone entered "type readme.txt" at the DOS prompt, by using keyboard remappings and so on.

I remember creating a fairly unsuccessful "text file virus" that would try to copy itself around our school network and reboot people's machines. Good times...
Ebooks will drop in price. No problem. If the poor can afford $150 Nike shoes, they can afford an ebook.

The real problem is preservation of information. Dead-tree books can't be destroyed by magnets and EM radiation. One thousand years from now, can people still read our documents? With dead-tree books, they can.
If you have 140M active users, handling a fleet of 1000 servers is not an easy operation, considering you need to manage inter-cluster communications (i.e. when sender and receiver sockets fell on different servers).

I've built Erlang/OTP websockets clustered server, which can handle 3M per node (giving you have enough RAM). Here you handle all your users with "only" 47 servers.

There is a big operational and scaling difference between cluster of 1000 servers and cluster of 47 servers.