Predictably, this speed run is now quite outdated, even though it's less than a year later. There have been several major discoveries that have now lowered the world record to just over 19 minutes.
I used to think that I never click on ads, and it's true in that I never click on Internet ads, but I've found that ads I receive on Steam are vastly more effective for me.
If you don't know how Steam ads work, when you first log in to Steam, it will pop up a window with several pages of ads for different deals and promotions going on. Given how low some games on Steam cost, I find that I very frequently will click through and buy the games advertised (things like $5 for an otherwise $50 game can be so attractive!)
I guess the criteria I use for ads is relevance. The only thing I really ever buy over the internet is games, so advertising on the internet for anything that ISN'T a game just won't get my attention, no matter how well you write it.
Really, a better coding style is to use STL strings, containers and algorithms and never get down to the point where you have to care.
Coding at the bare-metal level is a very slow, tedious, error-prone and silly way to code unless you're doing, or have some external constraint that forces you to (and, no, efficiency isn't usually a reason not to use C++ or the STL, it almost always compiles to the same as using strcpy's and malloc's.)
The man is writing about C, not C++. C remains important. I agree that C++ and the STL are good toolsI don't agree that STL style string handling code will compile down to the same thing as C style string handling code.
I think he was just pointing out an alternative conclusion. I think it is an interesting point that the world's only superpower is also unique in the relgion-to-wealth factor. I'm not convinced that's what causes it, but it's certainly possible.
Looking at it from a market perspective, there is a limited supply of something (ie. seats at a table at a reasonable time), and a demand. It's then not a surprise that getting a table costs you more. The only surprising thing is that it seems suprising!
When there's a limited supply of anything, naturally the price will rise. In every other market, there is no benefit to being "first in line" for the product - the price is the price.
Why not have an auction system for getting tables? Whenever a table becomes free, the maitre d' asks everyone to bid on the table. If no-one bids, then whoever is first in line gets it. That seems like the fairest system - no-one can game the system by bribing because it's all completely open and honest.
Why don't any restaurants do this? As a bonus side effect, you'd probably attract the people with more money to spend, as they figure they can guarantee themselves a quick table. Also, this allows the people that really want to go to a restaurant to splurge on getting the first available table, while someone who doesn't really care might leave and go somewhere else.
Basic market forces causing the most optimal distribution of a limited resource.
I really haven't seen this problem, like, ever. All coder's are vastly more likely to preoptimise the hell out of everything, and we end up with the opposite problem - thousands of hours of wasted programmer time won't even reach 1 saved hour of user time. Bear in mind as well that the actual speed of execution isn't always the main cause of perceived slowness - if something runs 10 times as slowly, but runs in the background and never causes the user to wait, it's actually running infinitely faster, from the users perspective.
A much better solution is to write things in the easiest way for coders to change - that way, when something is found to be the actual cause of slowness, anyone can easily go in and optimise it or move it to a background thread. Optimising EVERYTHING in the hopes of obtaining speed is a fool's errand - due to the 90/10 rule, 90% of the code you optimise will never be the bottleneck.
I recently converted from various other graphical IDE's (Visual Studio and Eclipse) to start using exclusively Vim to develop with, and I'm loving it.
I don't think it really needs to be made more accessible, but what would have been AWESOME would be to have known about vim-tutor. I only just found out about it after I've spent a few weeks working in Vim, and have largely passed the time when vim-tutor would have helped. It REALLY should be on the main vim screen, not in the help.
Maybe I'm weird in that I have an inherent distrust the help in open source apps. Most of the times, they seem to be archaic, and targeted at the very advanced users (see man pages).
Thankfully, I've passed the initial stumbling-around period, and now know that the help is actually written in a very readable format. Maybe all that needs to happen is for that to be better communicated.
I really don't think it matters what langauge, as long as they can compile and run code.
Most of us probably started with BASIC interpreters, so easy and readable code is obviously not a prerequisite. What BASIC interpreters did tend to do well was allow you to write a few lines, then run it and have it do what you said.
To answer the question then - I think any non-compiled language would be fine. I think things like Python is probably the best, as you're not required to program in an OO style, or in a functional style - just write lines, and they'll work.
Once the kids are interested and know a bit about how programming, sure, then teach them proper style. The important part is getting them to realise how to formulate thoughts in a structured manner - once you've done that, forming them in a different structure doesn't seem too hard.