BeTips to MySQL

BeOS is just too fragile as a server, tired of dealing with it. betips.net has always been a proof of concept site, using the filesystem as a database to serve a live web site. But it’s just not worth it anymore, so I’ve been porting the whole TrackerBase database to mysql on a linux box and will soon start hosting it there. That server box will share several duties:

– Hosting all of betips.net
– Hosting the submissions and search functionality of kissthisguy
– Hosting large images and other stuff that doesn’t fit on birdhouse

For all of this I’ve wanted a fatter upstream pipe, but my current provider is too expensive. Doing research, it seems that the fat upstream pipes all come at a huge premium. We’re trying to save money, so it looks like what I’ll be doing is to get a speakeasy account with faster downstream and slower upstream (bummer!), give up my seven static IPs, and start using a linksys router for port mapping and firewalling.

The new betips should go live in a day or two, but won’t look much different except for URLs, and the search engine will be a bit different.

OS Shuffle

Over the past few days:

– Decided win2k was just too slow on the laptop, so built a new 800MHz, 256 workstation.

– Backed up everything I needed from the laptop and moved it to the workstation.

– Put latest BeOS updates on the laptop and moved betips to the laptop, so I could use the betips workstation for a linux machine.

– CGI wasn’t working under Apache2 on the laptop and couldn’t figure it out. Finally copied the whole config directory from the betips workstation to the laptop.

– This fixed the CGI problem (still not sure what file(s) fixed that problem, but now the laptop wouldn’t boot except in safe mode. Fiddled with all the usual boot options, which didn’t help. Finally realized that in the process I had copied over ~/config/settings/app_server_settings. Deleting this allowed me to reboot.

– Backed up years of BeOS work to BFS and ISO CDs. My loyal betips workstation is now officially retired . It’s been a champ, but time to free up some resources (and the laptop is so much quieter to have as a 24×7 server).

– Over the past couple of days I had downloaded two 677MB iso images from Mandrake mirrors to the new Win2K machine. Now I needed to burn them. Duh! The SCSI card is in the old betips workstation and I’m going to want it in the Linux machine. So had to FTP the images to the betips workstation, which took forever because Be’s 3com drivers suck. Then burned the images with Be’s CDBurner. How ironic that the last official job of that machine is to burn install CDs for another OS. CDBurner sure does a nice job though.

– Detached all drives in the old betips and installed a 6GB IDE I had sitting around as primary slave (the only slot left in the IDE chain).

– Installed Mandrake 8 to the 6GB drive, which took forever. I have to say, this is the nicest Linux installer I’ve ever seen. Still had some problems with it, but fairly minor.

– Spent most of yesterday learning and tweaking my new Linux system. Damn, there’s so much great software out there. KDE 2 actually rocks pretty hard. Maybe Linux is destined for usability after all.

– Wanted to upgrade to KDE2.2, downloaded all the RPMs and learned how to use urpmi to do a system upgrade. Very nice.

– Noticed that the installer had failed to give me MySQL, Apache, and PHP, which I had asked for.

– This morning re-attached the Be machine’s other drives, just so I can get to it when/if I want. Booted from CD and ran bootman. Rebooted – oops, linux boot signature can’t be found. Probably because the installer wrote to the MBR rather than the boot partition. It didn’t even ask me. It was trying to be friendly and made a bad assumption.

– Figured I could boot Mandrake from floppy or CD and fix the location of the boot record. Yes, I could boot from CD, but no, I don’t see any way to fix the boot record. Searched the net, searched all options in the installer, didn’t find anything. In the process of looking for the answer, went into the text installer. It said “F12 for next screen” and I wanted to page through until I got to the part where the bootloader is installed. I assumed that F12 was basically cancelling each dialog, not the equivalent of hitting OK to it. So I’m tapping F12 and all of a sudden I see “Now formatting /dev/hdb1”. Crap crap crap! So now I’m reinstalling the whole damn thing again. Fortunately this time I found the advanced install options and made damn sure I’m getting apache, php, myql.

Linux installation is getting better, but they still have a lot to learn from BeOS. Not that they ever will… but every time I’ve messed with Linux I’ve gotten into trouble. Every time. It’s so damn frustrating. Copy and past hell, software installation hell, crashing apps… kind of surprising given all the stability claims I’ve heard. Well, the OS is stable, but many of the apps are not.

Palm Buys Be, Inc.

Still trying to figure out how I feel about today’s news that Be, Inc. has been purchased by Palm. Or, to be more specific, Palm has purchased BeOS, BeIA, and has dibs on Be engineers – they didn’t actually purchase the company per se. But Be will probably close up shop once the sale is complete.

In a way, we were all prepared for this for a very long time now. We’ve been waiting for the other shoe to drop, and it finally has. I don’t think that many of us thought that whoever bought the company would have big designs for the desktop OS, and Palm almost certainly is uninterested in doing anything on the desktop. More likely, Palm wants to beef up and extend its product line – make palm-sized devices more media-friendly, and possibly build appliance-like units for the home. No one has heard yet whether Palm has any plans for the desktop at all, but I doubt it.

This pretty much seals the deal – it’s the end of the road for BeOS as we know it. In a way, it’s been dead for two years. But now, barring a miracle or a surprise announcement from Palm, BeOS is really, really dead. I have to confess that there’s a part of me that just wishes BeOS would go away. It has left me exhausted and apathetic. Tired of waging a battle against ridiculous odds. Tired of the humming of betips.net in my office. Tired of trying to stand up and evangelize like a crazy old man with tinfoil in his hair ranting about the second coming. But another part of me still believes deeply in what Be is and what they’ve created. Believes that there is a way to best MS at their own game (without having to tread the open source quaqmire). Believes that there is no better desktop user experience, period.

I don’t think any of BeOS users are shocked, really. More like relieved to finally know where things are headed. The people who continue to use BeOS after this news are going to be the hardcore users only. Like the people who still use their Amiga boxes after all these years. I doubt I’ll become one of them. At this point, only the regular Byte gig keeps me hanging on and watching the news. If that falls away, I probably won’t be using BeOS anymore. The compromises have become too plentiful to outweigh the advantages.

More than anything, I think what’s sad about all of this is that it sends a message to the world : “Don’t bother trying to create a better desktop OS — it doesn’t matter how hard you try, how many engineers you throw at the problem, how much money you spend, or how many years you put into it. Microsoft owns that space and, worse, the public is totally complicit and fine with that fact. People will not stop using Windows. It is a losing battle.” It is unlikely now that anyone will ever again attempt what Be has attempted.

And that’s the saddest thing of all — the insidious ways in which the monopoly has wormed itself into the fabric of our economy and culture. The message that “resistance is futile” has been hammered home.

The Joy of Linux

I’m reading this book The Joy of Linux by Michael Hall and Brian Proffitt. Pretty interesting read, and quite funny in places, but the arrogance and blindness of the authors is astounding to me as well. They use words like “elegant” to describe Linux, and talk about how cohesive the Linux community is. What a joke. They never even mention BeOS once in the whole book, even in the context of “fighting the good fight” etc.

Anyway, it’s nice to read a book about computing culture by otherwise very good writers rather than the usual technical manual type of book.

Hardcover only right now though – I’d say it’s not worth the price of admission unless they do a soft cover.

Apache and BeTips

BeTips is now running Apache, rather than Robin Hood. Forget about Xitami. Have done a bunch of benchmarking, and Xitami is slow as molasses compared to Apache and RH. Maybe Xitami does well on single-threaded platforms, but on a dual-proc BeOS machine, it’s all about multithreading, and single-threaded just doesn’t cut it.

Learning a lot by learning to configure Apache. I’ve never had the opportunity to do it before. Not difficult, just brand new territory for me. Enjoying the changeover. Now have everything working but SSI, and that seems to be an acknowledged problem. We’ll lick it.

Have been using Microsoft’s Web Application Stress Tool for the benchmarking. Pretty sophisticated. Did an 8-hour run against Apache last night, requesting alternating HTML and CGI pages as fast as possible. Did nearly half a million overnight. Would have been a lot more, but running through the slow pcmcia network card in my laptop, and my CGI pages do a lot of work. Apache also comes with ab, so I can do stress testing on the local BeOS machine without having the network in the way — huge difference.

Xitami

Cool – Rob Judd just compiled the Xitami web server for BeOS, so I’m running betips on xitami rather than RobinHood now. RH is great, but there are some things it doesn’t do, like output standard Apache log format. Xitami does, so I’ll finally be able to parse my traffic logs with analog.

I’ve also wanted to see whether frequent server stoppages are a result of BONE or RH. Wanted to test with Apache, but was never able to get Apache to compile under BONE. Anyway, this test is going very well so far. Spent a couple hours configuring last night and all is good.

Already reported one bug last night, and Judd sent me a new binary by this morning with the problem fixed. Wow – a responsive developer!

The BeOS Paradox in 2001

I just posted this on BeNews. Re-posting here because it summarizes my thinking about the operating system that was one of the most important things in my life for the past four or five years. I’ve had to go through a lot of gear-gnashing to come to terms with the current state of things. This sums up where I stand with it today.

Many people seem to misunderstand my current position on BeOS. If my words and my actions seem contradictory, it is because of the apparent paradox of these two true statements:

1) The BeOS _marketplace_ is extinct, done for, and beyond hope of resurrection. This fact would not change even if a major new BeOS release appeared (which I feel is highly doubtful) — it’s far too late for that and too many businesses have been burned by attempting BeOS development. There is no money to be made on the platform. Without either monetary incentive or open source momentum (we have neither), the future growth and evolutionary potential of BeOS and BeOS apps is extremely limited.

2) Despite its shortcomings and missing mature applications, BeOS is the best desktop operating system ever developed, period. So good, in fact, that people will continue to enjoy finding uses for BeOS despite the truth value of #1.

I am bitter because of #1, but I still (sometimes) use and promote BeOS because of #2.

How bad is the FreeBSD installer?

Just off the top of my head:

– When doing a net-based install, it hangs waiting for confirmation for some things (like if it couldn’t find a designated package on the ftp server). Which means you leave it running overnight, come back, and it’s been sitting there waiting for confirmation for 7 hours.

– When it was done, went to reboot and got “boot signature not found”. But I know I set the BSD boot partition to bootable. Booted from floppies, went back into the slice editor and found that my “active partition” change hadn’t taken. Looked at the readme and found that it said I had to commit the change. But “commit” was buried down in some other menus in the installer where I couldn’t see it. Alternatively, you can use W in the slice editor. But W isn’t shown as one of the menu choices. It’s a “secret.” Retarded.

– Went through the whole rigamarole to set up X and everything seemed to go well. It launched a dummy screen in my chosen resolution, let me tweak the horiz and vert placement, etc. Even had the mouse working. Let it go ahead and link these settings to X. But once booted into BSD, running startx fails with some utterly cryptic message I haven’t gotten around to writing down. More research required.

– Set up a regular user account and booted into it. But it wouldn’t let me su to root. Not a password issue – it says I’m not in the right group to do that. So then I couldn’t shutdown or su to root to shutdown. Had to ctrl alt del. Later, killed that account and recreated it and specifically invited the new user into “wheel”. That worked, but was that the right thing to do? No idea. Felt kludgy.

– Ran /stand/sysinstall to have another go at configuring X. When I exited sysinstall, it went out onto the net and started grabbing the whole /bin directory again. I didn’t want that and I didn’t choose that. And there’s no way to cancel out of the net download process. Once it starts, you’re stuck in it. Let it go through the process, then found that the user I had finally set up properly had been erased and root login didn’t prompt for password. WTF?!

And that’s just off the top of my head. Status: Can boot from Be’s bootman now. Can log in as a regular user. No X running. No time to work on this again for a while. Grrrr. Unixland prides itself on being user-unfriendly, that’s one thing. But bad design is another. What I don’t get is why some writers have praised the FreeBSD installer. I want to send those people BeOS install CDs.

Net-Based Install

Turns out that the problem probably wasn’t that the cylinder boundary was too high. Well, it may have been, but once I got everything moved around I found that the FreeBSD fdisk wanted me to delete the BFS slice and re-create it as a FreeBSD slice. Previously, I had only tried to change the filesystem type from the main fdisk menu. The errors it gave were misleading and led me down a garden path. So much for usability. That’s the flipside — I always complain that no one has ever made things as easy or as logical as Be has. And when I spend half a day trying to get sound working on a Linux machine, I gripe and grumble. But I have to confess that my inner tweaker actually derives some kind of perverse pleasure from twiddling all the knobs. That’s Be’s secret Achilles heel – it’s too damned easy to install and configure. You get the satisfaction of using a coherent system, but not the satisfaction of banging your head against the wall for an hour and then solving something. Banging your head against the wall makes you grow as a person. I think that’s why Linux is so popular. Because it’s so hard.

Anyway, everything is humming along now. Downloading and installing FreeBSD at the same time. Gotta hand it to ’em. Net-based installs make sense. Everything should be that way. Start with a floppy, get it going, go eat dinner, watch some of the made-for-TV-movie about the legendary tenniss battle between Bobby Riggs and Billy Jean King, and you come back to a fresh-baked operating system. Pretty cool. Only it’s going kind of slow – 9.4KB/sec – 1/4 of my bandwidth. I think they meter it intentionally.