David Welton: The Future of Programming Languages: Economics
Someone on Hacker News asks about the future of programming languages, and I realized that it's a pretty interesting topic. Here's my take on it:
Programming languages are about people, and the compromises they may or may not make in order to communicate their intentions to computers. The technology in question may change, but there will likely always be people involved, and as long as that's true, looking at the problem through the lense of economics provides useful results.
Therefore, looking at programming languages pretty much requires that you look at the economics of them:
I wrote this in a hurry. Have I missed anything? How do these factors apply to languages you see emerging?
- Network effects are important, but obviously don't squeeze out smaller languages entirely. I.e. it's good to be able to get libraries, find people to hire, books to read, friends to chat with about problems, etc... This means that future languages will have to seek out a critical mass of users.
- Since the times of Fortran, languages have been getting more efficient in terms of programmer time, because programmer time stays the same or gets more expensive, while computer time keeps getting cheaper, and language implementors keep getting better at making things fast under the hood. This means that languages of the future are likely to let you do more with less, all else being the same.
- Learning a programming language will continue to be a fairly involved process for most people, meaning that for many, it's more efficient to learn a few languages well and use them for as much as possible, rather than to try and find the 'perfect' language for each problem. This rewards general-purpose languages, compared to niche languages. This also rewards flexible languages that can be used in many different environments.
- Computers are only going to become more and more important, meaning that more people are going to want to develop the skills to work with them. Not all of them will be experts, and many may not know much, but have a vision for how a program could solve a particular problem in a field they are knowledgeable about. This means a low barrier to entry is important, because those novices will pick easier languages, become progressively more competent in them, and thus (network effects) contribute to their diffusion. Case in point: PHP. Future languages should be capable of solving hard problems, but should also make it easy to get started solving simple problems too.
- Working on languages is lots of fun, so even though there aren't necessarily monetary rewards, people will continue to play with and explore new ideas. I don't see there being a limited supply of new languages in the future.
- The costs of switching from established languages will continue to be high, so future languages will still need to interact with "legacy" languages like Cobol, Fortran, C, Java, and so on, that are so widely established in industry that systems written in them will be with us for a long time yet.
I wrote this in a hurry. Have I missed anything? How do these factors apply to languages you see emerging?
Back when Linux kernel 2.6 was released, one of the immediate benefits that I noticed was how beautifully responsive my desktop had suddenly become. As it turned out, Linus figured out that he would create a buzz to accompany kernel 2.6's release by having a default clock rate of 1000Hz. However, the excitement was short-lived and kernel defaults were soon brought back down to a more conservative rate of 250Hz, allegedly because some peripheral chips could not handle such a high frequency bump without producing an increased amount of processing errors.
Adding insult to injury, Ubuntu defaults eventually dropped another responsiveness enhancement, kernel preemption, allegedly because the goal was to have a one-size-fits-all kernel shipping with Ubuntu and preemption was detrimental to the kernel performance when the host is used as a server, which was a problem because Ubuntu had somehow decided to shift its focus from the desktop market towards the more lucrative server market.
While there is nothing wrong with universally-safe kernel defaults or with a corporate decision to shift a distribution's focus towards more lucrative markets, it nonetheless left me pondering what would be the best way to get a 1000Hz kernel with preemption on my desktops, without constantly having to crank out my own kernel packages. As such, I was wondering if there would be enough traction from desktop users to justify producing such a kernel and to make it available as a post-install option from the Ubuntu repository?
PS: I'm already aware that a specialized Ubuntu kernel is available to cater for the needs of audio production, but my understanding is that it has power management disabled, because it can interfere with the real-time operation of MIDI devices, while normal desktop users would definitely want to have power management enabled.


Hello World.
I am very pleased to announce apt-offline, version 1.0.
This release adds a Graphical User Interace to apt-offline.



Last week I was on my first Ubuntu Developer Summit (UDS-N), I wanted to attended this summit for couple of reasons:
1. Developer, I m part of Debian Java, working on Eclipse IDE, and as you re developing Debian, you re automatically developing Ubuntu, no?
2.
I
NYC
I spent couple of days here with my cousins and friends, as always NYC never fails to surprise me, and I ll always stop by even if it s only for couple of days
I wanted to meet up with couple of Debian people as well, but unfortunately my schedule was too tight so










Hotel where everything was held was 



































There was a lot of places where you could go to enjoy yourself. Good people at Canonical even offered me free ticket to Disney World, there was a lot of destinations to visit and transpiration was also organized by Canonical. Unfortunately I missed the notorious UDS party on Friday because I had to head home early, but possibly I ll make it next year
Even though, hotel was that great and to be honest you didn t have to leave to look for party.










This is definitely something everyone should see during his life, one moment you re laughing like a lunatic, while other moment you re just having goose bumps from the performance itself. Amazing stuff.








Tomorrow I won't have to deal with it getting dark at a soul-crushing 5:30
pm. Nor will I have to wake up blearily an hour early in the spring.
Instead I will be enjoying my new, custom time zone. It's "JEST", for "Joey's
Eastern (non)Standard Time", and in JEST, there is no spring forward or
fall back stress.
The folly of daylight savings time (Ben Franlin's best prank ever) really
becomes apparent when you have solar power. It's bad enough that the sun is
setting at 6:30 without compounding that by an hour. By keeping my clock
set so the sun sets in midwinter at 6 pm, I will maximise what little light
there is, and minimise time spent using batteries in the dark.
Of course, it helps that I'm my own boss, and that most of the people I
work with are probably not in a nearby timezone anyway, and that most
things are done asynchronously. Since JEST is an hour ahead of local time
here in the winter, I will, at worst, tend to be running early.
So I only have to change my clocks one time -- and by "change", I mean
create a custom timezone in Linux. Here's how to do that.



In the comments of the article explaining 
My fellow Republicans and I got a nice early Diwali present on Tuesday. ~65 seats in the House ~6 in the senate, ~18 governorships and control of ~20 state legislatures. (Some races haven't been formally called yet.) A few disappointments though. no majority in the Senate and Harry Reid and Barney Frank were not defeated. Still overall its an election to celebrate. Here are a few thoughts.
The Election System Is An Embarassment
Once again there are several races where the outcome is in doubt because of technical problems with voting. Whatever politics we have, can we agree that it is damn stupid that we still can't get something as simple as counting ballots right?
Prediction: The 2012 Republican presidential candidate will come from the Tea Party.
While I may be a Republican, I am also a Cosmopolitan East Coast Elitist so the Tea Party didn't move me much. There were a couple of cases (NY and DE atleast) where their candidates were subpar and cost us victory but the best of the new Republicans also came out of this movement. I would rather vote for one of them than Romney, Huckabee, McCain, Gingrich etc. (With the exception of Sarah Palin who is just too polarizing I'm afraid.) The Tea Party itself will subside in a few years as all populist movements do. (Ask the Hope'n'changers.)
Young People Are Dumb
Part of leftist mythology is the idea that one day "the kids" are going to rise up against the mean old corporate overlords. It ain't going to happen. There was a huge upsurge in first time voters in 2008 but that was because Obama was a novelty act not because they had suddenly discovered the merits of Keynesianism. Now Obama is old and busted so they won't vote anymore. (Not until they have kids and a mortgage sometime in the future.) They'll spend time make cool ironic signs for the
Today, Zoe is six months old. The last three months certainly feel like
they've taken their time, but a lot has happened.
Developmentally, she's doing great. She's now in the 70th percentile for
height (up from around the 25th percentile), and 31st percentile for weight
(up from the 25th percentile). She cut her bottom front teeth a few days
ago. Crawling is imminent, I'd say. She can already scoot around in reverse,
and by a combination of shuffling and rolling, doesn't seem to be having
problems moving around the floor.
We started her on solids at five months, and she's taken like a duck to
water to pureed pumpkin, sweet potato, beans, zucchini, apple, pear, banana
and avocado. Speaking of water, she's also decided she likes to drink water
from our glasses whenever she sees us doing it. Hilarity usually ensues,
closely followed by a change of outfit.
She's sleeping well, only waking up once a night under normal circumstances,
and that wake-up is getting later and later. She loves her baths. She usually
lets out a series of loud sighs as soon as we put her in the bath.
She got her first cold a couple of weeks ago. It coincided with her first
day in ad hoc daycare, but Sarah and I were both sick as well, so I think
it's more likely that she caught the cold from us than from daycare. She's
still battling it, but it hasn't really bothered her all that much. She's
just a bit snotty. The
About a month ago, at the end of August, I finished a 10-day Vipassana meditation course. This was probably one of the more extreme activities I have ever participated in, and it's well worth a blog post.
I found out about the course in a ridiculously trivial way, by following a link in a Reddit comment (I wonder if I could track down that comment...). The
During my recent trip to Massachusetts for
I recently added a
Last night, I finally got my temperature sensors going, including
a nice and shiny
So, I m (almost) back from the first edition of MiniDebConf Paris, which was a success thanks to the great organizing skills in panic mode of Carl Chenet and Mehdi Dogguy. I think that everybody is already looking forward to the next edition.
I met lots of people, and it was great to be able to finally put faces on names from the french free software community. I gave two talk there, the first one on Debian and Ubuntu (