Monday, May 18, 2009

Early Thoughts on Developing for Windows

I didn't completely escape the clutches of Microsoft when I found my new job. This new place does some development for windows CE, it turns out. I've been struggling through some build issues with some code for the last couple days, and my early impression of developing for windows are not good. I'll admit possibly a little bias, but I'm really trying to keep an open mind. Really.

First of all, the command-line tools are severely lacking in Windows. My mentor here is showing me all kinds of command-line tricks to get stuff done, which I really appreciate, but cmd.exe is awful, copy-n-paste is weird, you can't resize the window by dragging the edge. Useful commands like which, grep, find, just don't exist. Agony. I know about cygwin, but I've never been able to integrate that well with the rest of windoze, and especially not with Visual Studio.

My second complaint is online help. MSDN appears to be quite voluminous, and somewhat helpful actually, but if you run into something that's not in there, all you can find are forum threads where developers make uninformed suggestions to each other and sometimes they happen to find something that works. It's not their fault, the source code for all their tools is secret, so it's really hard to know exactly why the build tools do what they do or the compiler says what it says. The open source folks theoretically can find out exactly why a tool is behaving weird, and with enough people on the internet you can usually find someone who has the correct explanation for the exact wonky behavior you are seeing. Not always a fix, but at least an intelligent explanation that is much more convincing than, "I don't know, have you tried service pack 2?"

OK, back to having a good attitude and plowing ahead.

Thursday, May 14, 2009

Ubuntu 9.04 + X11 forwarding + Windows XP + Putty + XMing

Wow, I sure thought this was a longshot when I went searching for an obscure problem I was having. Strangely enough, someone else using putty and Xming to run X11 applications from a Jaunty machine also got the error message:

PuTTY X11 proxy: wrong authentication protocol attemptedError: Can't open display: localhost:10.0

And their fix worked for me too. Thanks, timkoop on the Ubuntu Forums!

Monday, May 11, 2009

Upgrade from 8.10 to 9.04

Pretty much just like the upgrade from 8.04 to 8.10, minus the xorg problem. The /etc/apache2/sites-available/default didn't even change this time, but I still had to kick apache to get it to serve my virtual host. Not sure what's going on there. One thing I noticed that I forgot to write down about the last upgrade, that is still weird with Jaunty, is the network manager applet has a red X on it, as if I'm not connected to a network, even though networking is configured how I like and working just fine. I'll have to google that one someday.

Wednesday, May 6, 2009

Upgrade from 8.04 to 8.10

I'm a little behind on my version of Ubuntu at home. Last night I finally upgraded to 8.10. Very smooth compared to past experiences. Video didn't work at first. I just deleted my xorg.conf entirely and then X started up just fine. My apache virtual host was not being served. Everything caused the default junk in /var/www to be served up. Here's what I believe the relevant diff off /etc/apache2/sites-available/default was:
bryan@brzo:/etc/apache2/sites-available$ diff -urNp default.dpkg-old default.dpkg-new
--- default.dpkg-old    2007-10-31 21:38:12.000000000 -0700
+++ default.dpkg-new    2008-09-19 06:41:53.000000000 -0700
@@ -1,5 +1,4 @@
-NameVirtualHost *
-<VirtualHost *>
+<VirtualHost *:80>
Restoring NameVirtualHost * and <VirtualHost *> statments seemed to fix the problem. I have not taken the time to understand why, and if anyone wants to comment and enlighten me I'll greatly appreciate it. Look for another post soon on how the upgrade from 8.10 to 9.04 goes! I know, try to contain your excitement.

Tuesday, May 5, 2009

Life Update

You may have noticed that the blurb about me has changed slightly. My career status has been in flux over the last few months, but has now settled. Back in January the project I was working on at HP was canceled. My rather large R&D lab was told that we no longer had work to do. Our only job was to find another job. The upper managers would try to find spots for us on other projects within HP, but we were basically told to not hold our breath. So I didn't. I updated my resume and went to work. I interviewed with an interesting company located about an hour away from my home, up the Columbia Gorge, named Insitu. They were (and still are) busy interviewing and hiring many people and it took a while to hear back from them. In the meantime I was offered another position at HP. Not having anything else firm, I accepted. I quickly learned that it was a .NET/C# windoze programming position. No more playing with hardware, no more bit twiddling register manipulations, no more ISRs, no more using an oscilloscope to debug my code. I was sad, but I tried to have a good attitude. C# has some interesting things about it, right? Well, when I heard back from Insitu with a job offer to do embedded software, it was very tempting. When I considered more interesting work at a place that is hiring and growing rather than laying people off, the choice seemed pretty clear. The big downside is that 1 hour commute each way. HP was only 5 minutes away. I could move my family to White Salmon and get the same commute, but we aren't there yet. And so I drive. And listen to books on CD. It's not too bad. The work, and work environment, is just about what I imagined it would be as well. Upbeat, excited, and employee friendly. I have hardware on my desk again, and they even bought me a pair of ESD safe shoes.