Older blog entries for Nelson (starting at number 10)

7 Feb 2004 (updated 7 Feb 2004 at 14:47 UTC) »

Haven't written anything in a while. Currently dorking with Mono, it's more cool than I had expected. I've also been spending a lot of time with C++ and libgc, very cool, I almost don't believe it.

Right now I have decided to throw some time after the TenDRA project and see what happens.

Doesn't SCO have claim to the copyright of TenDRA? Or some of the libraries in it? I could have sworn that a company they own did a chunk of the work. I'd never sabotage a project or wish a compiler team anything but luck (more is better in my book, I like choice) but with the current SCO situation I'd be cautious, you never know if they may wish to excercise their right as copyright holder to re-license a project. Should it ever become a GCC: GNU Compiler Collection competitor and useful I'd half exepct it from them right now. You could always fork but they seem to take a fairly liberal view of their rights. I'd think SUIF and Open64 would be safer choices if you insist on not working on GCC.

Speaking of, Pascal is included in the Mandrake GCC RPMs anymore. It warms my heart and brings back fond memories. I'm not sure if GPC is mainlining in to GCC of it Mandrake is patching their own cut. As I understand it, GPC has been a work in progress for clse to 15 years so it's nice to see it getting put in to some more popular places. Hopefully this addition will make Pascal and Ada (which has been in the main GCC tree for a while now) more popular choices for some projects.


I've been playing with Python and ORBit a bit lately. I'm impressed. I've never seen CORBA so simple before. I've heard it talked up for the last 12 years and it looks usable now. I've dorked around with SOM but it was a nightmare compared to ORBit now. Especially with Python, 15 minutes and I can clients and servers talking to each other. Very sweet.

Other stuff

I'm still high as a kite on cycling, the season usually starts to get a little depressing after the Tour but I'm riding a lot and still loving the bike all the time.

Simply incredible... The Tour de France organizers have chosen not to invite Mario Cipollini's team this year, again, in favor of some lame second-tier French team. This is a man who is the reigning world champion, has won 42 stages, as of his victory today, at the Giro d'Italia (a record!), the Milano-San Remo classic, Gand Wevelgem (apologies for my spelling) and numerous other races. Two thumbs down for Jean Marie LeBlanc.

Another cycling fan! I'm also ouraged by this crime.


I'm not sure what to say. It's nasty, Iraq is proving many of the assertions about them to be true. They are grossly violation Geneva convention by placing bounties on the heads of their enemies and showing POWs on TV. They launched scud missles which are considered WMD and then the fake surrendering and other perfidy is disgusting. I hope it ends soon. I think there are lines that shouldn't be crossed, ever; I think it is imparitive that we never give in to terrorists or their tactics like this. I can't imagine how you possibly justify their actions. I pray for peace soon. No more from me on this.


I'm a big fan of a clean build. At IBM once I worked on a huge project that had a perl script that built the makefile and then ran make. It was insanely complex and some dirt bag coded himself some job security with it. Adding or removing files was impossible without this guys help, I added a single cpp file once and it was broke for 2 days, you simply couldn't add a file to the list of files to compile. Currently debugging the same problem I've debugged at every other job. Some jackass puts a "perl necklace" (pardon the sick humor, but it is the best description I've ever heard for a 1000+ line undocumented piece of mission critical perl) on the build and we make a few changes and the build stops working. NEVER DO THAT! EVER! I honestly haven't run into something you couldn't do with GNU make, it might take a little script but it's always possible. ant and a-a-p do some nice stuff for you too. Bottom line: don't make the build too complex, don't have too many system deps for it, and don't leave it undocumented... I think this might be my biggest pet peeve, I think you should be fired for doing stuff like that.

Open Source Sabotage

Then last night I debugged another, very interesting bug. It was an intentional one. An opensource project, that I won't name yet, intentionally pushed out sabotaged code. There website had a redirect, if you downloaded it from some computers you'd get the bad code, if you downloaded it from others you'd get clean code. I was shocked that someone would put the time and effort in to something like that. Upon closer inspection they had some embedded messages in the software that were hidden behind a simple XOR-esque encryption and made to look like data strings. When you run the software you get a little nastigram about how you've been black listed. Any comments on the best way to deal with this with in the community? I'm inclined to start a fork. Anyone know of other cases of this? They didn't drop our IPs, they didn't contact our ISP or admins about anything, they intentionally sabotaged the download.

Anyone playing with a-a-p much? I've been dorking around with it some and it's pretty sweet. I've got nothing against GNU make but I always end up writing shell scripts with in my makefile to do some things. I really like the ability to embed Python within my build script.

Pretty cool.

Hash: SHA1
I read the Pragmatic Programmer a couple years back,  nothing terribly
illuminating however it was enjoyable and I really liked the idea of
trying to contain so muhc of the good common sense wisdom about
programming/software engineering and trying to put it in to a tome for
beginners and such.  I like lists and such.   Anyone know of a
community effort to put together something like this?  What I'd like
is something like wiki that can suck the contents of it in to a book
type format.
Version: GnuPG v1.2.1 (GNU/Linux)

I got to thinking. This is sort of like my own blog.. Call me stupid but it only took like 2 years for me to realize that fact. I'll start putting stuff here more regularly. Pull my GPG/PGP keys from www.keyserver.net. I'm big on signing and encrypting all email anymore. Get enigmail with mozilla or evolution and start partying with email encryption. I even put my photo in my keys so you can see my mug shot if you start encrypting your email.

I've been preoccupied with this SCO business lately. I worked at IBM for 5 years. I simply cannot imagine that company stealing another company's work. Integrity has a premium placed on it within IBM. More importantly, SCO hasn't done anything that IBM didn't do 30 years earlier. It just doesn't make a lot of sense to me. I know they've had a speckled history, AIX for IA32 was really SCO, I always joke that they picked SCO because it has a name that is 3 letters long and that made the sed script to replace it with "IBM"that much easier. SCO has been slow to "get it" and I fear that becaose of that they feel that they have a decreasing number of chances left for them. IBM will slap them silly if they aren't careful.

29 Jan 2003 (updated 29 Jan 2003 at 05:32 UTC) »

Haven't entered anything in a while... I'm busy. Doing security software. Still alive and well. Still doing free software, still making a living at it.

Having fun. It's an interesting time for our movement and out industry. I'm optimistic.

more later. peace, love, God Bless,



Okay, I hope people read this. Send me a note at ian.nelson@echostar.com if you wish to discuss it.

Here is my question. What the hell good are SysV Queues? The Linux kernel limits them to 16. So you have a software resource that is limited to 16 instances. That just seems low. With such a small number of them they are a valuble resource, how do you decide who can and can't use them?

The logical next question is what the hell good is SysV IPC at all? Anyone? Anyone? If you want to really ponder this, what you need to do is architect a system, a complex one, and use SysV queues for IPC, only then will you have the true state of mind to enjoy this problem. Former Windows hacks think they are the logical choice for IPC. Fortunately you can bump a constant in the kernel and ramp the max up to 64 or something but that feels like a bandaid for a bullet wound.

-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: Processed by Mailcrypt 3.5.5 and Gnu Privacy Guard <http://www.gnupg.org/>

iEYEAREGAAYFAjqlifEACgkQQy/763lDO1qWxACdG7JmzTebiK/74FBeorBN/sNT FmQAoMurwwVTlSh5/ow0h8wt8+aud0jViEYEAREGAAYFAjqlifEACgkQQy/763lD O1qWxACfcOnom4vZauyPMpZ+nqBX2aPz+CoAni/vusr7E21uWoK38tJE+MfTtBGJ =j5t4 -----END PGP SIGNATURE-----


I haven't put anything up in here in a while. So here is an update.

Christmas was great, saw a lot of old friends and had a wonderful time.

As for code.. I'm getting to be guruesque in the Linux boot process, I wrote a bootloader for the NatSemi Geode chipset and then hacked the kernel to load out of flash and load an initrd from flash. It's pretty cool, a pain to debug and code though.

I'm also hacking the reiserfs to have a holepunch() function in it so we can truncate the heads of files quickly. This is kind of a low priority at the time but I want to get it done.

I'm getting to be expert at Gtk+ and Gtk--, I'm quite fond of Gtk-- actually. I've been bounced around a lot at work, I do lowlevel stuff and then I get pitched in to high level app work because the bosses can't plan very well.

I've also built a full Linux distribution for Echostar called DISHLinux. Not a terribly challenging task, just time consuming. I've built a Makefile and a set of python scripts that will build it for you all in one shot.

I was doing a lot of stuff with Mozilla but we have decided to not persue it at this time. It's a shame, I think it's coming together.

All of that and then I'm getting in some hours on the bike and snowboarding.. So all in all life is pretty good.

-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: Processed by Mailcrypt 3.5.5 and Gnu Privacy Guard <http://www.gnupg.org/>

iEYEAREGAAYFAjp4nS4ACgkQQy/763lDO1rBZwCeONVmTtoJwGPfgGLi21iTUvTR 51UAoLYMlzkB4bsDmhFJKGaoVq5sLRhgiEYEAREGAAYFAjp4nS4ACgkQQy/763lD O1rBZwCgvCuGI4AFaTT3SRHY9PWr1ANhfUUAn0whxjBN8bvfg8tWdtwTSqkBoTdC =kKL8 -----END PGP SIGNATURE-----

1 older entry...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!