07 April, 2003

I love Theo.

This seems to be the week of OpenBSD falling on its face. More than before even. 
Beginning with the announcement that OpenBSD will not be shipping Alpha support on its CD's. This after my difficulties (was linked here; had bug #5008, it's gone now) getting the Alphastation 500 running it, and their unwillingness to even look into it (note: Miod Vallat was very nice in saying he'd try, and by pointing me at where I might look to find it, but nothing came of it).

Basically, the OpenBSD team has decided that for "exotic" hardware platforms like UltraSPARC, Alpha, and SGI, they should focus on the more attainable ("Once Hammer is out, and once we run on it, I will have no choice but to advise people that it is going to be the architecture that we attempt to do the most security work on." ... "I've liked and worked with Sun hardware for more than 15 years. No more. Dell is more responsive.") hardware.

I guess that's the same hardware Joe User has in his basement.

Next off, we have this insane ranting of Theo to the misc@ mailing list. I'll quote his original message here first:

...it may seem like a lot of money, but there are overheads, and some of the funding was also absorbed by upenn (that is how grants work when you involve a US university [ed: or government!]. However, the grant only runs for about another 6 months.

which is kind of scary, since with the US economy tanking so very nicely, and at the same time people becoming much more comfortable with ftp installs, we are seeing massive decreases in cd sales (massive decrease in sales from the US, but no real decrease from the rest of the world -- you decide what that means). at the same time, we are seeing massive increases in ftp installs.

so.. i don't pretend to know what will happen after the darpa grant is over.

i know we have some more security work, in particular some stuff extending out of W^X, that we want to do, and that stuff really needs fulltime people pushing it.

also, i've been informed that the money translates to more like 1.5 cruise missiles. [ed: !]

So Theo is being sponsored by the US Government to continue to produce OpenBSD. And yet his insinuation is that America is responsible for the tanking of the world economy, and oh yeah, you could be buying software instead of cruise missiles. I replied to him privately in email, and was given this cheerful reply:

I am not anti-american.

However, you fuckheads really are fucking yourselves, and you refuse to admit that it is your own fucking fault.

It's must easier to call me anti-american, than to admit that the greatest danger to america is those who use that mantra and don't fix their own state of affairs.

I was just there two weeks ago. I travel down there all the time.

But apparently you don't pay fucking attention to what is happening down there.

You've got an entire population taught to be afraid, and of the wrong people.

-snip-

Your rah rah rah america attitude is SICKENING to the entire world.

get stuffed.

i hope you lose your house when fanny may[sic] crashes.

OpenBSD has become the cliche of the OSS project with tremendous potential, being run into the ground by an egomaniacal demagogue with his own interests at heart. How can one in good conscience continue to use this software? How can Americans continue to be the brunt of Theo's anger and the butt of his jokes? How can we continue to support software that does nothing but remove support for platforms we're using and trying to develop and bugfix on?

Personally, I am trying desperately to remove my reliance upon OpenBSD entirely, and to migrate to Solaris 9 and Sun Screen. The ironic thing is, after this exchange with Theo, I actually had an interview with Fannie Mae for a Solaris Administration position. Gee, maybe I can lose my house and my job too!


OpenBSD: The only proactively Anti-American operating system.

06 April, 2003

Neutering females

Work
 
Work is good. I'm finally getting back into the groove of things. It is really nice to have all your coworkers compliment you on your code. I almost feel like I'm tooting my own horn here (ok, so I am a little), but what really makes me happy right now is that, in comparison to my last position, ingenuity and hard work are encouraged. I'm working with some very high caliber people who appreciate somebody who is dedicated to doing things right. Now all those ideas I came up with while I was unemployed (six months of ideas!) are coming out. The right way to do one thing or another, what I did wrong with X piece of code, I've even been able to re-use some code from my "pet" project.

At first it was hard to get back into the swing of things. But, to use the old cliche, programming is like riding a bike. You get a feel for it, and after that it just flows. It's probably been five years since I rode a bike, but I know that should you put one under me, I could get to where I need to. It has been a week, and I've already come up with my first real piece of code for the new employer, a modular test suite with pluggable reporting routines. Complete with pod (which I guess shocks a lot of people -- documentation before the code is done).

Why is it the hardest part of a development project is the little pieces? I spent at least four hours today trying to figure out where an extra newline was coming from, and how to actually delete it and put a newline elsewhere, where I actually wanted it. I felt pretty stupid; I had written this big elegant piece of code (4 hours on Sunday, 4 hours on Saturday, about 500 lines overall), and here I was, pounding my head against the stupid arrayrefs and chomps and qq's. I wish I had a junior developer or something so I could take this big piece of code with the documentation, and have them worry about the "small stuff" so that I can go on and write more good code. I guess we can't have our code and eat it too.

Mentoring

Ben Tilly, who I still really dislike a whole lot, once told me I had "big fish in a little pond" [ed: ben, hey, fuck yourself] syndrome. I guess I was just born to smart parents who never thought for a minute I should doubt myself. For most of my life that's been ok. I rarely ever bump into somebody who is so much more skilled than me that I feel small. However, at work a few days ago, we were talking about our shells of choice (yeah, nerd talk). One of these guys goes as far as to say "when he was writing pieces of csh in college" (in this case the !? commands). I about fell out of my chair. csh? You mean the shell I use every day? You mean, the guy I'm sitting next to not only knows my shell, but helped write it?

So I am starting to feel out of my element sometimes. But he is such a good guy, and he's so graceful about situations where he is clearly the more experienced person. He even has somebody he considers to be his mentor. I haven't broached the subject with him, but he has all the hallmarks of somebody who could really teach me a lot. Hell, he even wants me to come to dinner with him and RMS. I mean, wow. I said to him today,
    "... at the end of the day, though, what's most important to me is feeling like I've grown."
That seemed to totally click with him. He told me that if that was my attitude, that I've already won. That I am better than 99% of the programmers out there. Tilly might think I'm FOS if I say that I'm not out to be better than all but 1% of my peers. But, I'm not. I have an undying passion for what I do. As I get better, I become happier. I start to see new angles to problems I couldn't previously fix. I see a new way to help a coworker. I see a way to beat a deadline. I see a way to fix a piece of broken code. My life gets better as I get better at what I do for a living.

As pretentious as it sounds, I think I have finally found somebody who can teach me a lot and provide the intellectual challenge and personal experience to help me grow and take my craft to the next level.

This contract is going to be real good for me, I can tell.

Congratulations and Best Wishes
 
My sister, Mary Avriette, whom I love dearly, is graduating from college. I never had the patience for school, and I may never go back. I have the utmost respect for her, and what she has done for the past, gosh, 4 years. I'll be out there in San Diego to give her a big hug, and hopefully, google will notice her. She has a somewhat small presence at present. Mostly just "who ran in this exceptionally long so that your brother couldnt possibly do it" 5k/10k run attendee lists. [ed: these days we mostly just fight]


My kitten, Natasha, was spayed today. I'm sure today sucked for her, and I feel real bad, but I think it is probably better for her to be spayed than to have kittens of her own at six months old.

27 March, 2003

AfterStep

So James Noyes, a fellow Solaris user, who is more familiar with AfterStep than I am, as well as Sasha Vasko (one of the AS core developers), have teamed up to fix the 64-bitness issue on Solaris in the 1.8.11 tree, as well as cvs (which is shaping up to be 1.99 at present, a precursor to 2.0's eventual release).
An excerpt from James' email, including the patch:
 
I got it!
 
I'm currently running a 99.9% fully operational 64-bit afterstep environment. 
afterstep, Wharf, WinList, Pager, Zharf, Audio, Animate, Banner, and Form all
check out good.  Total changes to the code base to get it this way: three. 
Yes, that's right.  THREE.  Best part is, I'm almost positive these changes
won't break the 32-bit builds.

Here are the changes, courtesy of Sun's diff (top is before, bottom is after):

include/module.h
16c16
    int window;
---
<     unsigned long window;


lib/ASmodule.c
155c155
  size_t w;
---
<   int w;


src/afterstep/gnome.c
  CARD32 val;
---
<   unsigned long val;

That's it!  make, make install, and fire it up!  I rule!  Woohoo!

I'm really astonished that people were able to get together and fix something that was clearly quite broken. I managed to find an article here, http://www.treblig.org/articles/64bits.html, which seems to point out that this is not just an Afterstep issue or a "Sun not doing what the coder expected" issue.

Actually, it looks like this is a common 64-bit clean code issue. Well, perhaps with apple's G5 coming out (MacOS Rumors says they expect to see them released 2-3 months after MWSF in June), and AMD's Hammer, we'll see more of the market having 64-bit computers. Dear god, we may even start to see scsi back in workstations. Nah, probably not. At any rate, with there already being Itanium's, Hammer, and G5's, there's no reason we shouldn't start to see better support for more "traditional" 64 bit platforms, such as the excellent Alpha (although hamstrung by a severe lack of reasonable software), the Ultrasparc, and the SGI MIPS platform.

While I've got your attention, I'll ramble on a little more about the job situation. I had some pretty promising conversations with a woman from Volt, a headhunting firm. She says theyre looking for a Solaris guy for a position at Northrop-Grumman. That would be pretty cool, but I suspect she's going to want a urine sample and perhaps a clearance.

Ick. I'm curious, though, why it seems the job postings for the Northern Virginia area seem to have died down in the last week or so. I've only really been able to send out 4-5 resumes in the last ten days, which is about 25% of the rate I had a month ago.

And speaking of clearances. I've never heard of such a thing happening, but I had an acute allergic reaction to the fingerprinting ink they used at the Arlington County Sheriff's office. Rash all over my hands and arms all the way up to my elbows. Ick, ick, ick! The things I do for employers. As if the 16 hours of paperwork for the clearance wasnt bad enough, I have to get covered in ink and have a rash for two days. And I'm probably not even going to get the stupid clearance anyways. Gr


So, to wrap up, I think that after we're sure AfterStep is all patched and ready to go, we'll start passing messages around to the other window manager groups saying that their code might be broken when compiled 64-bit on Solaris/Ultrasparc. Maybe we'll even find more people that care. That'd be... splendiferous!

23 March, 2003

Spring is here

Spring is here.
It must be, I just had a birthday.
I don't feel any older or wiser. One would think that being a quarter of the way to a century, you'd be given some secret "insight" tarball or something. At any rate, I digress.

So I've spent all day fiddling with 64-bit window managers on Solaris. I've built myself a 64-bit gcc 3.2.2, as well as g++ (GCC it turns out is actually the "Gnu Compiler Collection", I wonder when they changed that. By mentioning gcc and g++ separately, I mean to say I didnt build fortran and java and ada and all that other stuff I wouldn't ever use). Heck, I've even got a 64-bit gdb.

This was all inspired by the fact that GNOME 2 leaks like a sieve and after a couple days, X becomes all but unusable. Xsun should just not be taking 250mb of ram [ed: !]. That is ludicrous. So, I went out and grabbed fluxbox, which refuses to compile. Ok, well, so it doesn't exactly refuse to compile, it has some broken m4 macros, so autogen.sh doesnt work, and it doesn't make it past the configure script.

Additionally, there are some, shall we say, narrow-minded and GNU-specific bugs in its codebase. I'm confident that after the m4 stuff is fixed, the source won't compile either. It really is too bad, I liked fluxbox on our OpenBSD/ia32 machine.

Waimea, Blackbox, and OpenBOX all compiled happily enough, but linked against this Sun X library, /usr/openwin/lib/sparcv9/libX11.so.4, which does some unsavory stuff:

Casper *** [ed: removed at author's request], from Sunmanagers:
This bug is listed now as "will not fix"; it appears to be caused
by under specification of the XChangePropery() (when the format 32
is specified, "longs" are converted as the standards specify rather than
"32 bit" quantaties the coders often expect)

 ...

It seems that the standard specified that "32 bit " means "long"
there a property type of "32" should be acommpanied with a 64(!)
bit value.
Suck. 

I'm guessing this means that I need to convince the developers of at least four different projects that their code doesn't work on Solaris/Ultrasparc and that it is important. "64-bit? Why?" "Sparc? Why not just use linux?" "What distro are you using?"

Call me a bigot, but I'm really sick of opensource projects that are so "ethnocentric" (if you'll pardon the metaphor) that they lose any openness they had. I run at least five different operating systems at home, and I expect code written in C to be portable. I expect coders to be responsible enough to write code that works be it compiled by MIPSPro, Forte, GCC, or whatever the heck Intel is pitching these days.
I also expect Sun to do the predictable when theyre distributing libraries.

I guess I'm going to spend the next few days trying to convince people who have no interest in the hardware I'm using that it is valuable to them to fix the bug that is ... well, it is debatable whose bug it is, but we all know Sun isn't going to fix it.

15 March, 2003

So, I got a job.

So I got a job. 
 
I got a job working for DISA, but I have to get a security clearance and I don't know if I'm going to get it. If I do get it, I'll be in my first "official" management position -- I've been 'team lead' before, but I've never been responsible for a group of junior employees. I'll be doing intrusion detection stuff for the military as a subcontractor. Should be fun, that's right up my alley.... but, it depends on the clearance, of course. Eh. Being a spook.

I also got evicted. Well, not really. We bought a cat and thought we had read the entire lease. We had not. Now we have a cat we can't give up, and an apartment we can't keep him in. So I am moving, signing a lease without a job, and having my 25th birthday all in the same week. This is ass.
Oh, for what its worth, I went over all my emails and stuff. I have actual statistics:
  • Resumes sent out: 220
  • Phone calls received: 11
  • Followup phone calls received: 5
  • In person interviews: 1
  • Offers made: 1
  • Days searching: 110
  • Cost per day of not working: $77
  • Cost overall if I start work on 3/31: $10,000
  • Difference in wage at new position: +12.5%
  • Time it will take to recover those costs: 8 months
The costs are just frightening. The amount of time and effort required to just put me in one office for one interview. And I'm pretty senior. I can't imagine how hard it must be for somebody who is trying to start a career, just out of college or something. Wow.