The pundits are wrong about Apple’s defection

Remember the days when knowing something about computers was a prerequisite for writing about them?
ZDNet’s David Coursey continues to astound me. Yesterday he wondered aloud what Apple could do to keep OS X from running on standard PCs if Apple were to ditch the PowerPC line for an x86-based CPU, or to keep Windows from running on Apple Macs if they became x86-based.

I’d link to the editorial but it’s really not worth the minimal effort it would take.

First, there’s the question of whether it’s even necessary for Apple to migrate. Charlie pointed out that Apple remains profitable. It has 5% of the market, but that’s beside the point. They’re making money. People use Apple Macs for a variety of reasons, and those reasons seem to vary, but speed rarely seems to be the clinching factor. A decade ago, the fastest Mac money could buy was an Amiga with Mac emulation hardware–an Amiga clocked at the same speed would run Mac OS and related software about 10% faster than the real thing. And in 1993, Intel pulled ahead of Motorola in the speed race. Intel had 486s running as fast as 66 MHz, while Motorola’s 68040 topped out at 40 MHz. Apple jumped to the PowerPC line, whose clock rate pretty much kept up with the Pentium line until the last couple of years. While the PowerPCs would occasionally beat an x86 at some benchmark or another, the speed was more a point of advocacy than anything else. When a Mac user quoted one benchmark only to be countered by another benchmark that made the PowerPC look bad, the Mac user just shrugged and moved on to some other advocacy point.

Now that the megahertz gap has become the gigahertz gap, the Mac doesn’t look especially good on paper next to an equivalently priced PC. Apple could close the gigahertz gap and shave a hundred bucks or two off the price of the Mac by leaving Motorola at the altar and shacking up with Intel or AMD. And that’s why every pundit seems to expect the change to happen.

But Steve Jobs won’t do anything unless he thinks it’ll get him something. And Apple offers a highly styled, high-priced, anti-establishment machine. Hippie computers, yuppie price. Well, that was especially true of the now-defunct Flower Power and Blue Dalmation iMacs.

But if Apple puts Intel Inside, some of that anti-establishment lustre goes away. That’s not enough to make or break the deal.

But breaking compatibility with the few million G3- and G4-based Macs already out there might be. The software vendors aren’t going to appreciate the change. Now Apple’s been jerking the software vendors around for years, but a computer is worthless without software. Foisting an instruction set change on them isn’t something Apple can do lightly. And Steve Jobs knows that.

I’m not saying a change won’t happen. But it’s not the sure deal most pundits seem to think it is. More likely, Apple is just pulling a Dell. You know the Dell maneuver. Dell is the only PC vendor that uses Intel CPUs exclusively. But Dell holds routine talks with AMD and shows the guest book signatures to Intel occasionally. Being the last dance partner gives Dell leverage in negotiating with Intel.

I think Apple’s doing the same thing. Apple’s in a stronger negotiating position with Motorola if Steve Jobs can casually mention he’s been playing around with Pentium 4s and Athlon XPs in the labs and really likes what he sees.

But eventually Motorola might decide the CPU business isn’t profitable enough to be worth messing with, or it might decide that it’s a lot easier and more profitable to market the PowerPC as a set of brains for things like printers and routers. Or Apple might decide the gigahertz gap is getting too wide and defect. I’d put the odds of a divorce somewhere below 50 percent. I think I’ll see an AMD CPU in a Mac before I’ll see it in a Dell, but I don’t think either event will happen next year.

But what if it does? Will Apple have to go to AMD and have them design a custom, slightly incompatible CPU as David Coursey hypothesizes?

Worm sweat. Remember the early 1980s, when there were dozens of machines that had Intel CPUs and even ran MS-DOS, yet were, at best, only slightly IBM compatible? OK, David Coursey doesn’t, so I can’t hold it against you if you don’t. But trust me. They existed, and they infuriated a lot of people. There were subtle differences that kept IBM-compatible software from running unmodified. Sometimes the end user could work around those differences, but more often than not, they couldn’t.

All Apple has to do is continue designing their motherboards the way they always have. The Mac ROM bears very little resemblance to the standard PC BIOS. The Mac’s boot block and partition table are all different. If Mac OS X continues to look for those things, it’ll never boot on a standard PC, even if the CPU is the same.

The same differences that keep Mac OS X off of Dells will also keep Windows off Macs. Windows could be modified to compensate for those differences, and there’s a precedent for that–Windows NT 4.0 originally ran on Intel, MIPS, PowerPC, and Alpha CPUs. I used to know someone who swore he ran the PowerPC versions of Windows NT 3.51 and even Windows NT 4.0 natively on a PowerPC-based Mac. NT 3.51 would install on a Mac of comparable vintage, he said. And while NT 4.0 wouldn’t, he said you could upgrade from 3.51 to 4.0 and it would work.

I’m not sure I believe either claim, but you can search Usenet on Google and find plenty of people who ran the PowerPC version of NT on IBM and Motorola workstations. And guess what? Even though those workstations had PowerPC CPUs, they didn’t have a prayer of running Mac OS, for lack of a Mac ROM.

Windows 2000 and XP were exclusively x86-based (although there were beta versions of 2000 for the Alpha), but adjusting to accomodate an x86-based Mac would be much easier than adjusting to another CPU architecture. Would Microsoft go to the trouble just to get at the remaining 5% of the market? Probably. But it’s not guaranteed. And Apple could turn it into a game of leapfrog by modifying its ROM with every machine release. It already does that anyway.

The problem’s a whole lot easier than Coursey thinks.

Palladium and You

There’s been a lot of talk on the Web lately about Palladium. If you don’t have strong feelings about it, it’s probably because you’re not a bleeding-edge computing enthusiast. That’s OK. You’ll hear about it in time.
Basically, Palladium is Microsoft’s initiative to reinvent the PC and make it more secure. There’s a big uproar about it because it reeks of ulterior motives. Some fear Palladium means you will surrender all rights to your PC and cede them to Redmond.

I’m not totally convinced this is a bad thing. Read more

Another ordinary Monday…

Seen on a sign. God calls us to play the game, not to keep the score.
I like that.

Seen at a book sale. The Coming War with Japan. The book was written in 1992 and asserted that the conditions that pre-dated World War II exist today and that war is inevitable. Then I spotted another book: The Japanese Conspiracy. I didn’t bother picking that one up. I could have bought them for entertainment value, but I picked up a couple of books by Dave Barry and P.J. O’Rourke for that.

The idea seems ridiculous to me.

I was glad I went over to the section on war though. In addition to those, I also found A Practical Guide to the Unix System, Third Edition, by Mark G. Sobell. Had it been in the computer section where it belonged, it would have been snapped up long before I got there. It comes from a BSD perspective, but I have to work with a BSD derivative at work sometimes, so it’s good to have. At the very least, it can serve as a status book (books you keep on your shelf in your office to make it look like you know something, even if you never read them).

Speaking of humor value… I picked up a book on typography, written in 1980. Some of my classmates had a knack for making type look really good–they could literally turn a headline into art. I never got that knack. This book tries to teach it. It also talks about computerized typography. Needless to say, the couple of pages that illustrate that are just a wee bit out of date.

But I’m not worried about the key points of the book being out of date. The basic elements of good design were old news when Gutenberg built his first printing press.

Retro computing. I was inventorying my old stuff and I ended up building a computer. I have an original IBM PC/AT case, but the last of the AT motherboards don’t fit in it well. The screws line up, I’m in trouble if I need any memory, because the drive cage blocks the memory slots on a lot of boards, including my supercheap closeout Soyo Socket 370 boards I picked up a year or so ago. I used the motherboard that had been in that case for something else long ago, and it’s been sitting ever since.

In my stash, I found a Socket 7 board that fits and lets me put the memory in it. It even has 2 DIMM and 4 SIMM sockets in it. Unfortunately it has the Intel 430VX chipset in it, which didn’t cache any memory above 64 MB, limited the density of SDRAM it would recognize, and its SDRAM performance was so lousy you didn’t really see much difference between SDRAM and EDO. But if I run across a 32-meg DIMM or two it’ll fit, and a relatively slow CPU with adequate memory still makes a good Linux server, especially if you give it a decent SCSI card.

I did some investigation using the tools at www.motherboards.org, and found out the board was a Spacewalker Shuttle. So I went to www.spacewalker.com, where I found out there were only three Shuttle boards ever made with the 430VX chipset. There were pictures of each board, so I quickly figured out which one I had–a HOT-557/2 v1.32. It tops out at a Pentium 200 or a Pentium MMX 166, so I’ve got some options if I decide the AMD K5-100 in there isn’t enough horsepower. And, most importantly to me at least, it looks like a computer. A machine from a time when computers were computers, not boomboxes and fax machines and toaster ovens and television sets. A machine that looks rugged enough to survive a tumble down a flight of stairs. A hot-rodded classic. A man’s machine, ar ar ar!

Back to the grind. The weekend’s over, and it’s time to think about work. Have a wonderful week, check the news sources I cited Saturday if you want, and check back in here a few times while you’re at it, won’t you?

News analysis

Short takes. Yesterday was a newsworthy day in technology, and I’m sure there’s going to be a ton of misinformation about it eminating from both coasts, so we might as well set the record straight.
Poor quality control drives IBM from the hard drive business! Yeah, whatever. IBM makes one questionable model (and many GXP failures sounded more like power supply failures than hard drive failures), and suddenly everything they’ve ever made is crap. Guess what? Seven years ago you couldn’t give me a Seagate drive, because the drives they were making back then were so slow and unreliable. Maxtors were worse–and my boss at the time, who has a very long memory, nearly disciplined me a couple of years ago for specifying a Maxtor drive in an upgrade. But he’s a reasonable man and saw that the drive held up and performed well. Western Digital has been so hit and miss I still don’t want to buy any of their drives. Though their drives started to look better after they licensed some technology from… Old Big Black and Blue.

And the truth about GXPs: Regardless of how true the quality control allegations are, the drives themselves are the most innovative and advanced IDE devices ever commercially marketed. The platters are made using different materials and processes than conventional discs, which was supposed to make them more reliable. Expect that technology to come of age in a generation or two. The drives even include SCSI-like command queueing (the newest version of Linux’s hdparm allows you to turn this feature on; I have no idea if Windows switches it on by default). The successor to the 60GXP is going to be worth a second and a third look.

Wanna know what’s really going on? Hard drives aren’t very profitable. IBM has a history of spinning off questionable divisions to see if they can survive as smaller, more independent entities. The most famous recent example of this is Lexmark. That’s what’s going on here. IBM and Hitachi spin off and merge their storage divisions, and each company takes a stake in it. If the company mops up the floor with the competition, IBM and Hitachi make lots of money. If the company continues to bleed cash, IBM and Hitachi get nice tax write-offs. Either way, the shareholders are happy.

A number of years ago, IBM was a large producer of memory chips as well. In fact, you can open up a Mac manufactured in the mid-1990s, and chances are you’ll find an IBM-manufactured PowerPC CPU, one or more IBM-manufactured DIMMs, and an IBM SCSI hard drive. Making memory had its ups and downs, and during one of the many downturns in the 90s, IBM got out of the business. There was a time when Intel and AMD were in that business too (I have some old AMD DRAM chips on an expansion card somewhere, and I’ve seen Intel DRAMs but I don’t know if I’ve ever owned any).

This news is a little bit surprising, but hardly shocking. IBM’s making tons of money selling software and services, they’re not making money selling hard drives, and they’ve got a new CEO and nervous investors. This is a way for them to hedge their bets.

And you can expect them to possibly start getting more aggressive about marketing their technologies to other drive manufacturers as well now. Seagate, Maxtor, Western Digital, Fujitsu and Samsung have just changed from competitors into potential customers. Expect disk performance to increase and price to continue to decrease as a result.

How to gauge hard drive reliability. This isn’t exactly news but it seems very relevant. Professional writers don’t see a lot of drives. They can recommend based on their own experience, but their recent experience is going to be limited to a few dozen drives. Message boards are very hit and miss. You have no way of knowing whether it’s a book author hiding behind that handle or a clueless 12-year-old kid. Find an experienced technician who’s still practicing as a technician (I’m not a very good example; at this stage of my career I no longer deal with large numbers of desktop systems–I deal with a handful of servers and my own desktop machine and that’s it) and ask what hard drives they’ve seen fail. When I was doing desktop support regularly, I could tell you almost the exact number of drives I’d seen fail in the past year, and I could tell you the brands. I’d prefer to talk to someone who fixes computers for a large company rather than a computer store tech (since his employer is in the business of selling things, he’s under pressure to recommend what’s in stock), but I’ll still trust a computer store tech over some anonymous user on Usenet or a message board, as well as over a published author. Myself included.

AMD withdraws from the consumer market! AMD mentioned in a conference call yesterday that it plans to discontinue the Duron processor line this year. It makes sense. Fab 25 in Austin is being re-tooled to make flash memory, leaving the Duron without a home. But beyond that, AMD’s new 64-bit Hammer chip is going to hit the market later this year. So they can sell a slightly crippled K7 core as their low-end chip, or they can make their high-end K7 core into the low-end chip and sell the Hammer as a high-end chip. This strategy makes more sense. Clock for clock, the Athlon is still a better chip than the P4. Hammer scales better and performs better. So AMD can pit the Athlon against the Celeron and give P4 performance at a Celeron price, and the Hammer against the P4, which will give P4 clock rates and deliver better performance for 32-bit apps, along with a 64-bit future. There’s not much room in that strategy for the Duron. AMD would rather cede the $35 CPU business to VIA.

Look for the Hammer to gain widespread use in the Linux server market, especially among smaller companies. The Athlon already has an audience there (in spite of some pundits calling AMD-based systems “toys,” you see far more ads for AMD-based servers in Linux Journal than you see for Intel boxes), but the Hammer will become the poor man’s Alpha.

Some video editing tips from the school of hard knocks

Hi. My name is Dave. I attended the best journalism school there is for broadcasting.
I paid almost zero attention in the television units, because, well, I hate TV. So I learned nothing that would be of use to me at this stage of life. Aside from how to go get a story and ask questions and gather footage, which is pretty much the same no matter what your medium is, whether it’s a newspaper, a magazine, a video documentary, a Web page, or a research paper. We all have a sense for what’s interesting and relevant. Develop that, and you can tell a story in any medium.

OK, that’s all I know about video editing theory. That was easy, wasn’t it? Aren’t you glad you didn’t pay $200 per credit hour for it?

Now let’s get practical. This is going to be most practical if you have equipment similar to mine. If you don’t, hopefully it’ll tell you something useful.

Here’s what I use to make magic happen on the boob tube:

IBM-compatible PC

  • AMD Duron 700 MHz CPU
  • 384 MB PC133 memory
  • Adaptec 19160 Ultra160 SCSI card
  • Maxtor Atlas III 10,000 RPM 18GB Ultra160 SCSI hard drive
  • Quantum Fireball 15 GB UDMA66 hard drive
  • Plextor UltraPlex 40max SCSI CD-ROM for audio capture
  • Pinnacle DV500 Plus editing/capture card
    JVC GR-DVL100 miniDV camcorder

    You can capture video with Adobe Premiere, but there’s a lot of overhead involved. It’s better to use the bundled Pinnacle DVTools app. I was in the habit of capturing with DVTools, then using the freeware VirtualDub (do a Google search) to convert those files to Indeo 5.1 format to save space. I saved a lot of disk space, but I wasted a lot of time. A PC equipped with a DV500 can do most things to DV-formatted files in realtime, whereas my setup has to render other file formats. You’re looking at 2-4 frames per second to do the initial conversion, and then Premiere renders them at a similar rate. Get monster hard drives so you can hold those larger DV files, and you’ll save lots of render time. You’ll also completely eliminate generation loss, which is the whole point of digital video in the first place, although the generation loss from rendering DV to Indeo back to DV isn’t something anyone’s likely to notice. Realistically, you’ll lose more as the signal is being transmitted from the camera to your screen than you will from three generations of conversion.

    I find playback off my UDMA drive less than adequate. It doesn’t drop frames but the video has too many artifacts. It’s fine as a holding bin for clips I might use, or for editing, but before I do my final output to tape, I move the files over to my high-speed SCSI drive.

    On some platforms, you really want to have your OS and apps on one drive, your video on another, and your audio on yet another. I find the Atlas III is more than fast enough to hold all three and get away with it. If I had to do it all again though, I’d probably still get the Atlas, and I’d get another very large but slower SCSI drive.

    When you’re editing with Premiere, you may find your hard drives fill up at an alarming rate. Before starting a project, search for directories called Adobe Premiere Preview Files and clear their contents. I found a missing 4 gigs that way. Also defragment your drives before starting on a project. You want big, contiguous blocks to hold your huge video files.

    You can’t just plug a camcorder into your firewire port and go to File, Export Timeline, Print to Tape and expect it to work. You have to put your camcorder into VTR mode first, an operation that isn’t always obvious from looking at the camera. Check your manual. On my DVL100, turning the mode knob to Play does the trick.

    Also, you can’t plug a camcorder in hot. At least not any of the JVC cameras I’ve tried. The computer will see them, but it won’t be able to control them. Shut down the computer and turn off the camera, plug in, then power both up, and they’re happy.

    Although Pinnacle’s DVTools can export DV to tape, it’s faster to do it from Premiere. It takes Premiere forever to export a video to disk in DV format, and then of course the export to tape happens in real-time. Doing it from Premiere in the first place cuts the time required by 3/4.

    And here’s a principle I learned at a seminar earlier this year at Ginghamsburg United Methodist Church in Dayton, OH: There’s no such thing as junk video. Ginghamsburg’s video director actually advocates leaving your camera on at all times, even when you’re moving the camera, because a lot of times you’ll shoot good video unintentionally. I don’t have the battery life to be able to leave it on all the time, but I leave it on more than I normally would. I found in my last project, where I was filming fire, that the smoke and heat waves coming off the fire confused my camera’s autofocus, so the camera was trying to find what it was supposed to focus on, which futher accentuated the heat waves and produced a really haunting effect. People asked me how I did it, what it was, where I shot it. It was pretty anticlimatic, I’m sure, to hear it was just a tree off in the distance. And I got the shot strictly because I wasn’t paying attention. The fire had died down and I hadn’t noticed.

    All cameras have particular nuances. That scene probably would have looked different with another camera. I discovered later how to confuse my autofocus when I was trying to set the camera up for playback. The only way you’ll learn your camera’s nuances is to play with it. And be sure to try things with it you wouldn’t normally try. I discovered the autofocus thing when the camera was pointed at my desk at extremely close range. Believe me, there’s absolutely nothing compelling about that desk. It’s 18-year-old particle board.

    And a principle I learned myself: There are a couple of ways I find my best footage. One way is just to fast-forward through it and watch. If it’s compelling at 20x normal speed with fuzzy detail, it’s likely to be compelling when played the way it was shot. The other thing I’ll do is play the footage in my monitor, and watch out of my peripheral vision while I do something else. If it’s good enough to grab my attention, chances are it’s worth using. It’s a brutal way to edit, but if you have to condense several hours’ worth of footage into three minutes, it’s the fastest way I’ve found.

    Full disclosure and integrity

    I feel like I owe it to my readers to disclose a few things, due to the events of recent weeks raising a few questions in some people’s minds.

    Read more

    How Linux could own the education market

    How Linux could own the education market. I spent some time yesterday evening working on computers. They were contrasts to the extreme: One, a brand-spankin’ new 1 GHz AMD Duron system with 512MB of RAM and 80 GB of 7200-rpm storage (IDE, unfortunately–but for $800, what do you want?). The other was an elderly AST 486SX/25 running Windows 3.1 belonging to a local teacher who goes to my church.
    She teaches kindergarten, and the AST used to be her home computer. When she bought a Compaq Presario a couple of years ago, she took the AST to school. It’s more useful there than in her basement, and there’d be no computer in her classroom if it weren’t for that.

    I don’t understand why that is. As much as my sister jokes about it, we don’t exactly live in the ghetto. The school district has money, but it isn’t spending it on computers. Whether that’s a good or bad thing depends on your point of view. The majority of people living in Oakville probably own home computers, so this probably isn’t contributing to the technology gap. But I wonder sometimes how things might have been if I’d been exposed to computers a few years earlier.

    I was shocked how much I remembered about Windows 3.1. And I was able to figure out how to get her CD-ROM drive to play music CDs. Don’t ask me how; this was the first I’d messed with Windows 3.1 since 1994 and I’d prefer it stay that way–I was so impressed by Windows 3.1 that I’m one of the 12 people who actually went out and paid money for OS/2. I own actual, retail-box copies of OS/2 2.1, 3.0, and 4.0. And I remember distinctly thinking that her computer has enough memory to run OS/2 at least as well as it runs Windows 3.1…

    I also remember distinctly thinking that my employer pays someone $15 a pound to haul better computers than hers away several times a year. We regard 486s as junk; low-end Pentiums may also go out, depending on whether the right person finds out about them beforehand. Usually they work just fine–the problem isn’t the computers, it’s people trying to run Internet Exploiter 6 and Office 2000 on them. They’d run Windows 95 and Office 95 perfectly fine.

    But a lot of times we can’t give these old computers away because the licenses for the software that originally came with them are long gone. Old computers are useless without software, so no one would want them anyway.

    Now, let me tell you something about kids. Kids don’t care much about the computers they use. As long as there’s software on them, they’ll use them. When I was a kid 20 years ago, I used Radio Shack TRS-80 computers at school. The next year, my family moved, and my new school had Commodore 64s. I couldn’t tell much difference. My next-door neighbor had a Radio Shack Color Computer. They were computers. The Commodores had better graphics, but from a usability standpoint, the biggest difference was where the cartridge slot was so you could change programs. Later on I took a summer class at the local junior college, learning about Apple IIs and IBM PCs. I adjusted smoothly. So did all the other kids in the class. Software was software.

    Kids don’t care if the computer they’re using runs Windows or Mac OS or Linux. All they care about is whether there are cool programs to run.

    So, businesses throw useless computers away, or they give useless computers to schools so they don’t have to pay someone to haul them away. And schools don’t generally know what to do with obsolete computers that lack software.

    Linux won’t run fabulously on old 486s, but Debian with a lightweight window manager like IceWM will run OK. (Let’s face it, Windows 3.1 doesn’t run fabulously on them either–it crashes if you breathe wrong.) I know of a project to clone Oregon Trail on Linux. Great start. How about Sea Route to India? I remember playing that on C-64s at school. It may have been a type-in out of a magazine–I don’t remember where exactly it came from. In these violent times, Artillery might be too controversial, but it taught us early on about angles and forces. Artillery was an ancestor to games like Scorched Earth, but without the heavy-duty nukes. Close wasn’t good enough to win in Artillery. You had to be exact. And no blowing up the mountains between you and your opponents either. You had to figure out how to get over them.

    But what about doing homework? By the time I was in the sixth grade, they were teaching us how to use word processors and databases and spreadsheets. AbiWord is a fabulous lightweight word processor. It gives you fonts and spell-checking and good page formatting. (I learned word processing on Bank Street Writer. AbiWord is a far, far cry from that. Frankly, I’d rather write a paper with vi than with Bank Street Writer.) Besides being feature-rich, AbiWord’s been lightning fast on every computer I’ve tried it on. Gnumeric is a nice, fast, capable spreadsheet. I don’t know of a free-form database, but I haven’t looked for one lately either. (I don’t think we need to be trying to teach our 6th graders SQL.)

    But what about for younger kids? I remember a program called The Factory. The object was you combined chemicals to make monsters. Different chemicals made different monsters. I seem to remember you played around to see what chemicals would make which heads and torsos and arms. Then the computer started showing you monsters and you had to figure out what chemicals to give it to match them. I also remember a program called Snooper Troops. I don’t remember much else about it, other than it was a mystery and you went around looking for clues, and one of my classmates accidentally formatted the disk one day before any of us had managed to solve it. We couldn’t get the disk replaced, because it was out of print.

    And Spinnaker had all sorts of simple titles for younger kids that let them tell stories and other stuff. It seemed cool at the time. But that was almost 20 years ago, so about all I remember was that sailboat logo and some corny theme music.

    The other thing about those old days was that the majority of these programs were written in Basic. An ambitious teacher could modify them, to make them easier or harder, or improve the graphics a little. As we got older and learned to program, some of us would try our hand at making changes. You can’t do that anymore with Windows or Macintosh educational titles. Open source can bring all that back too, provided the programs are written in languages like Perl or Python. And it can give cash-strapped schools a way to get computers where kids can use them.

    Now I’m wondering what it would take to write something like The Factory in Python…

    Building an inexpensive PC

    Building an inexpensive PC. An old out-of-town friend I don’t hear from often called the other day. He wants to buy a computer and dabble in audio production. Some local guy quoted him $2,500 to build a system. He read me the specs, and all I can say is this guy had better be using Lian-Li cases and PC Power and Cooling power supplies (or I guess I’d settle for high-end Enermax), but I doubt it. I do know he’s using a top-end Athlon XP processor and an Abit motherboard, but he wasn’t pairing it with DDR, so he was totally killing the chip’s performance anyway. For two and a half grand, you’d better be getting DDR, and lots of it.
    “You need a 32-meg video card because when the computer is drawing the waveforms, it has to be dead-on. You can’t afford for it to lag,” he said.

    I got news for this idiot. When it comes to drawing simple line graphics like a waveform, the ancient ET4000 chipset in my 486 will have no problem keeping up with it. Even if you use a fill to make the waveform look pretty. And that video “card” (it was integrated into my motherboard) had 512K (K, as in kilobytes) of memory. Although anyone who wasn’t born yesterday knows that the amount of memory on a video card has nothing to do with its speed, outside of the realm of 3D gaming. Knowing kids these days, some of them may even know that at birth.

    In other words, the guy’s a moron. Either he knows nothing about computers, or he knows how to skimp but he’s not a convincing salesman.

    I know for a fact that audio editing doesn’t need a supercomputer. If I can do video editing on a 700 MHz Duron, I know a Duron CPU, paired with a decent supporting cast, is going to be adequate for multitrack audio recording and editing as well.

    I asked him how much he could spend. He told me $800, not counting a monitor and the editing card/package. I squirmed. I spent way too much time shopping around. Here’s what I came up with (not counting the operating system):

    1 GHz AMD Duron
    FIC AZ11 motherboard (on closeout, so it was cheap)
    ATI Xpert 2000 Pro AGP video card (with a blazing 32 megs–ahem)
    Maxtor D740 20-gig 7200 RPM IDE hard drive
    Maxtor D740 60-gig 7200 RPM IDE hard drive
    512 MB Crucial PC133 SDRAM
    Mitsumi 3.5″ floppy drive
    Sony 52X ATAPI CD-ROM
    Plextor Plexwriter 12/10/32A CD-RW
    Enermax A1QX-6 mid-tower case with Enermax 300W power supply
    US Robotics 2977 controller-based PCI modem
    Closeout Dell-branded Logitech mouse and Dell-branded keyboard

    I told him there are two brands of CD-RW I trust, especially for audio work: re-labeled Plextor, and Plextor. In all honesty, I would have much prefered to build an all-SCSI system, but for this kind of budget, that’s impossible. All-SCSI would have given much better disk performance, and it would have given access to the Plextor UltraPlex 40max CD-ROM, which is the only drive I trust for extracting digital audio. I imagine he’ll be doing a little of that. The Sony drive will do a decent job, but I’ve seen the Plextor work miracles. But the Plextor is $100, while the Sony cost around $25. I’ll definitely take a Sony over a Cyberdrive or Lite-On (which probably would have run $19).

    I couldn’t get PC Power and Cooling on this budget. The price on the Enermax combo was good (less than a PCP&C 300W power supply alone) and the quality is respectable. The Japanese steel is a little lighter gauge than I prefer, but I didn’t cut myself on it. The fit is good, and it’s a good-looking case. Not show-off good like Lian-Li, but better-looking than most of the stuff in its price range. The cobalt blue trim compliments the lettering on the Plextor drive.

    Finding a place to put the hard drives is a bit of a challenge. Modern 7200-rpm drives don’t run very hot, but I still don’t want them running directly above one another. I finally settled on putting a drive in the lowest 3.5″ bay and the other in the lowest 5.25″ bay.

    The USR 2977 is the secret weapon here. A $20 no-name Winmodem would be a royal pain to set up, and chew up lots of CPU cycles. The 2977 was under $50 and won’t be a load on the system. That’s a speed trick I’m sure that local guy doesn’t know.

    The 1 GHz Duron is still overkill, but that’s the slowest chip I could talk him into. I was starting to get annoyed with him. I don’t just know about computer speed, I literally wrote the book on computer speed, and my friend didn’t know what I was talking about when I said something about a boot floppy. And this year’s hot chip is next year’s budget chip, so if the budget chip is enough to get the job done this year, you can go buy more CPU next year. Besides, there was no way to cram any more CPU power into this tiny budget, other than sacrificing disk speed, which is more important unless he’s running Windows XP, which he won’t be. (I’ll drive 200 miles and take his computer away from him if he does.)

    As for the two drives, any time you do multimedia work, you want to make sure your application and swap file are located on one drive, and the audio you’re working with is on a second drive. I probably could have gotten by with a 5400-rpm drive to hold the OS, but there isn’t much price difference between a 5400 RPM 20-gig drive and a 7200.

    As for how the system runs, I’m sure it’ll smoke. The motherboard isn’t here yet. In all fairness, I ordered it Monday and it was shipped UPS Ground from California on Tuesday.

    I ordered the motherboard from Just Deals and the memory came from Crucial. The rest of the stuff came from Directron and New Egg, who as always gave me great prices and fast delivery.

    Much ado about nothing and other stuff

    Much ado about nothing. The most recent report I read indicates that AOL/Time Warner and Red Hat are talking, but not about an acquisition. Sanity has entered the building…
    Good thing User Friendly got a chance to get its two cents’ worth in. I got a couple bucks’ worth of laughter from it.
    Much ado about something. On Sunday, Gentoo Linux developer Daniel Robbins announced that an obscure AMD Athlon bug slipped past Linux kernel developers, resulting in serious problems with Athlon- and Duron-based systems with AGP cards. This confirms some suspicions I’ve heard–one of the Linux mailing lists I subscribe to occasionally has rumblings about obscure and difficult-to-track-down Athlon problems.

    The result was that Gentoo’s site was slashdotted into oblivion for a while, but hopefully it also resulted in some extra exposure for the distribution. Gentoo is another source-based distro. Lately I’ve been resigned to just using Debian to build my Linux boxes, but I’m still awfully fond of the idea of compiling your own stuff. As CPUs get faster and faster, I expect that to become more commonplace.

    But I digress. The bug involves the CPU’s paging function. Older x86 CPUs used 4K pages. Starting with the Pentium, CPUs started allowing 4MB pages. But a bug in the Athlon’s implementation of this extended paging causes memory corruption when used in conjunction with an AGP cards.
    Alan Cox is working on a workaround. I’m a bit surprised a patch isn’t already out there.

    CPU bugs are discovered all the time, but it’s fairly rare for them to be serious. If you ever run across a Pentium-60 or Pentium-66 system, boot up Linux on it sometime and run the command dmesg. You’ll find workarounds for at least two serious bugs. A TI engineer named Robert Collins gained a fair bit of notoriety in the last decade by researching, collecting, and investigating CPU bugs. Part of it was probably due to his irreverant attitude towards Intel. (As you can see from this Wayback machine entry.) Sadly, I can’t find the story on the site anymore, since he was bought out by Dr. Dobb’s.
    Catching up. I haven’t been making my rounds lately. The reason why is fairly obvious. I used my day off yesterday to have lunch with someone from my small group, then when I got home I read the e-mail I absolutely had to read, responded to those that absolutely had to get responses, answered a couple of voice messages, wrote and sent out a couple of other messages, looked up, and it was 5 p.m.

    “Alright God,” I muttered. “I just gave the day to Your people. Time to go spend some time with You.” So I whipped out my handy-dandy Today’s Light Bible and read about Moses. Seemed appropriate. The inadequacy and jumping the gun and making excuses, that is. The Biblical “superheroes” were human just like us, and the book doesn’t gloss over that. Today’s Light is designed to divide the Bible into pieces so you can read the whole thing in two years. I can’t decide if I want to get through it in a year or in six months. A few years ago I read it in its entirety in four months, but that pace is a bit much. If you’re willing to spend as much time reading the Bible every day as the average person does watching TV, you can make it through in a few months. But it’s not exactly light reading, and I’m not sure I recommend that pace. If you’re willing to dedicate that kind of time to Bible study you’re probably better served by learning Greek so you can read the New Testament in the original. Then if you’ve still got your sanity you can think about tackling Hebrew.

    I finally got around to reading Charlie Sebold’s entries for the last few days. One especially poignant observation: “I continue to be surprised at how much I remember about computers, and how much I forget about everything else (including far more important things).”

    I sure can relate. I wish I could trade everything I remember about IBM PS/2s and Microchannel for something more useful. But I remember goofy baseball statistics too–I can recite the starting lineup and pitching rotation of the 1980 Kansas City Royals (I’ll spare you). But I can’t tell you the names of all seven people I met Sunday night.

    Why I run Debian, and some Debian tricks

    After Dan Bowman pointed out another blogger’s recent difficulties installing Evolution on Mandrake 8.1, I had little comment other than, “That wouldn’t be an issue if you’re running Debian.” Well, I think I said a few other things because I tend to be wordy, but that was the only important thing I had to say.Debian is one of the more difficult Linux distributions to install (you have to know what hardware is in your machine–it doesn’t nicely autodetect everything like Mandrake), but it’s far and away the easiest distribution to maintain. We’ll get back to that in a minute.

    Released versions of Debian tend to be ultra-conservative. The current version, Debian 2.2r5, still uses the 2.2.19 kernel, for one thing (and that’s a fairly recent change). The current 2.2 kernel is either 2.2.39 or 2.2.40. All packages (at least all the ones anyone uses anymore) are constantly checked and maintained and patched. In theory, the current stable Debian release ought to be the most bullet-proof Linux available.

    Besides Debian Stable, there’s also Debian Testing and Debian Unstable. Debian Unstable is pretty cutting-edge, but I’ve had no problems running it. I just keep up with the current patches and the system runs fine. I know people who run production servers on Testing and Unstable and get away with it.

    If you want the latest and greatest stuff, after you install Debian, edit the file /etc/apt/sources.list and uncomment the ftp and http lines. Next, copy and paste those lines, then edit the “stable” to read “unstable.” (Or if you’re more conservative, edit it to read “testing.”) Be aware that occasionally you’ll run into problems running packages from unstable under stable. I ran Evolution, Galeon, Dillo, Sylpheed, and a multitude of other packages from unstable just fine, but when I installed AbiWord (a really nice, lean, mean, superfast word processor, by the way) it failed to run right. I upgraded to unstable, and then it worked perfectly.

    OK, let’s talk some tricks.

    Want to upgrade your distribution after a new version comes out, or upgrade from stable to testing or unstable? Easy. Type this:

    apt-get update ; apt-get dist-upgrade

    Then Debian will go download the pieces it needs to upgrade itself.

    Want to keep your system up to date with any little changes (security patches, whatever) that may have happened recently? Type this:

    apt-get update ; apt-get upgrade

    So Debian lets you keep a current and presumably secure installation very easily. If you run that line regularly, you can rest assured that if your system is insecure, it’s not Debian’s fault but rather a misconfiguration on your part.

    Want to try out some new piece of software? Forget having to hunt down RPMs or keep track of your distribution CD. Check availability with this command sequence:

    apt-get update ; apt-cache pkgnames [name of program]

    Found it? Excellent. Install it with this command:

    apt-get install [name of program]

    And if it wasn’t as great as you heard, you can uninstall it with this command:

    apt-get remove [name of program]

    System acting goofy? This’ll cure much that ails you:

    apt-get clean ; apt-get update ; apt-get check

    So from a system administration standpoint, Debian is great. Debian developers often try to justify the difficulty of installation by saying you only have to run it once, and to a degree, they’re right.

    Compiling a kernel under Debian

    I found a nice document detailing customizing your kernel under Debian. The standard method works under Debian, of course, but it’s cleaner to do it within the confines of your package manager–then it doesn’t go stomping on files you modified. Plus it’s actually a little easier to let Debian handle some of the details.

    Here are the notes I took while using the document.

    With additions:
    Use kernel-source-2.4.17

    export CFLAGS=”-O3 -mcpu=i686 -march=i386 -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -malign-functions=4″
    export CXXFLAGS=”-O3 -mcpu=i686 -march=i386 -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -malign-functions=4″

    Using -march=i686 is known to cause instability and not improve performance by any noticeable amount. The kernel mostly ignores these settings but I set them anyway. You can alternatively set them in the file /etc/profile. If you ever find yourself compiling apps from source, you want these options set so they’ll perform optimally.

    A correction:
    Debian tar doesn’t seem to support the -I switch for bzip2. So I extracted the archive with the following:
    bunzip2 -k -c kernel-source-2.4.17.tar.bz2 | tar -xf –

    the -k switch tells bzip2 to keep the original file intact, while -c tells it to extract to stdout. The | redirects stdout to the specified program, in this case, tar. -xf tells it to extract the file.

    I got an error on make xconfig:

    make: wish: command not found.

    So I headed off to www.debian.org/distrib/packages. At the bottom of the page, there’s a form where you can type a filename and it’ll tell you what package it comes from. Type in “wish,” hit enter, and I get a long list, including /usr/bin/wish8.3 in a package named libs/tk8.3. Sounds promising. So I do an apt-get install tk8.3 and I’m in business. Type make xconfig again, and we’re set. This page is also a really good way to hunt down packages if you don’t know exactly how Debian named it.

    Options I chose for kernel compilation:

    Code maturity level options: prompt for development and/or incomplete code/drivers. I answered Yes, so I’d get modern filesystem support.
    Loadable module support: I answered yes to all. I’ve read that disabling modules and compiling everything directly into the kernel can improve performance but I’m wary of that. If the kernel’s too big, the system won’t boot. And the idea of modules is to keep only what you need in memory. So I suppose there are instances where a no-modules kernel could increase performance, but there are certainly instances where it would hurt. I chose to be conservative.
    Processor type and features: I changed a couple of the defaults. Double-check the processor family option; in my experience it’s usually but not always correct. Enable MTRR support unless you’re using a 486, Pentium, or AMD K5 CPU. All other reasonably modern CPUs, including AMD, Cyrix, Intel, and WinChip, support MTRRs for increased GUI performance. Since the PC I’m using only has one CPU, I disable SMP support. Then I enable local APIC and IO-APIC support on uniprocessors.
    General setup: I accepted the defaults, because aggressive use of APM makes me really nervous. Under Windows, APM always does me more harm than good.
    MTD: Since I don’t use any flash memory devices, I accepted the defaults of No.
    Parallel port support: Curiously, this was disabled by default. This PC has a parallel port but I only use network printers, so I left it disabled to save a little memory.
    Plug and play configuration: I said no to ISA plug and play support, since this machine is a laptop and won’t have any ISA PnP cards. On modern PCs that have no ISA slots, say N.
    Block devices: The defaults are usually sufficient, but some configurations need RAM disk support and initrd support turned on. If you’re going to mess around with ISO images, you’ll probably want to turn on loopback device support.
    Multi-device support: I’ve never seen a laptop with RAID, so the default of disabling it all works great for me.
    Networking options: The defaults are fine for most uses. If you’re going to make a router or firewall out of your PC, enable Netfilter.
    Telephony support: I disabled it.
    ATA/IDE/MFM/RLL support: Disable it if you have an all-SCSI system. I don’t. Turn on SCSI emulation support if you use a CD-R or CD-RW. Under IDE chipset support/bugfixes, disable the chipsets your PC doesn’t have. This laptop has an Intel chipset, so all I had enabled were Generic PCI IDE chipset support, Sharing PCI IDE Interrupts support, Generic PCI bus-master support, Use PCI DMA by default when available, Intel PIIXn chipset support, PIIXn tuning support.
    SCSI support: I have an all-IDE system (unfortunately), so I disabled it. Note that SCSI emulation for a CD-R counts as a SCSI device, as does a parallel port Zip drive. Since I have neither, I’m safe disabling it to save some memory and speed up boot time slightly.
    IEEE 1394 (Firewire support): I disabled it since I have no Firewire ports.
    I2O device support: I disabled it.
    Network device support: This can be tricky. I turned off SLIP and PPP since I don’t use them. You may need PPP. I turned off ARCnet support, which you’ll probably do as well since ARCnet is very rare. I have a 100-megabit 3Com 3c556 NIC in this laptop, so I went into Ethernet 10 or 100 Mbit, drilled down to 3COM cards, and said yes to 3c590/3c900 series, since that’s the driver the 3c556 uses. I turned off the others. I like to compile support for the machine’s NIC straight into the kernel when I can, since it speeds up network configuration at boot time. On servers, I’ve been known to compile support for every type of NIC I own into the kernel, so that if I ever have to change NICs, it’ll come back up automatically without any configuration from me. I turned off wireless, token-ring, PCMCIA, ATM, amateur radio, infrared, and ISDN support.
    Old CD-ROM drivers: You can probably turn this off, unless you know you have an old proprietary 1X or 2X CD-ROM drive. These were the drives that generally plugged straight into an ISA sound card, and they were very common on 486s. I sold tons of these things in 1994; I’m pretty sure that by the time I was selling PCs again in the summer of 1995, everything I was selling had an IDE drive in it.
    Input core support: I don’t use USB input devices, so I turned it off.
    Character devices: Near the bottom, after Ftape support, there are options for specific chipsets. You can find out what chipset you have by typing the command lspci in a shell. (You have to be root to do this–use the su command if you’re logged in as yourself, as you should be.) This laptop has an Intel 440BX chipset, so I turned off the VIA, AMD, SiS and ALI support.
    Multimedia devices: Disable video for Linux unless you have a capture card. Most will disable Radio adapters as well.
    File systems: I enable Ext3 and ReiserFS, along with DOS FAT and VFAT (as modules), ISO 9660 and Joliet, NTFS read-only (as module). Under network file systems, I enable SMB since I (unfortunately) work in Windows environments. I disable NFS since we have no NFS servers.
    Console drivers: The defaults work for me.
    Sound: Since I have onboard sound, I enable sound support and pick my chipset, in this case, ESS Maestro3. I disable all others.
    USB support: I have USB ports but don’t use them. I left it enabled just in case, but I’m not sure why.
    Bluetooth: I don’t use it, so I disabled it.
    Kernel Hacking: I disabled Kernel debugging, the default.
    Whew! Hit Save and Exit. Exit X to save some system resources while compiling and installing.

    The end result was an up-to-date kernel (2.4.17) that was about 200K smaller than the stock 2.2.19 kernel and boots to a login prompt in 18 seconds flat, as opposed to 45 seconds before. Much of the improvement is due to the 3c590 driver loading faster as part of the kernel rather than as a module, and the kernel no longer searching for phantom SCSI devices. But Charlie Sebold told me it’s his experience that recent 2.4.x kernels boot a lot faster than earlier kernels.

    It’s not perfect–I don’t have sound completely working yet–but I found some clues. I’m not overly concerned about sound support though. The system beeps at me when I have mail, and for work purposes, that’s all the sound I need. I don’t see any point in turning my PC into a multimedia tribute to Billy Joel or Star Wars or Quake III.