Recently in the "Thoughts" category...
I was just browsing Hacker News and was intrigued by the link to Grey Goo.
Nanotechnology has been a fascination of mine since 1986 when I first read K. Eric Drexler’s wonderful book Engines of Creation. If you haven’t read it, I highly recommend that you do. It’s a wild ride through our probable future.
Anyhow, I was particularly struck by one of the paragraphs in the wikipedia article that alludes to the class of bugs that all of us as programmers strive to avoid:
In a History Channel broadcast, grey goo is referred to in a futuristic doomsday scenario: “In a common practice, billions of nanobots are released to clean up an oil spill off the coast of Louisiana. However, due to a programming error, the nanobots devour all carbon based objects, instead of just the hydrocarbons of the oil. The nanobots destroy everything, all the while, replicating themselves. Within days, the planet is turned to dust.”
Indeed.
Let’s not do that.
I’m currently cruising at 35,000 feet on a Virgin America flight from San Francisco to Seattle. I’m surfing on my iPad whilst being served a Rum and Coke by a very nice flight attendant.
Being upgraded to first class didn’t hurt either.
Seriously, Virgin America is the best airline I have ever flown. Friendly; a little bit irreverent; spotlessly clean. Recommended.
Did I mention the WiFi?
As usual, Dadcentric sums it up.
I have slammed doors and stood behind them as you cried yourself to sleep.
I have slept in your bed, curled around you like a blanket and felt my legs grow slowly numb.
I heal your wounds and you fix me when I am broken. We meet in the middle and find much happiness there.
Seriously, Dadcentric has some of the best writing out there.
It’s amazing how quickly we go from here…

To here…

Sometimes life just needs to slow down.
Having thought about my last post for a bit I thought I’d ask you, dear reader, what would you like me to write about?
And at the same time I get to try out the nifty Google Docs Forms thingy. All responses end up in my spreadsheet and won’t be shared with anyone (until I write about it, that is).
Let me know!
Why has this blog been so infrequently updated?
Many reasons really, but mostly because I’m hellishly busy at work and probably 80% of the content that I’d post here is now ending up on FriendFeed.
I should probably add the little FriendFeed widget here so you can see what I’m up to over there…
Anyhow, every now and again, long form blog post ideas keep popping into my head, so I’ve been keeping track of them and hope to find some time to do some serious writing soon.
I promise…
And yes, there will be kid related posts. Did I tell you about the phenomenally smelly poop my daughter produced this evening? I’m so proud.
If there ever was a need for the US Military (or any military for that matter), to step in for “humanitarian reasons”, this is it. There are photos from this event that have driven me to tears…
Please, just make it stop.
Both sides are ignoring a UN call for cease-fire.
Enough.
Please.
Every night since he was born (except Wednesday, that’s Pub Quiz night!), I’ve put Julian to bed with some reading, songs and a few other rituals.
First we read - usually he chooses the book and then I sing to him. The same songs. The same order. Always.
Then we do the rituals:
- Phony - He gets to look at photos on my iPhone.
- Blowing up - We take turns “blowing each other up” until we we pop like a ballon. it’s hard to explain - you have to be there…
- Hugs.
- Love you! G’night!
Recently though, I’ve been wondering “when will he ask me to stop”? He loves the songs, I love singing them to him, but he’s five now. I’m guessing that this bedtime ritual will stop at some point before he goes to college, but I have no idea when.
And that makes me sad.
A few months ago, I posted a link to an article deriding the current focus on Java in schools. Here’s a quote from that article:
…Computer Science (CS) education is neglecting basic skills, in particular in the areas of programming and formal methods. We consider that the general adoption of Java as a first programming language is in part responsible for this decline. We examine briefly the set of programming skills that should be part of every software professional’s repertoire.
An interesting read. What’s more interesting (at least to me) is that I used to agree whole heartedly with it’s sentiments. However, I’ve recently been writing a lot more code in Java than C++ and interestingly, I’m getting to like and appreciate it more - appreciate it’s power, expressiveness and yes, performance.
Anyhow, today along came another article in a similar vein.
In an interview with Robert Dewar from New York University, James Maguire writes:
In essence, he said that today’s Java-savvy college grad is tomorrow’s pizza delivery man. Their skills are so easily outsourced that they’re heading for near-term obsolescence.
Dewar stresses that he’s not against Java itself. But the fact that Java is taught as the core language in so many colleges is resulting in a weak field of computer science grads, he says.
Later on, we are told:
“Furthermore, Java is mainly used in Web applications that are mostly fairly trivial,” Dewar says, with his characteristic candor. “If all we do is train students to be able to do simple Web programming in Java, they won’t get jobs, since those are the jobs that can be easily outsourced. What we need are software engineers who understand how to build complex systems.”
Dewar obviously hasn’t been out in industry very much recently. I know of quite a few very complex systems implemented in Java…
Is the iPhone’s scarcity a manufactured problem or a manufacturing problem?
Is the Wii’s?
The way that “official” signs are worded, especially at airports, has always bugged me. Take this one from the gate at San Jose airport for example:
- All checked and carry-on bags are subject to search. - Ok, sounds good.
- All passengers are warned to control their carry-on baggage etc… - Errr, first up, am I being asked to do something, or am I being told that all passengers have been warned about something. And why “warned”.
- All passengers are advised not to accept items from unknown persons. - Are they? Cool! Oh, were you asking me to do something?
Maybe I’m being pedantic, but why not:
- All your checked and carry-on bags are subject to search.
- Please keep an eye on all your carry-on baggage etc…
- Please don’t accept items from unknown persons.
Seems better to me.
10:00pm: T-2 hours. A beer maybe? Maybe at the Wilde Rover. Everyone’s asleep. Not even the dog is stirring.
11:35pm: Herding Cats are playing. Rock on. Apparently their drummer tried out for Oasis and just missed out. Order a beer. Settle up the tab. Let the bar tender know that he served me the last beer of my third decade. “A shot? It’s on me.” No thanks…
I dunno why this event has bothered me as much as it has. It’s just a zero duration point in time. A milestone. Maybe it’s just that the notion of my mortality is finally coming home to roost.
12:01am: Tick Tock.
I’m always astounded my the number of people that use goto, my little ajax experiment from a few years ago.
Yes the number of seven day actives is only a few hundred, but the fact that it still runs, unassisted and with no real problems gives me the warm fuzzies :-)
It was a nice little project that solved a personal need and obviously solved the need of a few other people out there.
At that is reason enough to keep it ticking along.
Every month, check up on those stop orders to make sure that they haven’t expired.
Right then. As you were.
Joel Spolsky weighs in on the issues raised by the article I posted yesterday and comes up with a wonderful idea:
I think the solution would be to create a programming-intensive BFA in Software Development—a Julliard for programmers. Such a program would consist of a practical studio requirement developing significant works of software on teams with very experienced teachers, with a sprinkling of liberal arts classes for balance. It would be a huge magnet to the talented high school kids who love programming, but can’t get excited about proving theorums.
When I said BFA, Bachelor of Fine Arts, I meant it: software development is an art, and the existing Computer Science education, where you’re expected to learn a few things about NP completeness and Quicksort is singularly inadequate to training students how to develop software.
I’ve always said to anyone that will listen to me (which is not very many) that software is an art form. It attracts artists. Seriously. Just look at any software company and the amount of musicians, artists, carpenters, etc… working there that create code for a living and create other things in their down time.
Create.
Creation of something out of nothing.
Art.
There’s no real definition of art, but in my narrow experience, the creation of music and the creation of software are deeply similar.
An interesting article claiming that:
…Computer Science (CS) education is neglecting basic skills, in particular in the areas of programming and formal methods. We consider that the general adoption of Java as a first programming language is in part responsible for this decline. We examine briefly the set of programming skills that should be part of every software professional’s repertoire.
Another interesting quote:
It [Texas A&M] did [teach Java as the first language]. Then I started teaching C++ to the electrical engineers and when the EE students started to out-program the CS students, the CS department switched to C++.
Definitely worth a read.
I’ve have been worrying for some time that the core programming competence of candidates coming out of colleges has been dropping over the years as the “helpful” languages proliferate and the spectrum of languages that students are exposed to declines…
What’s a pointer, again?
Worrisome.
[Tip’O’Hat to Lambda the Ultimate for the link.]
Evel Knievel died today at the ripe old age of 69. I say ripe old age because I’m astounded that he was still around considering what he did to his body!
The first toy I remember having was an Evel Knievel toy…
All my real investments are managed professionally by someone I really trust and are doing very well, thank you very much. However, I also have some play money at eTrade where I get to play the bigshot dealer.
Over the past few years I’ve done pretty well with it, even though I’ve made some tragically bad decisions (err, you sold APPL at what price!?!).
A couple of months ago I got back into the game after having the cash languish in the money market and have been tracking it in Covestor, which is a lot of fun. I bought pretty deep into VMWare and Garmin.
So how am I doing? Well, VMWare is just outstanding and Garmin had a nice run-up, but got hit on the recent news that they’re looking at acquiring TeleAtlas. Personally, I think it can only be good for Garmin. Mind you, I love my TomTom GPS and you can pry it out of my cold, dead hands.
Anyhow, what do I know.
All I do know is that my little selection is up 35% since it’s inception and I’m walking all over the S&P500…
Note that I’m an idiot in the stock market. I’m sure that both of these will crash and burn and the only reasonable advice based on my record is to buy anything that I’m thinking of selling, because it will undoubtedly sky-rocket at that point.
I had completely forgotten about this until tonight, but on Halloween night 1997, a British Airways flight from Heathrow landed in Seattle containing me. That in and of itself was nothing unusual - I’d taken the trip over two dozen times since RenderMorphics was acquired by Microsoft in 1995.
But this particular time was a little different.
I had no return ticket.



