Terminal Icon

2004 and the End of an Era

Terminal Icon


6.22.2004
So ends another era. First came the static html with bad static formatting. Then I added some Perl, and a basic response board was born, it's since been used a total of three times. I added CSS and made the site pretty. The next era came when I borrowed Lemonade from Gavin Laking and made Sublimeade, a static html-generating version of Lemonade. Homegrown indeed. I touched up my response board and archived 2003 away forever.

I've spent the past few months looking for a new direction to take Casimusings. I dabbled in Movable Type and a few others, but found nothing that I liked so well as my homegrown Sublimeade with my tacky stylesheets and somewhat cheesy response board.

Until now.

Blosxom is going to take over where Sublimeade couldn't keep up. I'm keeping my hosting here at USF, but the pages will be dynamic as opposed to static from here on. Post-specific comments are coming soon.

I've decided that it deserves some beta testing, so please check it out here.

The beginning of a new era. But don't worry, I won't improve the content at all.
6.17.2004
I'm going to try to keep this article short. But only because I'm finally ditching my homegrown content management system built out of a bunch of Perl modules and some statically generated HTML pages (ugliness that you wouldn't believe) in favor of the simple and elegant Bloxsom. I think it may even run on the archaic Solaris servers that are running the school.

News: The Panoptes Project is almost out the door. Working with Davani's to get a prototype in real-world use before we mass-market the boxes. If these little guys sell as much as I hope they're going to, I might just be a millionaire before I'm 22, which would be pretty cool for just doing what I would normally do. (In case I haven't leaked any information about the Panoptes Project to you, that was intentional; normally I'm open about this sort of thing, but a little subterfuge is acceptable when dealing with million-dollar ideas.)

Geeky Excitement: Turns out I can make it to Linux World in San Francisco for only $766, which is well worth a week in San Francisco, rubbing elbows with the best minds in computing. (Rubbing elbows with the best minds? Odd image... oh well, it works.) Hopefully I can find someone to accompany me on such a geeky voyage, but perhaps my boss will send me in a professional capacity. The next Linux World is in February 2005 in Boston, which must have been what Maddog was talking about when he mentioned a Linux World in Boston. He invited me to stay with him, plus I have another friend in Boston worth visiting. Two Linux World Expos in a row. I really am an Uber Dork.

Birthdays and Book Recommendations: Misha invited me out with friends to Trang, which was excellent, for her birthday. (Happy Birthday MishQuiche!) Being a vegetarian, I was kicking myself for not discovering Trang sooner, with an entire page devoted to vegetarian food. (Lots of tofu.) Also, while chatting with a fellow geek about William Gibson novels, and the genre of cyberpunk science-fiction, I was advised to read Snowcrash, which is somewhat more enjoyable than the Neuromancer series, mainly due to far less biting prose and a slightly less breakneck plot progression.

The Future:Look forward to Bloxsom, and while the features won't change the ugliness on my end should be replaced with a very simple categorical content management system. Articles might have headlines now, or they might even have permalinks, or even categories. The possibilities are (very nearly) endless.

Really Important Section that I Almost Overlooked: If you give shell access to remote users that may be compromised or that you do not fully trust, and you run a kernel version between 2.4 and 2.6 (any server admin basically) and you haven't heard: there is a nice kernel panic that can be triggered by any shell user. Most of the major distributions are patching their mainline kernels, but if you use your own tree or a less than mainline kernel, add code to this effect to your kernel/signal.c file and compile. This is a hotfix and it will be replaced by something more elegant in the future, but it will prevent any downtime due to this 0-day race condition.

code
if (LEGACY_QUEUE(&t->pending, sig))
{

if (sig==8)
{
printk("Attempting to exploit known bug, proc=%s pid=%d uid=%d", t->comm, t->pid, t->uid);
do_exit(0);
}
goto out;
}
It's important to note the things that this bug does not do:
  • Provide privilege escalation, no one will root you with this
  • Grant unauthorized access, they won't get a shell if they don't already have shell access
  • Destroy data, the most trouble you'll get in is a dirty disk
  • Affect single-user, firewalled systems without shell access, unless you're like me and crash your own system just to see if Linux can really crash from a userspace app.
Yet another reason to abolish floating point numbers :)

After all that, some humor is in order to help us remember what a truly secure operating system is like. The sooner we all admit that we secretly love OpenBSD, the better.

So much for a short article.
6.11.2004
This is the early edition of Casimusings, and I do mean early. Following up on my previous post, to say that the Lightning won the Stanley Cup finals and the city exploded into a gigantic party afterwards would be the understatement of the season. My friends and I went bar-hopping from the Forum to Channelside, watching a period at each bar along the way, and returning to the plaza outside the forum as soon as the last seconds ticked off the clock, after reveling in celebration with all the other fans packed into Margarita Mama's. Queen's "We Are the Champions" filled the air along with the cheers of thousands incredulous at winning yet another national championship. The rule at the forum plaza was, "Check your inhibitions at the door" as shouting, drinking, dancing, hugging, kissing, flashing, and dousing those around you with champagne were all acceptable ways of showing your enthusiasm and support of the team which just brought Lord Stanley's Cup down here to Florida for the next year. Notably absent from Tampa's festivities was the tipping of cars, burning of property, rioting and vandalism so common after large sporting events in other cities. Tampa sends a clear message to other cities, destruction is not a requisite of a good party, and you don't need to be mean to have a good time. I remember thinking after the Bucs' Superbowl victory that to have so many diverse people so universally and entirely thrilled about one common event is almost impossible in our diverse and egocentric society. It is an experience that I have only seen approached by that of religious fervor, and even then the reflection is a pale one. A friend once told me, "Religion is not the opium of the people; football is the opium of the people." I think he was and is right. It might be what I like most about sports in general, anything that can bring people together so universally can't be all bad, right?

After the party wore off and I took my test with several other soggy computer scientists, I slipped back into my laid-back geek existence. Namely I've been working on fitting a complete streaming server into a ramdrive under 256 MB. I know it's possible. It's simply taking more time than I've anticipated. The nice thing is that I can build the test image easily and repeatedly by creating a filesystem onto a file, mounting that as a loopback device, and using a stage1 tarball to attempt several different configurations. I may finally have it, now that I've thoroughly stripped all the unneeded packages and moving to a headless enviroment. I'll tell you one thing, once this works, I never want to do it again.

All the custom compiling has given me a lot of time to watch movies and listen to commercial-free radio here in Tampa. Towards the end of The 11'th Hour tonight, a song by Python alumnus Eric Idle was aired. I'm hosting it here with the hope that my site won't be unceremoniously uplugged for it. It has a good amount of explicit lyrics, so if you're offended by strong language, you've been f***ing warned.

Ashcroft would be pleased

I'm going to write something about merging engage out of the enlightenment CVS repository. It's great for all us closet Mac OSX fans who run Linux because we like cheap hardware and free software. It's the last piece of the "convincing my x86 computer that it's a Mac" puzzle. GL-accelerated desktops are great. Here is a video of engage in action. Merging it right now isn't for the faint of heart though. Well worth the effort for a elder Linux wizard though.
6.6.2004
After a thoroughly nerve-wracking third period and an even more dramatic overtime, the Bolts broke the tie in double overtime to even the series in Calgary, bringing the series back to Tampa for a winner-take-all game seven.

This was eerily reminiscent of game five, when after a long tie in the third period, the winning Calgary goal was scored in the last five minutes of the first overtime.

The energy that has built up to game seven in the long and dramatic series has finally come to a head and if the Lightning can find the momentum to carry game seven, Tampa Bay can be almost guaranteed to explode, figuratively if not literally.

I'll be in Ybor or Shots before, after, or during the game, or during the ensuing party. It's like the Superbowl all over again: never during any other circumstances could so many people be in such general agreement about one idea. Granted, the idea is a simple one: Go Bolts!
5.29.2004
Only moments later and it's Saturday and I can get away with this. Gnome 2.6 is exceptionally sexy. Now that I've merged udev and Gnome 2.6 with my system, all that remains is Project Utopia and I'll have the sexiest desktop ever (with the exception of Max OSX Panther, which still makes me drool every single time.)

Spatial browsing, hotplug, udev. For Linux geeks, this is pure sex.


Okay, now that I've purged that geekiness, I can sleep. Check out Gnome 2.6. Go there. Now.
5.28.2004
Strange things boredom does to you on a Friday night. Haven't posted in a while because I wanted to make sure that everyone who wanted a copy of these samples got one, and they get better publicity on the top of the page.

Anyway, on the subject of boredom, got a really crazy idea tonight to look up an old friend of mine that I used to chat around with online. Amazingly, her site is still there. She's stopped sharing her poetry, which means she's stopped sharing my poetry, which is good since it's something like 4 years old at this point.

Is that right? Four years! That puts me at 18 the last time I talked to her, perhaps a little younger. Always was a little on the bizarre side, but always amusing and completely random.

So running across her site was a bit like a trip back in time for me. Four years ago I could have cared less how many assembler calls a given function made in a given compiler, or what the binary representation of "ethers" was (011001010111010001101000011001010111001001110011, for those who were wondering.)

At the time I was bouncing back and forth between a love of the theatre and an unhealthy obsession with immunology. I had heard of UNIX and Linux only in passing, and the only time I considered anything other than Windows as an operating system was when I paused to consider my halcyon days as a DOS wizard. I met her when she asked me to publish some poetry on her website, and for the first part of the time that I knew her, I was simply "A Beat in Florida" (she was in New Jersey at the time)

I'll make a note to myself to catch up with her, to which I won't pay any attention until I forget about it for another four years.

In any case, it was a nice bit of nostalgia for a Friday evening. She has a LiveJournal (really neat Open Source project I might add) that links to her main site here.

This full-time-work thing is rough. I simply must find a party tomorrow or I may explode from too much continuous contact with computers.
5.11.2004
Looking through my logs, I'm noticing that more and more of my readers are coming to this site in search of something like this. So I decided to consolidate as much of my Nvidia information that I've gathered over the years and assemble a list of things to do when playing with the Nvidia kernel module, especially pertaining to the 2.6 kernel series.

So there you have it, get your Nvidia information here.

Also, I find it funny how things move in circles. First I rode a bus to school, then I got my own car and drove to school. Now I return to riding a bus once more. Not a problem though, because I ran into Misha while I was waiting for the 6 and surprised her with my lack of hair.
5.6.2004
I am morally obliged to brag about this.


Most impressive.


If you're a gamer, you're already awed. If not don't worry about it.
5.3.2004
Just a short note to anyone who reads this that I don't normally communicate with: I am having a party for my twenty-first birthday at my condo in Tampa on the seventh of May. If you read this and you know me personally, by all means feel free to come. This is an open invitation: I keep an eye on who reads my blog, and trust me, you're all more than welcome if you're in the area.

If you're not in the area, get in touch with me as we could probably work out some method of transportation or directions or something along those lines.

A splendid time is guaranteed for all.

A note to my two readers in Germany or the Netherlands:
Chances are I don't know you, and so you aren't invited to my party. My apologies.

You know what? On second thought, if you're a reader of my site from Germany or the Netherlands and you feel like coming to my party, feel free. Fares are cheap right now, so hurry over.
4.30.2004
Nessa found this on 98 Rock's Website under the "losers at livestock" section. :) Thought it warranted a post since it's a pretty obscure picture providing empirical evidence that I really do leave my condo for reasons other than class and SLUG!

Me at Livestock
Hey, soak the geek with the recording studio in his pocket!

4.29.2004
Tomorrow marks the last day of exams. Following this will be the next LUAU meeting. John is going to show off his Zaurus if I can get him one of my spare compact flash cards.

In addition, the chance appearance of Noir on my random playlist made me realize that I still haven't finished watching Noir. So I just finished episodes 16 and 17.

Woot. My 24 port hub was being excessively loud and annoying (bad fan) so I broke it. (the fan, not the hub) My video card was being annoying as well (see entry about badness in pci subsystem) so I broke it too. I am greatly feared by my electronics. They quake and quiver when I come near, for I break them by means of overtinkering.

A short aside. Broke when referring to my video card means I took IRQ away from ACPI, turned off AGP, and played around with MTRR until I was getting AGP-like memory transfer. With some work this might just suffice but at this rate I'm beginning to suspect hardware malfunction. Oh and just for fun I smacked PAM and told it that it can't change the access permissions on /dev/nvidiactl ever again. Hah! Take that PAM! I am root and I say who chmods my device nodes and who doesn't!

Tonight was the annual condo association meeting and I was solicited for my vote on the treasury debate I've been so careful to avoid. Here I though childish bickering stopped when people grew up; maybe my neighbors never grew up. Anyway, after the bickering was finished, we passed some neat new language for the bylaws so that if our pipes explode we won't have to wait three days for the board to vote on who made the best bid to fix them.

Oh, we passed some nice beautification measures too, and the condo might be getting a tin roof, which will sound really cool for us on the second story.
4.27.2004
Found this on a friend's site.

Load every music file on your computer into whatever your media player happens to be, turn it on shuffle and watch the fun unfold. Unabashedly show the world your musical taste and hear some of your more neglected songs.

1. The Bad Plus - Smells Like Teen Spirit - These are the Vistas
Jazz cover of a Nirvana classic, too much fun to handle

2. The White Stripes - Now Mary - White Blood Cells
Their early stuff was so much cooler, not to say their new stuff isn't cool.

3. Moby - Porcelain - Play
Moby songs like this one make you feel like you're in a commercial

4. Natalie Merchant - Break Your Heart - Ophelia
My favorite song off this album, this song always does exactly what the title suggests

5. Rob Zombie - Living Dead Girl - Hellbilly Deluxe
You know I actually first heard this song at work?

6. Enya - May It Be - Lord of the Rings Soundtrack
I suppose this one is obligatory

7. The White Stripes - Ball And Biscuit - Elephant
Hmm... A trend? Great blues guitar.

8. Hank Williams Sr. - Jambalaya - Live at the Grand Ole Opry
Son of a gun we'll have big fun on the bayou.

9. Rage Against the Machine - Bulls on Parade - Evil Empire
Now this is a band that I wish hadn't broken up.

10. Aaron Copland - The Tender Land - Greatest Hits
One of the greatest american composers ever.

11. Kajiura Yuki - Canta per me - Noir Soundtrack
Noir is one of my favorites, and this is the theme. Uplifting song for such a dark series.

12. Don Davis - Main Title - The Matrix Revolutions
They finally abandoned hard rock for this one and went with 20'th century music, good for them.

13. They Might Be Giants - Istanbul (Not Constantinople) - Flood
Turkish delight on a moonlit night.

14. The White Stripes - Well It's True That We Love One Another - Elephant
This makes 3/20... Think that I like The White Stripes?

15. John Mayer - No Woman No Cry - Personal Live Bootleg
Marley tribute.

16. Phish - Character Zero - Billy Breathes For the dead-head in me.

17. Live - Overcome - Ecstatic Fanatic
Holy water in my lungs: what an image.

18. Dave Matthews Band - Warehouse - Under the Table and Dreaming
Still one of my favorite bands after all these years.

19. Garbage - I Think I'm Paranoid - Version 2.0
I own two Garbage albums, great venting songs

20. The White Stripes - Girl You Have No Faith In Medicine - Elephant
This makes one fifth of all the songs on this list White Stripes.

21. The Beatles - Twist and Shout - Anthology Album
Shake it up, baby. Levity always.
4.20.2004
Once again, my meddling has wrought nothing but disaster. Okay, not disaster but a few headaches at the very least.

I decided to change some of the sound themes in my system. These changes go through gnome-settings-daemon. 10 days later, when I reboot my computer, the X Server suddenly crashes on startup. The gnome-settings-daemon is causing the error, but 10 days following the change, it's naturally the last thing that I'm thinking of.

So I boot a failsafe xterm and run gnome-settings-daemon. The last error it spits out is from gmem line 140, a piece of glibc, the core C libraries in a Linux system. In a reaction characteristic of my personality, I use the shotgun method and recompile glibc from an empty portage tree. This takes a while, but it's the equivalent of waving a dead chicken, you know it shouldn't work, but sometimes it does. In my case however, the chicken ritual fails miserably. The failsafe xterm works great still however, so I emerge strace and take a look at the actions of gnome-settings-daemon immediately preceding the crash condition, looking for calls to mmap. There they are, around some rather aggravating business about the charset.alias file (or lack thereof). There are several successful memory allocations around it so, puzzled , I look up through the system calls until I see it.

The wav file I had selected as my shutdown sound is there, right in front of a mmap call, which returned the exact error code that I had been looking for. My mouth falls open, my hands drop from the keyboard, and I give myself a sound smack on the back of the head before firing up gnome-sound-properties and sheepishly changing my sound events.

If any of my readers are web developer types, you'll notice that I've started running a script on the main page. Morbid curiosity drove me to wonder who, if anyone, was reading my blog. To my pleasant surprise, I'm getting about 10 readers a day, from all over Florida. Most of them use Mozilla or a variant thereof too. Exciting.

So here I am, listening to a jazz piano trio covering "Smells Like Teen Spirit" and trying to figure out if I can get an A in Program Design while bombing my last program, which is due tomorrow. As someone in my class put, "Better not procrastinate on this one, no one will get anything done on 4/20."

The first LUAU meeting will be tomorrow in the Engineering Fishbowl. Be there if you can, as we'll probably be nominating officers, doing the constitution ratification thing, and going over what kind of projects we'd like to work on over the summer and in the coming fall. Also, I thought why not make my end-of-semester LAN party a tradition? As before, get in touch with me if you're interested.
4.8.2004
It's up, it's finally up. You can find it here.

Don't expect to view it without a standard's compliant browser, though. Any of the ones on top of my page will do. MSIE won't.

Do not meddle in the affairs of hackers, for they are subtle and quick to anger.

My apologies to Tolkein.

There are enough pages that link to me, that I wouldn't mind linking back to, that might necessitate a "link page".

Look for one in the near future.

Off to world religions for the most fun I'll have all week. Except now it's raining and I'm going to have to buy an umbrella to make it there dry. More fun for me, maybe I'll stick around here a little longer.
3.24.2004
I've recently joined a forum over at my friend Geoff's website. It's enlightening and fits my socio-economic inclinations (bottom left, if anyone was busy guessing, I'm in the libertarian/socialist corner along with Ghandi and Mandela.)

Anyway, he's a talented webmaster with a flair for political ranting and debate and the forum makes a welcome addition to his site. You can find the website here and the forum lives here.

The forum gets a little pop-uppity at times, but Epiphany, Firefox, and Camino will block all of them perfectly with a single click. In fact, any of the browsers listed at the top of my page will also work great for this, as well as providing great features like tabbed browsing and java/flash integration.

Standards compliant browsing: 1
Buggy non-compliant browsing: 0

Plug for Geoff's site, plug for alternative browsers, plugeriffic!

I love propaganda.
3.19.2004
I'm crossing my fingers for my latest leap into the Linux world. How can this happen, you ask? Simple. I'm not nearly as geeky as I could be, and my geekiness has of yet limited itself to one distribution of Linux, Red Hat and its protege Fedora Core.

However, with the latest install of Fedora, I felt something missing. Where were all the options, the flexibility? An advanced Fedora install, with any choice over the base system, had gone the way of COBOL, unmentioned in polite society.

Luckily for me, to my rescue came Gentoo. Gentoo, named for a small and agile species of penguin, is a fully customizable distribution, that unlike other shrink-wrapped binary packages, is built from the ground up.

A Gentoo Penguin Struts his stuff
A Gentoo Penguin Struts his Stuff


I built using a stage1 tarball, which in the Gentoo world means a week of coffee breaks and watching text scroll across your screen for hours while every component of your operating system, including the compiler collection, compiles from source. This allows for the most bleeding-edge optimizations (my system is double optimized for speed). While this can take some time from your weekend, the installation guide authors are nice enough to recommend quality Tarantino films to watch during the bootstrapping and emerging process. I took the author up on this suggestion.

The build is blazing fast, but I'm sure that the 2.6 kernel with preemptibility would speed up interactive processes. We'll save that for after I've enjoyed a week or two of stability, now that I ousted XFS and AGPGART.
Gentoo Linux, built with speed in mind
Yawn. Yep, the clock is right. Finished up this masterwork at 5 in the morning.


In addition to that, I just finished off a median filter for program design. It's nice, though it could have been much better. Very concise, but at a lack of some functionality. Enhances images nicely, so I might just expand it to do some real work.
Before After
Before and After: A noisy image turns blurry.
3.13.2004
I'm Slack!
Which OS are you?


Yep. I've always wondered and now it makes sense. I'm sure that there isn't anything better that I could be doing with my time.
3.12.2004
If my recent change to the 2.6 kernel works, it may be my first kernel patch. I'll have to e-mail it to the hacker in charge of pci drivers and convince them that it's worth fixing, even though it makes life easier for some binary-only modules.

Here's the story.

After installing the new nvidia drivers, I suddenly had stability problems galore, including hangs of interactive software, something unheard of in the Linux world. My first response was to compile a new kernel, something I've been meaning to do in any case.

This doesn't solve the problems. I take a look at /var/log/messages for the minutes leading up the crash. Aha! Here's what I found:
localhost kernel: Badness in pci_find_subsys at drivers/pci/search.c:132
localhost kernel: Call Trace:
localhost kernel: [<c0206b5b>] pci_find_subsys+0x10f/0x117
localhost kernel: [<c0206b92>] pci_find_device+0x2f/0x33
localhost kernel: [<c0206a29>] pci_find_slot+0x28/0x4b
localhost kernel: [<e0d0d5fd>] os_pci_init_handle+0x3a/0x67 [nvidia]
localhost kernel: [<e0ba185f>] _nv001243rm+0x1f/0x24 [nvidia]
localhost kernel: [<e0ce8115>] _nv000816rm+0x2f5/0x384 [nvidia]
localhost kernel: [<e0c5092c>] _nv003801rm+0xd8/0x100 [nvidia]
localhost kernel: [<e0ce7c4f>] _nv000809rm+0x2f/0x34 [nvidia]
localhost kernel: [<e0c51750>] _nv003816rm+0xf0/0x104 [nvidia]
localhost kernel: [<e0c524c7>] _nv000013rm+0x77/0x84 [nvidia]
localhost kernel: [<e0c51e6b>] _nv003780rm+0x1df/0x2c8 [nvidia]
localhost kernel: [<e0c51c77>] _nv000012rm+0x43/0x58 [nvidia]
localhost kernel: [<e0c51c34>] _nv000012rm+0x0/0x58 [nvidia]
localhost kernel: [<e0b9569c>] _nv001219rm+0xa8/0x124 [nvidia]
localhost kernel: [<e0d0ac98>] nv_kern_rc_timer+0x0/0x37 [nvidia]
localhost kernel: [<e0ba5eb6>] rm_run_rc_callback+0x36/0x4c [nvidia]
localhost kernel: [<e0d0acac>] nv_kern_rc_timer+0x14/0x37 [nvidia]
localhost kernel: [<c012e009>] run_timer_softirq+0xe8/0x1c9
localhost kernel: [<c0129639>] do_softirq+0xc9/0xcb
localhost kernel: [<c011b0f8>] smp_apic_timer_interrupt+0xd8/0x140
localhost kernel: [<c010bf42>] apic_timer_interrupt+0x1a/0x20


(I've cleaned this up some for readability.)
This was repeated roughly six times, at about ten second intervals, leading right up to the instant of the hang where the messages stop right along with all the interactive processes on the box, most notably X. Informative, but as always, a little elusive. Badness? What does badness mean? A little research yielded results.

As it turns out, the nvidia module calls pci_find_slot() during a number of different cases. This is a problem because pci_find_slot() uses the old functionality (don't ask me why, I'm still working on that) of iterating through devices on the bus by moving a pointer, or so it generally appears. This function is called pci_find_device() which in turn calls pci_find_subsys() which warns the kernel if it's called in an interrupt, because sometimes the device can disappear without a trace due to some hotplugging code. (again, this is as far as I know) The functions pci_get_device() and pci_get_subsys() replace these functions in terms of functionality, but have hotplugging built in and don't lose or forget about devices.

So, in my bravest kernel-related move yet, I changed the call to pci_find_device() in pci_find_slot() to pci_get_device() avoiding the whole issue. I'm still testing it here to see if it works and is stable, and I'm asking around #kernelnewbies to see if it will break something on a different hardware configuration.

What I have yet to discover is why the call remained in the kernel despite the extensive knowledge that pci_find_device() causes errors. I imagine that legacy modules might still call this function and rely on a different set of results, or pci_get_device() might require some extra functionality on the part of drivers.

Until I find out, I'll be debugging my latest kernel hack by using lots of video card and CPU expensive operations, i.e. playing lots of Savage while listening to Aaron Copland, burning a CD, Folding Proteins, and running glxgears in the background.

I love debugging.
Stress testing my edited kernel.
Would you believe these were all running realtime?
3.10.2004
Robin "Roblimo" Miller, chief editor of OSDN and Newsforge has some very interesting investigative journalism regarding a venture capital firm known as BayStar and what this means regarding the possible funnelling of over 100 million dollars from Microsoft into SCO, the company threatening Linux users with lawsuits. This is a very in-depth piece of journalism that I couldn't hope to summarize here. For the article in question, click here or check out Newsforge for more in the series on SCO and Microsoft.
3.7.2004 (2)
Okay, alright, yes, I'll give movable type a try. I will keep my stylesheets and my tacky IE indictment, however. Softened in style, but not in substance. Time to sleep, a week of "full-time" work awaits down in Ruskin.
3.7.2004
Spring break makes its presence known as a welcome reprieve from the frenetic daily happenings. As I stirred from my bed this morning (at 4 PM) I gave my thanks to the wonderous spirit of lethargy that allowed me to hide under the covers most of the day, finishing all the books that I had started over the course of the semester, which were beginning to accumulate on my nightstand. After greeting the day in this manner, I lounged around the condo for most of the rest of the afternoon, doing some light research for work, grazing on snack food, taking a long hot shower, and spending some quality time with my computer. I get to do some real work (the kind that pays well) starting tomorrow, but until then I just thought I'd share my good fortune with the rest of the world.

As a brief aside, I've had a few opportunities to see the new Microsoft Longhorn, both in action and as a beta build. WinFS could be very interesting, theoretically applying balanced binary access and relational databasing to the filesystem. The problem seems to me that the other seemingly good ideas in the past of this nature were colossal failures until several years after their implementation. For those of you still guessing, think of registry hives, then apply that to the filesystem. Again, like a relational database of configuration (the registry) it should be faster and more redundant than a flat-file system. The problem is that anyone who has ever dealt with a corrupted registry knows the perils of storing information all in one place and storing it all as binary data. I'm not saying that it can't be done, or that it's a bad idea. A well configured Linux system is full of relational databases. RedHat Package Management (RPM) uses a relational database to make certain that changes are made and committed to the system in an all-or-nothing transaction, hence no half-installed software. SLocate provides a secure searchable database of all the information on disk, without ever actually touching the filesystem. (possibly a better idea that an indexed filesystem?) GConf is quite possibly the closest Linux comparison to the registry, storing configuration information for programs that don't want to store it for themselves, again in an indexed relational database. The main difference is that many of these databases were built with fault-tolerance and redundancy in mind. Your RPM database is unsure of a commit? RebuildDB solves the transactional problem. Even with corrupted hive redundancy, the problem of repairing the registry, especially on a system without any pre-built "rescue" utilities, can be a nightmare for any user or administrator. In fact, my experience is that the most common solution to problems such as this is the time old "wipe it and reinstall" technique.

But perhaps I'm being too rough on them. A subscription plan for software seems like a surefire business model, guaranteed to satisfy everyone, especially the consumer. And let's not forget that Microsoft is the inventor of patented multi-desktop technology. Those crazy X11 folks are all nutcases out of the 80's.

Of course, none of this will be available to the public until 2005 or possibly even 2006. This means that the Linux kernel should be up to around 2.8 or maybe even 3.0. 2000 was the year of Linux on the server, will 2005 be the year of Linux on the desktop?

The idea that one camp must annihilate the other in order to be successful is contrived. What is important to realize the next time you find yourself frustrated with a bug or shelling out a few hundred bucks (or 10 bucks a month for the length of the license) for a piece of proprietary software that you will never own is that there are alternatives. With the way things are unfolding the alternatives might start looking pretty good soon. After all, if my mom can use Linux without complaint, the user-friendly argument scarcely holds water anymore. I don't know if I can state this more clearly. Sarcasm aside, you are not tied to Microsoft, or Apple for that matter, for software. If a restaurant served you buggy food, you'd leave and go to a different resauarant. Why accept buggy software then when an <implied>better</implied> alternative exists?
3.6.2004
Okay, I can't seem to go for more than a few months without posting a screenshot for people to admire. These screenshots are special for a number of reasons however. One is a screenshot that can now be found on the Transgaming website as an example of Steam running on Linux. For the puzzled, Steam is the new content delivering, application launching, server browsing, social networking, subscription enforcing masterpiece created by Valve Software to handle Half-Life and all of its various mods.

Of course, they ignored their Linux gaming community and tied it very firmly to the Windows API, go figure. After a few tweaks and the the new WineX 3.3, Steam runs great with a compatibility layer. The best part about this is now I can play Counter Strike 1.6 as well as I could play 1.5 previously. Now no one will be safe from my mad spray and pray tactics. With kill:death ratios of around 1:3, I'm really just hoping to hold my own against some friends of mine. I go by Amity on most games, so if you ever feel the need to have a good old digital duty-dance with death drop me a line or look for me on a server somewhere.

The other two are special, firstly because XFCE breathed new life into my aging laptop and made it once again useful, mainly as a portable workstation and secondly because my desktop has finally caught up and is using the first stable 2.6 kernel release. I went with the monolithic approach this time, not wanting to fight with modules and their interfaces. It's bigger than last time, but with only 5 loadable modules, I have all the functionality as before with a good deal more speed and a much faster boot time.

A Screenshot in Praise of Transgaming
Sometimes my computer forgets that it isn't a Mac, and I have to remind it by playing Counter-Strike and pulling up a terminal.

Linux 2.6.1 Goodness
It's nice to be running a "stable" build of 2.6.1 finally

XFCE Saves the Day!
XFCE makes my laptop useful again, plus gkrellm and digitalblashpemy.com help it look extra sweet.
And who said that Linux wasn't ready for the desktop?
3.2.2004
Only I could fool myself into thinking that the regular maintenance that my computer performs daily was a virus. As most readers know, my firewall is a very hardened Linux box set to act as a gateway. I also have a number of Intrusion Detection Systems (IDS), some subtler than others, just to keep any unwitting script kiddies on their toes.

So imagine a security conscious (pronounced "paranoid") computer science major living behind some of the best security in existence. One now has a pretty good image of me. If a cracker gets into my system, they'll probably be met with admiration and a lot of questions on their technique.

But I digress. One of the things computer science majors, (and all UNIX people for that matter) like to do on occasion is write shell or Perl scripts to handle the more mundane tasks of our computer. Mix that with my security paranoia and you have this morning: I wake up, do some leftover homework, and inspect one of my new IDS. As it turns out, my computer has been hourly sending SMTP (Sendmail) requests to Road Runner, only to have them blocked and caught by my IDS. Normally, this would not worry me, but all of the rejected email requests are coming from the root account on the system. To quote Quentin Tarantino, "Panic hits me like a bucket of water." I scramble through my logs and running processes, searching for any rogue program which might have circumvented my security. I inspect my ip chains and tables for any vulnerabilities. I find nothing, no indication that anything has been out of place. I check for rootkits, it appears that my system binaries are all the same as they were the day they were installed. Now I'm really worried. A seemingly invisible process has been sending mail from my root account with hourly predictability, without any rootkit or password modification. "Could this be a true 0-day worm?" I ask myself. Should I be preparing my admiration and questions, or should I simply tear down the network interface? Then I remember something. Didn't I just write my first hourly cron job last week? I did, but it's only designed to update my domain name record to insure that I don't have too much downtime due to a changing IP address. I check my log for dynamic dns to make sure that it's still behaving. Sure enough, I seem to have designed my script to not only log the activities, but email the results to me on each interval. Road Runner doesn't like dynamic mail servers, so the returned mail response shoots back to my computer, where it stumbles into my IDS, causing my pulse to temporarily skyrocket.

Fun morning, huh?
2.21.2004
The creative duo that was the heart of Evanescence has been broken, and in a <sarcasm> tremendous surprise, </sarcasm> it seems to be a relationship of Amy's that drove Ben to leave the band mid-tour.

I just discovered this news, although it seems a little bit on the old news side of things. While it saddens me to see a co-founder of the band leave, the abruptness of his departure seems uncharacteristically immature. Then again, considering the tumultuous, second-person, relationship-driven songs that the pair wrote, it seemed expected that Amy's relationship would cause some internal strife, to say the least.

Shaun Morgan, of labelmate band Seether, has posted an article vilifying Ben Moody of Evanescence for leaving, but closes in the style of a 15 year-old boy, without any real sensitivity or sense of concern for Amy, Ben, or Evanescence as a group.

It will be interesting to see which direction the band goes from here.
1.14.2004
Normally I'd write something about the commercial nature of Valentine's day and the merits of single life. I'd spew some communist or anarchist or Linux propaganda, depending on what kind of a mood I was in, and then I'd consider myself lucky that for the first time in more than a few years, I'm not supporting any industries I wouldn't normally support on Valentine's day.

However, something happened this Valentine's Day. I got a present from Epic Software! The Unreal Tournament 2004 demo was just released for Linux! This means bad things for any gaming Linux geek that actually has a girlfriend. I offer my sincerest sympathies to any girl who finds their date uncommonly tired due to an all-night gaming session. I also offer my condolences to any geek who might be tactful or thoughtful enough to put off the download to avoid aforementioned "gaming induced narcolespy." These are the choices we make in our lives. To badly paraphrase a biblical reference: As for me and my computer, we will serve UT2K4.

So what if I have to download it from Eastern Europe at a speed approximating that of my first modem?
1.13.2004
Survived my presentation to the USF MIS Society on the 2.6 Kernel and the Future of Linux on the Desktop. It was actually a lot less intimidating than I was anticipating, and demonstrtating Half-Life and Call of Duty on the big lecture hall projectors was something I really want to try again when I have more time. I also discovered that I already knew the administrator of the group. I believe his exact words were "So you're the guest speaker, I was wondering if there could be two linux experts named Tyler at USF."

As it turns out, I am the only linux expert at USF named Tyler, at least that I've come in contact with. It's little things like that that really make you feel like you stand apart from the crowd. By the way, if you can't detect the sarcasm in the above statement, you're thinking too seriously.

If you are thinking too seriously, living room forts are a great cure. They're easy, they make you feel about eight years old, and they're a perfect place to lie down and read a book. Great things to keep you from feeling too old when living in your own place.

The notes for the presentation are here online in PDF form, if you'd care to loan 5 minutes of your life to perusing my thoughts on the future of Linux. As if by reading my blog you don't already know more than you ever wanted to know about Linux.
1.9.2004
For those few readers who may be wondering where I've gone, I have not in fact dropped off the face of the planet. I have, however been what one would normally call "swamped". I'm taking 17 hours this semester, all interesting but most are also rather difficult. In addition I'm working close to 20 hours a week doing data management and migration for a company around 45 minutes from my condo. As if that weren't enough, I got a wild hair (or maybe a few wild hairs) and decided to start a student organization, LUAU (Linux Users At USF.) I'm also scheduled to give a presentation to a group of Computer Science grad students on the 2.6.X Kernel and the future of Linux. The insanity doesn't stop there however. I've also applied for an internship at Red Hat in Toronto, developing desktop tools, in addition to signing on with the Flash for Linux project. Needless to say, I'm writing this in the short time I have between classes while lounging and soaking up the wireless access at the Marshall Center prior to a Program Design test.

The format for the coming year will probably be more short entries like this one, with brief updates on the whirlwind of a time that I'll be having until this time next year. This will be somewhat of a shift from the calm, reflective, and thoughtful articles of the last year.

I'll also be moving this page to my own hosting server soon, as soon as I get it built and running smoothly that is, which should allow me to do more with my time spent coding and less time adhering to University guidelines.

I'll post a link to LUAU when it's up.

If you long for the quiet days of 2003 with a pensive, laid-back, blog, link back to 2003 and read the archives, they're still there in all their former glory.