while true; do printf $RANDOM; done # Poor man's Matrix screensaver...

<< Previous Page :: Next Page >>

Public Service Announcement To Those Selling Computers On Craigslist

Date/Time Permalink: 07/05/09 04:28:56 am
Category: Reviews

Hello, I am a geek. I am your market.

Look around. See anybody else with me? It's just me. I can say this because business users buy their computers through other businesses. And the non-geek home users only feel secure buying their computer the same place you did.

It's just me. And I'm exploiting my position on purpose.

I am, in fact, the most arrogant, condescending, self-important, insufferable computer geek you have ever met. I will dispense with the list of my credentials - suffice it to say that as far as you're concerned or will ever be able to comprehend, I make lightning shoot out of my fingers, have scrolling program code in my eyeballs, and can tell you what Google dreams about in its sleep.

My sole interest in your machine is to wipe its hard drive, exorcise the Demons of Microsoft from it, install GNU/Linux or BSD on it (or something else you've never heard of) and add it to my growing hacker den of a home network.

Even without the building-up-my-power part, scraping consumer garbage off of every computer I can get my hands on and installing Linux on it is something I like to do anyway, even if I'm not going to use said computer. It's how I mark my territory.

Here's a few tips on getting me interested in your dusty old stuff:

(1) No used computer, unless it's only movable by forklift, is worth more than $200. I don't care if you bought it today. It's used now, and I could build one just like it from parts for $200. Therefore, to make your complete system as attractive to me as one I could build from brand-new parts, it has to be priced at $199 or less. The cash savings to me are a side-benefit of not having to order parts and wait for them to ship, plus labor.

(2) No used mobile device is worth more than $50. Laptops, phones, PDAs, media players, etc. That's because these devices are not (generally) designed to be disassembled and reused for interchangeable parts, so either it's useful as a whole to me or it's trash. Most mobiles lack the raw power that I need.

(3) Monitors, by themselves, are worth: Nothing! El zippo! Nada! Corporations give monitors away by the dumpster-full! Better monitors than what you have are what those tall office buildings downtown have to pay $20 each to dispose of, because of the environmental impact.

(4) Other parts, by themselves: Usually not worth much. Keyboard, mouse, speakers, external drives: $0. Other peripherals might be worth a $20.

(5) Any - ANY ANY ANY - computer or computer-related electronic equipment which is older than fifteen years is worth ZERO. The exception is the rare collector's item (NExT cubes, Amigas, BeBoxes, some PDP/Vaxen) which are far too rare for finding on Craigslist, anyway.

(6) I don't give a thin damn what software you have installed on it. That's all going to become blank disk sectors five seconds after I get my hands on it. I hope you made your final peace with your precious Bonzi Buddy, because it's going to the Great Bit Bucket in the Sky.

(7) Brands that are NOT hot items: eMachines. Compaqs. Gateways. When I see brand names like this, I think about welfare checks and trailer parks. It is not something to brag about to say that your computer is an eMachines. eMachines are the kind of thing they give away in a box of cereal.

I say all this because... Here's some quotes from a day last week:

* "Apple Macintosh Plus, External Drive, Keyboard, Mouse + - $90" - From what, 1987? Its only value is nostalgic entertainment, which is worth driving over to pick up for free if you live really close.
* "Laptop Battery - $10" - That's it, the battery? Did you find it on the ground?
* "Great Gift for Dad WD Elements External Hard Drive 750 GB NEW - $100" - If my kid blew a Franklin buying me a tiny piece of a computer, I'd be stricken with grief for having raised such a fool.
* "Apple Macbook- Barely Used! - $900" - I just checked Google and found one for $609 from GainSaver - BRAND NEW AND WITH BETTER SPECS THAN THE ONE IN THE AD! And speaking of specs, this ad had "McCafee Virus Scan [sic]"... I'm wondering if this person even knows for a fact what they have. Maybe it reboots when you turn it upside down and shake it.

What's gotten into everybody all of a sudden?

This never used to be a problem. I used to find second-hand machines on Craigslist, get them, rehabilitate them in the name of Truth, Justice, and the Linux Way, and sleep happy knowing I saved another space in our overcrowded landfills and helped reduce the collective carbon footprint.

Then the US economy crashed, and, apparently, the new fad is to dumpster-dive and pick through your neighbor's trash, saving every rotten banana peel and moldy cantaloupe rind you find to try to sell on Craigslist or eBay. Anything free, even dirt, gets snatched up and taken down, reappearing minutes later with a new ad: "Top Quality Fill Dirt - $50/pound!!!"

I'm picturing a late-night infomercial driving this. Somewhere, there's a pitch called something like "$ecret 2 Riche$", charging suckers forty beans a pop to find out how they can "turn trash into treasure" - make up to $500,000/week! Hoarding - it used to be a mental illness, but now it's an exciting new business plan! It's that buzzard who does those "Video Professor" computer-training DVDs, isn't it?

Anyway, sorry, no, you cannot get rich selling trash. Scavengers are a non-exploitable demographic. What they do is just give up on reading any ads for a while and go back to dumpster-diving themselves. For further enlightenment, consult the law of Supply and Demand.

high supply low demand

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

Eight Reasons Why Fluxbox Is My Favorite Desktop

Date/Time Permalink: 04/05/09 04:06:31 pm
Category: Reviews

It happened again, this time at Tech Republic. They ask the question "Which Linux desktop would you show to a new user to impress them?" and the answers are limited to 3 versions of KDE, 2 versions of Gnome, 2 variations of Enlightenment... and Fluxbox once again is left lurking in the shadowy anonymous depths of the dreaded option "other".

What the hell does Fluxbox have to DO to get some love around here?

Fluxbox logo

For that matter, what does Window Maker, FVWM, iceWM, and the other diverse Linux-native desktops have to do? You occasionally find somebody who stumbles upon the inconceivable notion that XFCE exists alongside KDE and Gnome, but basically Linux desktops suffer from the same misconception that plagues the rest of technology: binary thinking. There is a maximum of Two (2) choices in any topic, because one brain can't seem to handle the complexity of thinking about more than two. (Microsoft or Apple, Mac or PC, Visual Basic or C++, Democrat or Republican, Coke or Pepsi, God or Devil) Even Linus Torvalds seems to not be aware of anything beyond KDE and Gnome.

Well, bust that. If you haven't tried Fluxbox yet, you don't know what you're missing, and here's why:

#1: FAST!!!

There's a very good reason why Fluxbox is the default desktop in lightweight Linux distros like Damn Small Linux: It is one of the fastest desktops out there. You can't appreciate what a difference this makes until you try the same program on either system. You know when you start Firefox on KDE and you have a few minutes to twiddle your thumbs while the system crunches until it displays Firefox? That doesn't happen on lightweight window managers like Fluxbox. Click - BAM! - it's open. Fluxbox is also ideal for old hardware and new hardware with limited resources, for this reason.

#2: Stylish

Now, point #1 could hold just as well for Blackbox, IceWM, heck, even Ratpoison. But Fluxbox takes the extra step of making the desktop look good. XFCE can look good in a tasteful cute way and KDE always looks good in a flashy, gaudy way, but only the Fluxbox desktop can consistently be described as "sleek and sexy". Fluxbox.org's own screenshots page doesn't even do it justice; check out the shots at DeviantArt, a site which owes its roots to the software skinning community. Box-Look also sports some Fluxbox theme bling.

#3: Simple

With all the complaints you hear out there about Linux being hard to learn, this should be an especially compelling point: you can learn Fluxbox in about a day, period. There's a man page, another man page on creating your own theme, a few text files in your home directory under the '.fluxbox' menu, and that's it. If you want extra features, there's third-party downloads galore. The whole system is set up with the 'plug-in' mentality. It has far fewer features than its competitors, but you can add what you need and not be annoyed by having the features you don't need. The first rule of design is that it is uncluttered, even to having no desktop icons by default.

#4: Easy text file setup

Don't knock the text file method until you've tried it! For example, to make your own menu, you only need to know:

  • System-special commands get square brackets [].
  • Titles for entries get parenthesis ().
  • Programs to be launched get curly brackets {}.
  • System-special commands include [begin] [end] [submenu] [separator]. There's others, but the system includes them by default at the end, and there's no reason to mess with them.
  • You can include program-specific options between the curly-brackets {}. Anything you'd type from a command-line to launch something can go right into the brackets.

An excerpt from my own menu:

      [exec] (xscreensaver) {xscreensaver-demo}
      [exec] (CDplayer)     {gnome-cd}
      [exec] (Totem)        {totem}
      [exec] (pickBG)       {~/code/script/wish/pickBG}
      [exec] (FB_BG.py)     {~/code/python/FB_BG.py}

[submenu] (Office)
      [exec] (Abiword)      {abiword}
      [exec] (Gedit)        {gedit}
      [exec] (Evince)       {evince}
      [exec] (NVU)          {/usr/local/share/nvu-1.0/nvu}

...and so on. Begin a new submenu with [submenu], end it with [end]. There, you've learned menu editing. It even passes the Notepad test. How long did it take you to figure out menu customization in KDE and Gnome, or, God forbid, XFCE?

#5: No default keys

This is a pet peeve I have with other desktops. A, well, kind of flaming pet rage, actually. Especially with KDE, whose developers are absolutely DETERMINED to define a default action for EVERY possible keyboard combination you could ever think of, no matter how piddling and pedantic that action is. Alt-shift-tab-SysRq? No, they thought of that one too. That's the command to make it unmount all USB media while changing the desktop icon theme to Pumpkin Pie while whistling "Singing in the Rain" and readjusting your monitor to 640x480. Here, look at this screenshot from a recent KDE system:

Somebody's a real smart-ass

I've never seen a keyboard in my entire life that has an F13 key, but if we invent one, Trolltech has already pounced on it and demanded first dibs. You know what happens when we define every action for the desktop? There are no keys left for applications. I can't hit a key in a program without KDE going, "Oh! He wants to change the theme! Quick, stick a big, fat, slow dialog in his face on top of his application!" You know what it takes to disable keyboard shortcuts in KDE? Click each one and then confirm the "Are You SUUUUURE?" dialog one at a time for all 16,491 key combinations. You could replace waterboarding with this.

Fluxbox doesn't do this to me. So I'll just have to get my abuse the old-fashioned way, from paying a dominatrix.

#6: Tabs

Another pet peeve I have is programs which don't understand the concept of tabs. Gnome is better about this; both Gnome Terminal and the text editor GEdit use tabs for opening multiple sessions/ files. For those programs which haven't joined the 21st century yet, Fluxbox has this little tab it sticks onto a window, which you can drag onto another window's tab and poof, they become one united super-window with as many applications or files as you want. It can also let you specify windows to auto-group whenever they open. Here's an example of the Gimp, with tool options tabbed to the main panel and six image files tabbed together:

500% smarter than other window managers

Considering how many people out there complain about multiple windows being opened, this is quite a perk. That's Fluxbox design in a nutshell: so smart, it even makes up for the shortcomings of other programs.

#7: The Slit

Let me try saying this with a straight face: Do you want to see my slit? Here it is:

Surprisingly clean, isn't it?

The slit holds dockapps, those cute little square programs that also run in the panels of Gnome, KDE, and XFCE desktops and in the Window Maker dock. With Fluxbox, the slit can be hung from any edge of the desktop space in any direction, can be themed, can be made transparent, and can be made to auto-hide and pop up on mouse-over. Once again, it's smartened up with a minimalist design with plug-ins you can add.

For those who will ask: The slit is showing pclock (clock), wmmemmon (RAM monitor), cputnik (CPU monitor), wmhdplop (disk read/write monitor), wmnet (network monitor), and wmix (sound volume control). Also before anyone asks: Dockapps are a mess! Some are packaged with distros, some have to be compiled, some need to be updated... You're on your own! Until either Dockapps.org gets updated or somebody whacks together a one-stop distribution point that's as easy to use as Firefox's add-on site.

#8: It gets out of your way!

What other annoyances doesn't Fluxbox have? It doesn't take extra time to start up with a splashy opening. It doesn't declare 1000 dumb sounds for every trivial event (KDE, 1000 confirmed dialogs to disable, waterboarding, dominatrix), it doesn't require a whole suite of programs to go with its environment... it does exactly what so many interface pundits out there say they want: it's happy to be invisible. Two days into your first Fluxbox trial, and you will forget it's there!

PS: While I'm on the subject, there is the XWM Guide I have on this site. It's about three, maybe four years out of date by now (since I ported it from an old site). It's badly aged and on my list for an overhaul. So, yeah.

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

Weather Forecast From the Command Line

Date/Time Permalink: 02/02/09 05:35:42 am
Category: Reviews

For years, I've been getting my weather from Firefox plug-ins, usually ForecastFox. The trouble with these is they have to update every few minutes, causing a brief lag in bandwidth and even a small blip in performance if you're using some other program while Firefox is running. Recently, my ForecastFox started misbehaving for no particular reason. It would blank out and freeze up and so on.

So I decided to uninstall it for now and explore alternatives. True, I could just bookmark the local news weather page and be done with it. But I like something that would run in the background, use the minimum of resources, and not be dependent on running a web browser. So I explored command-line options.


The first I found is weather-util, a Python script done by a formidable fellow who is geek enough to have affinities for Linux, HURD, and OpenBSD all at once.

Despite the INSTALL instructions telling me to put the Python module here and the man pages there, I just plonked the whole directory in my Python subfolder and call it with a three-liner shell script, so it can stay together in one place and still be treated like an install program.

In my case the command line is

./weather -i KDSM -c "Des Moines" -s IA -f

...for Des Moines, Iowa. And follow the instructions in 'FAQ' and you, too, will know what your four-letter METAR code is.


I also stumbled on a script called "weather" on my Slackware system. It's in /usr/bin/, and it's a Tcl/Expect script that uses telnet to put weather data. Yes, you heard me, telnet. I had no idea telnet even worked anymore! The only clue to the script's origin is a comment at the beginning:

# weather - Expect script to get the weather (courtesy University of Michigan)
# Don Libes
# Version 1.10

...and leave it to Slackware to have something like this lurking around. Anyway, I went root and edited the line:

if {$argc>0} {set code $argv} else {set code "WBC"}

Changing WBC to DSM for Des Moines... which was a completely lucky guess.

The Wicked-Cool shell script option

Since I have a copy of No-Starch Press's "Wicked Cool Shell Scripts", I'll go ahead and mention this script which checks Accu-Weather from the command line. I remember trying it on another box a while back and I seem to recall it worked OK there.

The only problem with any of these is that there's a minute lag in getting the data. This could be solved, if I get that picky, by setting a cron job to run the script every hour or so and save it to a text file for easy catting.

Now while we're on the command line, it'd be nice if somebody drew an ASCII map of the state:

    |                                  |                          |            
    |                                  |  MS                       )            
    /                                  |                          [             
   |                                   |                          [            
   |                                  I35                          ---         
    \              SL                  |                              \       
     [                         FD     /           CF                   \-\      
     [                                |            WL                     \    
      \                               |                                    \   
       \                             AM      MT             CR              \ 
        |                             |                                     ] 
        \                             |                                      ] 
         \                            |        ______________IC_____________/   
          \             ___I80________DM______/                       DP----   
           |___________/            |                               ---/       
           |                        |                              [            
           |CB                      |                               ]          
            \                       |              OW               ]          
            |                       |                              /           
            \                       |                             /            
             \______________________________________________     /             

And then somebody else could come up with a way to make the radar map be ASCII too, and you could just represent the precipitation with clouds of #'s rolling across the map...

Oh well, that would be *too* geeky.

Update 1/5/10 This old post no longer applies, as I now run Ubuntu and run a Gnome panel applet for weather info. However, here's the latest thing in command line weather, this time with RSS and PHP. The torch has been passed!

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

CrossOver Games for Linux Running Diablo 2

Date/Time Permalink: 11/30/08 09:31:50 pm
Category: Reviews

For those of you wondering where the blazes I've been - this should answer your question! Between the manic pace of pre-Holiday-season work and getting back into Diablo 2 again, I haven't been much good otherwise.

The back-story is that I saw the post on Slashdot where CodeWeavers was giving away licenses to CrossOver for a limited time. So I'd been curious about it, but not urgently. This was just the time to try it.

Got the coupon-code and downloaded it and installed it, but I was stuck for what to do with it. Most anything Windows-based I'd already gotten running on Wine or DOSBox over the years? What's left? I wanted a real challenge to put CrossOver through its paces. Then I remembered that I still have the full Blizzard's Diablo 2 + LOD expansion disk set and dug it out.

It runs like a dream! My hints for CrossOver are to go ahead and try something even if it's not listed as being officially supported, check the Wine database for clues as to what you'll run into for that program, and learn the concept of bottles really well.

A bottle, as documented by CodeWeavers, is simply the container for a program or set of programs. As opposed to Wine, which puts everything in /drive_c/, or DOSBox which mounts whatever you tell it to as the C:\ folder, CrossOver lets each program think that it has "Windows" all to itself. You can install more than one program in a bottle, of course, which is necessary to do things like get the whole Diablo 2 thing in there.

This pains a lot of people, even on Windows, so I'll describe it here. For getting Diablo 2 going, choose the FULL install of all three disks, exit, use CrossOver's "run Windows command" option to install the official D2 1.12 patch from Blizzard, install the LOD expansion disk, exit, do the same for installing the official D2 1.12 LOD patch from Blizzard. Many users online complain about the game not finding the disk. This is a bug which is fixed with the patch. Do not try to fix it with "no-CD" hacks and moving files around, they will not work. There's lots of bad advice from script kiddies out there telling you different.

One more common complaint, especially trying to run it on Linux, is lousy performance. The game will freeze or be very slow and the sound will stutter. This is caused by picking the wrong option at the end of the video test. Run the video test and no matter what it tells you, pick the top 2D option. See image:

the answer to your problem

After you have all that going, have the LOD play CD mounted and start Diablo 2 LOD through CrossOver. During play, I've even been able to switch to a different virtual desktop (how I got Gimp to take the screenshots) and consoles (how I'm writing this), with no issues; D2LOD will be minimized when you come back to it, but still running fine. I've got it running smooth on hardware from the turn of the century, even with Firefox and Emacs running with it at the same time.

So now that we're on the subject, I'll be the typically self-indulgent RPG geek and bore you with the gallery of my character builds in Netha- , ah, Diablo:

Lucky the Barbarian

Lucky, level 16 Barbarian
specialty: combat masteries

I named him lucky because I hope he'll be a good little magic-finder some day. Right now, though, he's not very exciting. I'm trying to keep him as focused on pure passive masteries as I can, because I'm tired of characters who are mana pigs.

Lupina the Druid

Lupina, level 24 Druid
specialty: lycanthropy, wolf summoning

Obviously, a wolf motif. His sword is a gladius with the Runeword 'Steel' socketed, which helps with his attack. Probably going to go all the way.

Marrow the Necromancer

Marrow, level 18 Necromancer
specialty: bone skills, skeleton summoner

My billionth-or-so attempt to build a pure skeleton necro that will be able to play all the way through the game. Yes, I know necromancers suck and skeletons are weak. I'm stubborn that way. He was pure hell to level until 18, when he can finally use bone spear; now he rocks. I have the unique helmet 'Wormskull' ready for him when he makes level 24.

Vanity the Assassin

Vanity, level 32 Assassin
specialty: traps, shadow skills

My advice if you want to play through the whole game as a single player is to use the insanely-over-powered assassin, as long as you:

  1. avoid claws and martial arts skills like a necro avoids poison dagger.
  2. weild an ultra-damaging melee weapon. I have the unique morning star 'Bloodrise', which is working very well.
  3. do not melee, but use Blade Fury (in traps) for your main attack. Blade fury uses 3/4 of your wielded weapon damage. Counting damage mods from charms and such, I'm currently doing 77-120 per shot, which makes it the most damaging skill in the whole game for a paltry 1.8 mana.
  4. pump Burst Of Speed (in shadow skills), which also boosts your attack speed. Add any gear that increases both running and attacking speed.
  5. add skill points in the Shadow Master summon, keep a few traps handy for backup, and keep your Act I rogue mercenary.

Course, I haven't been into Diablo in years, so it's slowly coming back to me. Anyway, I've tried CrossOver on various other sundry little tasks and it performs excellently. It's very well-behaved, and is less clumsy that raw Wine. It's actually kind of a front-end for Wine, so I assume anything Wine can do, CrossOver can do, with much less work. I don't know if I'd be using it if I hadn't gotten it for free, since my need to run Windows software on Linux is not that urgent, but for those out there aching to do so, CrossOver is a good solution.

Yours truly, happily level-grinding through the holidays (until I get tired of it again)...

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

A Little Talk About Google SketchUp

Date/Time Permalink: 06/04/08 12:25:51 am
Category: Reviews

A motto of mine: To keep your sanity and balance, break your own rule every great, long, once in a while. So, on a site devoted to FOSS, while being a raving FOSS zealot, I will now kind of, sort of, review Google SketchUp, a proprietary graphics application.

I have yet to blog in detail a philosophy about open source and quality which I have called "Tools vs. Toys". But briefly, my rule of thumb is that if it is a Tool, (editors, operating systems, programming languages, mission-critical apps) it must be open source or it is not worth the memory bytes to store it. Toys, on the other hand (games, video, music, entertainment), have near-equal quality regardless if they are proprietary or open source. I've been able to comfortably keep that philosophy intact for years, but Google SketchUp challenges it.

I used the (beer) free version of SketchUp 6.To get it running, I used the Wine Windows-emulator. This blog post, complete with the comments, was all the help I needed. Specifically, I ran the setup program, installed Gecko on the second run, and then used Wine's regedit program to make changes to the HKEYs as the comments specify. It doesn't do any good to describe this further, because FSM knows what's going to happen on your system, and mine is so tweaked and hacked it isn't even Slackware any more.

SketchUp did finally run. I should say it "walked". It is indeed insanely buggy on Linux. I've gotten it to crash at least a dozen times, several triggered simply by mousing over the menu and once when trying to export an image to PNG. It takes a lot of patience to keep going when the UI does this:

Google SketchUp on Linux

Here's what you're seeing: Any mouse click causes the entire buttons-and-menus area to black out. To make a button appear again, you have to mouse over it. The menu headers never show up at all, but a click to the invisible black space makes a drop-down appear anyway. In addition, all of the cursors show up in the editor window with a white box around them, and each shape of cursor has its own unique hotspot, which you can't see when it's on the pixel you want because there's white box in the way. I couldn't begin to figure out what the problem is, but I'm thinking it's something to do with GTK??? And the fact that I'm emulating Windows software on Wine in Slackware in a hacked-up environment?

Anyway, despite the problems, I followed the excellent video tutorials and managed to crank out a few decent "Hello World" images.

Google SketchUp on Linux

Google SketchUp on Linux

Google SketchUp on Linux

The only way I could use these models in production, since it crashes when I try to export to PNG, is to take screenshots in Gimp, mask out the beige background, and then work from there. Here's that last building imported into Inkscape and vectorized:

Google SketchUp on Linux

SketchUp has strong points and weak points. It is indeed fantastically intuitive to start using and even very fun, but once you start pushing it to create greater works, it starts letting you down. For instance, it's easy to carve a block down to a curved shape, but only in one dimension. Let's say I wanted to make the top piece of this chair back:

Google SketchUp on Linux

It's easy enough to make the front profile:

Google SketchUp on Linux

And also easy to carve out the curve from the top:

Google SketchUp on Linux

But it is impossible to do both at the same time:

Google SketchUp on Linux

UPDATE: A big penguin salute to commenter "Nessunome", who reveals to us a way to do this using intersections. Complete with illustration here.

Other things (how to make a sphere) are possible, but so fiddly and non-obvious that you're very unlikely to know how to do it or even if it is possible to do. Basically, SketchUp suffers from the affliction of looking good in demos, but not holding up well in production. For one thing, to do anything precise, you have to type in numbers. Oops, look out! It's a command line! That thing that everybody but me hates! Well, if you're going to type in coordinates, you can do that in POVRay and Blender, too, albeit not in the variety of formats that SketchUp allows.

However, it does shine in some ways, even to the point of excellence. It's more of a CAD-type program than a true 3D program. It's unbeatable (presuming you can get rid of the bugs) if all you want to draw are architectural sketches, and indeed that's the stated intended purpose of the developers. There is nothing you can do in SketchUp that cannot also be done in Blender or POVRay, and indeed KDE's KPOVModeler is within an iota of having as intuitive an interface, while modeling for the 10x more powerful POVRay.

OK? You can point out the wonderful SketchUp object warehouse, and use those models yourself, but now you're just playing the Sims without the Sims part. If anybody produces the Blender-made Elephant's Dream using only SketchUp, I'll eat my mouse.

Which leads us to the inevitable confrontation: SketchUp is closed-source, proprietary, and bound to stay that way. It gets a free one-day pass on this site because Google has been so buddy-buddy with FOSS, and as a demo for those who want to run it on Linux. The reason it's likely to stay proprietary is because it has... PATENTS! Yes, the patent flying-monkeys are coming out of the sky to get you; run, Dorothy, run! At least, the "Push/Pull" tool is patented - this is what you use to pull a square into a block and a circle into a cylinder.

Well, is this prior art? Here I am doing the same thing in Blender, using "extrude":

Google SketchUp on Linux

And I can move it any old way I want here. For that matter, Inkscape has an extrude tool, too, and it ain't even blinkin' 3D!

There are many aspects to Google SketchUp that are just plain derivative of other 3D drawing editors; it's just that Google brought these elements together in a thought-out way to provide a uniquely low-barrier interface, which is actually the kind of thing that Google does best.

So, there's something to say for G SU. Sadly, there'd be a lot more to say for it if it was (a) open source so we could fix it and extend it, (b) ported to Linux natively, and (c) not patented. I'm not one of those trolls who go around pointing at Google saying, "They're gonna turn evil any moment!", but reluctantly, I have to say here regarding SketchUp, "Google, this is one rotten fart in your otherwise lovely flower garden."

/*                                                                       */
/* -__ /\\                                     -__ /\\          ,        */
/*   ||  \\               _          '           ||  \\        ||        */
/*  /||__||  _-_  \\/\\  / \\ \\ \\ \\ \\/\\    /||__||  _-_  =||=  _-_  */
/*  \||__|| || \\ || || || || || || || || ||    \||__|| || \\  ||  || \\ */
/*   ||  |, ||/   || || || || || || || || ||     ||  |, ||/    ||  ||/   */
/* _-||-_/  \\,/  \\ \\ \\_-| \\/\\ \\ \\ \\   _-||-_/  \\,/   \\, \\,/  */
/*   ||                  /  \                    ||                      */
/*                      '----`                                           */
Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

The MakeHuman Marathon!

Date/Time Permalink: 02/02/08 12:36:19 pm
Category: Reviews

Since I discovered MakeHuman I've become The Blogger Who Cannot Stop Drawing. This is always a sign that I've found a valuable graphics tool, when I can't stop playing with it. Here's the latest surviving pieces, as always with MakeHuman models which are then edited in other programs:

jumping boy

very confusing vector drawing

very sexy sitting female

And take a close look at that last one - I covered her up enough to be decent. So it should squeak by with a PG rating and not violate my rule of not posting NSFW images. Am I right? Tell me I'm right, just this once?

On a side note, I have a horror story about trying to get it from source. Begin horror story:

I did have continued challenges with getting the rest of the software installed. Bottom line, I needed Aqsis so I could do real renders instead of screenshots. Now, the Windows executable installer for Aqsis comes in around a mere, tiny 6 MB. But I tried to install Aqsis natively for Linux, since I had MakeHuman compiled natively already.

Boy, was I in for some trouble! Aqsis has a dozen little dependencies, one of them being an iron-clad dependence on this thing called "Boost", which is supposedly a C++ library. Don't believe this for a minute! Boost is a complete freaking operating system that tries to rewrite, like, everything in the entire world. I got the source for Boost and started compiling.

Four hours went by, on an AMD Duron with a half-Gig of RAM. It still wasn't done compiling the library!

Meanwhile, I watched in growing horror as nearly Two Gigabytes of disk space filled up. You know, when I compile a library, I don't expect to have to dedicate an extra hard drive partition to it. I've gotten Linux From Scratch up and running with fewer resources. I kept running du in the console every minute close to the end, and had my finger hovering over Ctrl-C to kill the job, which would have undoubtedly trashed my entire system, but it ended just in time.

Fat good it did. I then turned to building Aqsis, which also requires it's own special build system called SCONS, whose entire purpose in life is to aggravate you by not using Make like every other FOSS program in the world does. Finally, finally, I got Aqsis installed and running, where it died screaming upon merely being invoked. Since I had installed about 2 Gigs worth of software from source, I now had to uninstall it all manually.

End horror story

So you understand, I'm being a little hard on the Linux native port because it wasted upwards of an entire day. My advice to you is to get the Windows executable of Aqsis and run it from Wine. Wine and Aqsis love each other. You will be done and happily on your way in five minutes. As for the team porting it to Linux, maybe we can just call it a Wine program and be done with it, or else try to do it without reinventing the compiler? Or get it all into binary packages, for RPM and DEB goodness?

Anyway, all's well that ended well. MakeHuman continues to be a powerful tool in my growing graphics toolbox.

My previous reviews of MakeHuman here and here. And another shout-out to Eric's Binary World, whose nifty blog turned me on to this program!

¶ UPDATE: Check out the comments, where Aqsis project manager Paul Gregory himself arrives with a flashlight to lead us out of the darkness. RPM packages for Aqsis are here - if I'd only thought to look there!

Update the Second: Looks like Linux Torvalds doesn't like Boost and C++, either. Until he let loose with this rant, I was wondering if I was too hard on Boost. Guess not.

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

MakeHuman - half a thought left over from yesterday's post

Date/Time Permalink: 01/28/08 06:03:24 pm
Category: Reviews

This time I tried exporting a model from MakeHuman to Blender, and did a full number on it. So, for those of you wondering what a troll looks like, here it is:

A stunning portrait of Mr. Troll

Note that it's not very polished. That's not the point. The point is that I ran this up from scratch with less than three hours work. MakeHuman and Blender make a heck of a powerful combination.

Because it is still beta, I figure it makes a better non-human maker, since I just tried exporting a lovely female only to have her come out as a gray-skinned waxy corpse with magic-marker Groucho Marks eyebrows. There's some issues to work out. For actual humans, I'm sticking to screenshots for the time being.

While browsing the source, I discovered modules for clothes and teeth, which suggests facial expressions. When these are developed, it will be a cause for celebration.

Let me suggest something completely crazy: what about a command-line mode? Since the GUI interface is really just setting numerical values for the character (there's even numbers under each setting in the panels), and there's a console as well, obviously it should be possible to simply call it from the command line with a bunch of switches and numbers. You could print out a cheat sheet with the parameters in a chart with pictures.

This would cut a half-hour session down to seconds, once you knew what you wanted. Especially with a library of saved poses and characters. And if vector graphics can be expressed as XML data and ImageMagick can be manipulated entirely from the command line, there's nothing to stop you from making the program do this:

"makehuman -s F -a 32 -w 120 -h 67 -c 'MySavedTweaks.txt' -p 'Yoga'"

...and out pops a female 32-year-old weighing 120 pounds and standing 5' 6" with my custom tweaks for eyes and nose and positioned in the yoga pose, ready as a mesh for Blender import. Ding!

Yes, I know, darn that stubborn old-school grouch who wants everything in the world to be a command line. But that's all the program is anyway, is a command line with a GUI glued on the front.

Does anybody else think this is a good idea?

(My previous review of MakeHuman.)

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

MakeHuman - Open Source Human Modeler

Date/Time Permalink: 01/27/08 12:04:29 pm
Category: Reviews

Allow me to introduce the software that will change graphics on the Linux desktop forever. The Linux graphics toolkit has been missing one crucial tool: a way to quickly render human models, similar to the commercial, proprietary Poser. Well, we've got that now.

MakeHuman is this fantastic work of software magic. I ran into it over on Eric's Binary World. So that's a big one that Eric scooped me on, and he's reviewed and commented on it as well.

Now, Eric, if you visited that link, is happy to render naked bald women over there. That's "to each his own" - I kinda got my fill of those after Lieutenant Ilia in the first Star Trek movie. Now, me, when I sit down with a human model renderer, the first thing I think of is drawing an alien freak:

He's drawn really, really funny.

Can any of you witty commenters come up with a caption for this guy? All I can think of when I look at him is to base a new religion on him that would be a sequel to Scientology.

[EDIT] Three years later, I ended up using him as a wall portrait in this strip of Doomed to Obscurity. In a completely original fictional religion I made up called "Micca". Put that in your pipe and smoke it!

Anyway, this software is alpha. Do not expect miracles! I had a devil of a time getting it running. First I grabbed the source tarball and gave it a compile on my Slackware 11.0 box, but it (all three pieces of it) depends on Aqsis, which won't compile on my system because I'm missing a bunch of obscure little libraries that I've never heard of, and I'll have to Google and scour the Earth for them.

Next, I attempted to run it on the dreaded Windows XP machine. It installed alright (what doesn't install on Windows? It's a garbage can, it'll eat anything!), but it was not in running condition. Evidently the Windows system I inherited has no tolerance for OpenGL whatsoever. It froze like a brick.

Next, I tried the Windows executable on both Slackware and Zenwalk using Wine, and yeah, verily, it didst worketh!!! About ten minutes after getting it running, my memories of the struggle to get to this point melted away. This! Software! ROCKS!!

Now, I still can't get the renderer working, without Aqsis. Also, I can export Collada .dae format from MakeHuman, but my Blender barfs on that format. I can export Wavefront .obj format from MakeHuman and my Blender opened that, but even that has drawbacks, as Eric points out.

She's flying high on goofballs.

So instead, the models I'm showing you here are simply taken from screenshots of the MakeHuman environment. You can change the background to any convenient wallpaper you have ready, and then the skin renders fine right there, so what's the difference? Snap them and Gimp some clothes and hair on and wedge them into whatever scene you want. I expect they'll fix more of these issues by the time they get to final release. And the next time I paste a wig on a model, I'll do a better job.

Be glad you cant see this old fat guy wearing boxer shorts.

In the case of the big bald guy ("Boxer Joe") I zoomed him in to full size, then took four window shots from Gimp, scrolling the model up each time, resulting in four pieces which I could then paste back together and post-process. These examples are the beginning of my experimentation - I'm just letting everybody know so you aren't all "How do I get MakeHuman to do that?", these are mostly the result of post-processing outside of MakeHuman.

I have found graphics Nirvana! By the way, the MakeHuman team is asking for donations, so golly, it sure would be nice if a bunch of people responded to all this blog love to go shower them in dollars - perhaps from the upcoming tax refund windfall - to support them while they get these last few kinks ironed out. Then their first official release would be a real blow-out, and then the greedy, freedom-oppressing, proprietary-software corporate swine everywhere would just sit on the floor and bawl like babies, because there'd be nothing left to monopolize.

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

A Bashful Glimpse at Solaris Indiana Developer Preview Edition

Date/Time Permalink: 01/20/08 12:41:32 pm
Category: Reviews

There's no getting around it - I'm going to have to go to a psychiatrist some day with my unhealthy Sun Microsystems obsession.


"Doc", I would say, "Every time I see an Open Solaris distro, I have these sky-high expectations which are constantly disappointed by the reality. Yet my optimism for the next Sun release never falters."

"I see.", the psychiatrist would say, "What does Sun Microsystems symbolize to you?"

"Well, see, they used to be this big, hostile proprietary tech company, but lately they've been open-sourcing their operating system and giving us Open Office and they even GPL'ed Java. And I always think that they're this close to being as cool a company as, say, Red Hat or Google. If they really went all the way with Solaris distros, they'd be just like Linux, only with clout and money."

"Ah", the psychiatrist would say, "So then you, as the rebellious youngster with the new software liberty philosophy, look to this member of the old guard who represents the establishment you have fought; now you hope that they will change sides just so it would validate your rebel beliefs?"

"Why yes! That does sound like the source of my fixation."

"Mmm-hmm," the psychiatrist would nod to his conclusion, "Passive-aggressive Oedipus complex. When it comes down to it, you don't really want to kill the father figure. How much easier it would be if your rival simply gave up and let you have what you wanted?"

"Wow!", I'd wow, "You're pretty good at psyching me out, considering that you're a figment of my imagination I cooked up for a blog post!"

And the psychiatrist laughs and says, "You think that's something! Wait until you see what I'll be writing about you in my blog!"

CAMERA PANS upward to starry sky, as Rod Serling does his concluding voice-over...

"Penguin Pete, who blogged a dream, only to find that in fact he was the dream being blogged. Penguin Pete, whose RSS feed is bookmarked only in... the Twilight Zone!"


So, to get to the "review" part, which won't be very long: Introducing OpenSolaris Indiana! Now, I stress... this is important... wait, don't jump ahead, read this part!!!... I stress that I'm not criticizing this release. It is not even an alpha release; it's a "developer's preview". It isn't even born yet, we're just getting a picture through the womb on ultrasound. I love Open Solaris. If I loved it any more, it would have to file a restraining order against me.

Note that there's no screenshots with this "review". Always a sign of bad news to come. But as they say, "Try it!" so I'm doin' dat.

Anyway, on my four computers it failed to boot on three of them and on the fourth could only boot to a text console. The GRUB loader for the live CD gives three options for regular desktop boot, regular desktop without ACPI, and text console, and on the three computers where it failed to boot, it failed on all three options.

On the Pentium Pro 450MHz with 320 RAM, it stopped quickly with "Error 28: selected item cannot fit into memory" right after a line that said "module /boot/x86.microroot". On the Intel Celeron 433MHz with 512 RAM (this is the Windows XP/ FreeBSD dual-booter) it immediately jumped into an infinite loop printing "WARNING: init(1m) exited on fatal signal 9: restarting automatically" over and over. It failed on the other box with likewise problems which I forgot to document.

The machine where it booted successfully is an AMD Duron 1000MHz with 255 RAM. The graphical option simply hauls off and tries to start, resulting in a blank screen, dead as a doornail. In getting the console boot, I was at last able to explore.

OpenSolaris Indiana's guts look a lot like a GNU system. the shell is Bash, it has vi and less and ls and a complete info system and days worth of entertaining man-page reading. It has no Emacs, but whenever I mention that as a minus I get whipped for being an Emacs bigot. So I didn't mention it.

Were I to explore it and stick with it, there's at least a possibility that I could get the X system tweaked to run on my very basic video hardware - ATI Rage 128 AGP card and HP Pavilion monitor. I just mention the ancient hardware so you know I'm not bashing a distro for not supporting some laser-guided cutting edge stuff. I certainly did not find /etc/X11/xorg.conf which I could have edited in vi and given a shot with 'startx', which is how I usually solve display problems on Linux distros. And learning the Solaris equivalent is better done from a working desktop with web access, so I'll put that in my 'to-do' queue.

Exploring the file system from the command line, I noted the presence of a full Gnome install, Gimp, and Firefox. The screenshots on the Indiana site look tasty.

I've explored OpenSolaris systems before and had similar issues. I stamp my foot and whine. I wait a while and try one again. And it looks like I should just get to be comfortable with the idea that I'm not going to get my pony, not for a while. The thing I can't seem to remember is that Linux took 15 years to get where it is now, BSD took 30 years, and with Open Solaris being just over 2 years old, it is not going to just catch right up with the other Unix family members.

But, do you want some hope? As the Wiki turns, no less than Ian Murdock has just been hired by Sun to head the Indiana project. Well, hey, if Open Solaris wasn't going anywhere before, it damn sure is going to start going places now.

I Can HAZ Sun COOLNESS Plz? With lotsa Java in it? Sometime soon?

metal sig without much mustard

Follow me on Twitter for an update every time this blog gets a post.
Stumble it Reddit this share on Facebook

<< Previous Page :: Next Page >>
suddenly the moon