Tuesday, January 22, 2008

Shallow Entertainment

Who are these people?!?!





And after their unwitting transportation into Cyrodiil:





Doctor Cameron didn't make the cut; FaceGen Modeller did a pretty good job of extracting her salient features, but apparently she has a very masculine face (according to the sliders), and her face didn't translate well into Oblivion; in fact, it was barely recognizable.

Sunday, January 20, 2008

Dodged A Bullet There..

While I have been pretty happy with my Samsung SyncMaster 226BW flat screen, I've read some disturbing reports on the net that Samsung provided one class of panels (with an "S" LCD, manufactured by them) to the reviewing press, and another class (with an "A" or "C" class LCD, manufactured by AU Optronics) to unwitting buyers.

I did not know any of this when I purchased the panel. In fact Villman didn't even let me look at it: sealed box and all. So I carried the box home "blind."

Thankfully (or perhaps not.. ignorance is bliss) there is a way to determine what sort of panel I have got, via a hidden service menu.
  • set Brightness and Contrast to zero
  • exit the OSD
  • enter the OSD again by pressing the Menu key
  • press the Source (VGA/DVI) button for >5 seconds
and this is what I got: version m-me22h0caa which, thankfully, is an S-panel.


I don't know what I'd have done if I actually had an A- or C-panel, because the truth is, this screen is gorgeous. But maybe it's gorgeous because it's an S-panel..

Twelve Years of Internet Access

I first got internet access at the EEE Department at UP Diliman in late 1995. Back then, AltaVista was the rage, Google was unknown, Internet Explorer was a laughable piece of crap, Netscape Navigator 3.0 Gold was king, Linux kernels were at 1.2.13, and state-of-the-art consisted of a 90MHz Pentium with 16MB of RAM.

Check out my web site from mid 1996. Replete with '90s-isms like tiled background, gratuitous use of tables to separate stuff, little image icons in the left side, and Linux zealot-ism galore.



Mystical lyricist of my dreams?!! egads! Well, at that time, I had never had a girlfriend. It explains everything.

This page was supposed to be part of our official laboratory home page.



Another list of those people:


And here's a recent (couple weeks ago) picture of (some) of those same people:



Yet, some things haven't changed. I still use Linux more naturally than Windows; just re-discovered how much I miss the command line when I rebooted to Linux a while ago and found myself using

sleep 5; xwd -root > dump; convert -geometry 25% dump dump.png

to take screenshots. In some ways I was smarter, faster, better twelve years ago. I thought nothing of writing Fast Fourier Transforms in C. One-dimensional, then repeat to get a 2D FFT for image filtering. I knew about things like the Hough and Homomorphic Transforms. I was a mad C coder.

Now, I am lazy. Google has made it almost completely unnecessary to write code for well-known problems. Eclipse has made programming much easier (I used PICO, JOE, and Emacs in those days). I know more, but I don't think as fast as I used to. I get tired a lot faster, no more three nights without sleep. I'm much more portly. Older. Hopefully wiser.

I keep telling one of my friends in the picture that, although we look back on college as a fine, nostalgic time, we keep forgetting that we didn't have any money back then. But I was using

sleep 5; xwd -root > dump; convert -geometry 25% dump dump.png

back then. And I thought I'd be a teacher. I never imagined that twelve years later, I would be very happily married, live in our own home, have a relatively comfy existence, and work for the biggest database vendor in the world.

Not too bad, really.

Bandwidth

I still am pretty gleeful about the network performance we're getting from Globe DSL. Yes, it's 12:30, just past midnight, on a Sunday. But I get that kind of speed almost every night (when the system isn't down).

I Have Linux! (Sort of)

The 160GB Seagate hard drive I had on my old machine had a CentOS 4.4 installation on it. After I transplanted the drive to my new-old Pentium Dual Core, I installed Windows, which hosed the Master Boot Record so I was unable to boot to Linux anymore.

I did not consider this a problem, as I'd intended to install a new 64-bit Linux on the partition. However, with my problems with the ata_piix driver in all of these distributions, Oracle Enterprise Linux 5 32-bit, Fedora Core 8 64-bit, and Ubuntu 7.10 64-bit, I decided to see if I could revive my old Linux installation.

Thankfully, we have GRUB4DOS! the only part I needed was the GRLDR or the bootloader itself. I installed this on Windows' boot.ini and it was able to find the original grub.conf; after some editing of the command-line, I was able to boot my custom-built 2.6.19.1 kernel (compiled on 12 January 2007, or more than a year ago). Since I like to compile my kernels statically-linked, and back then ata_piix and its friends were not yet fashionable, the kernel booted... ICH7 is supported by the Uniform Multi-Platform E-IDE driver 7.00alpha2.

So now I can post this blog entry from Linux. Unfortunately I am using the VESA driver for X, because the NV driver of my old installation doesn't recognize the NVidia GeForce 7300GS (it only goes up to the 6600 or thereabouts). And the VESA driver maxes out at 1280x1024 resolution, so my screen is strangely squished, not sharp, and has aliasing artifacts galore (its native resolution is 1680x1050).

I downloaded the latest NVidia driver, but it requires kernel source. Which I deleted. Doh! so I have to download a new kernel again. So much effort, for a 32-bit Linux installation which I want to destroy..

Saturday, January 19, 2008

Bandwidth, Again

I keep reading that Ubuntu when run in Expert Mode can install on Intel i945 motherboards like mine. So I decided to try downloading it.

Saturday, 19 January 2008, a bit after midday:



This is pretty OK for me! I'm willing to tolerate some unreliability (like 4-hour downtime the other night) for these kinds of speeds. Anyway I can now use my Nokia E90 as backup internet access, albeit only at slightly-better-than-dialup speeds.

Friday, January 18, 2008

3.5G

This is what I got just now using a 3.5G connection to my Nokia E90:



I'm at the incumbent telco which provides my 3.5G access, but I don't have an internet connection and so use my phone.

Monday, January 14, 2008

Engine Washes Are A No-No!



I had the old Mazda 626 engine-washed a month ago, in spite of my own better judgement . When I drove it to the airport two weeks ago, I was confronted with horrible engine shuddering (and scary suspension shuddering, but I expected the latter). And last week, I drove to Makati to meet some friends, and had five unscheduled engine stops on the way back home.

I was finally able to check up on it yesterday afternoon. Turns out the spark plug wells had lots of water in them. D-oh!

A rag pushed into each well didn't dry up all of the water, so I used the Doc Mike technique, which consists of finding some length of hose (in my case, some excess LPG canister hose), putting one end into the spark plug well, and blowing with all your might on the other end.

That seemed to work.. some amount of water was ejected from the #3 and #4 spark plug wells. No wonder the car couldn't exceed 40 km/h last week even with the pedal on the floor - with only two cylinders firing, it was much like the Tata Nano, but heavier. Which is bad.

Problem now is that the spark plugs are wedged real tight (I bought some replacements). My cheap $2 spark plug wrench got destroyed when I tried to dislodge the plugs. So I'll have to borrow a ratchet driver set from another friend.

I'm just surprised that so much water could stay in there. One would expect that with the heat of the engine valve cover, the water would have evaporated a long time ago.

Saturday, January 12, 2008

Working Weekend

Our group has a big presentation to a prospect on Tuesday. Because the scope is huge, we've had to divide the Proof of Concept into little bits and farm out the bits.

I've drawn the Swing and Spring (rhyming unintended) bits, which is somewhat daunting because I've never used Swing or Spring to save my life. Well, I was able to repurpose an existing Swing demo (just changed a widget here and there..) but Inversion of Control is beyond me.

99% of the Spring demos on the web are for MVC and web applications. I don't need yet another JAR to add to my already burgeoning project. But I found one which can be called from the command line. Good old friend public static void main(String[] args), I knew you well.

Turns out a minimal Spring application can be had with three JAR's - the main Spring JAR itself, log4j, and commons-logging.

It lets me pretend to be a "hardcore developer," complete with props. Although I know deep inside I'm just a wannabe, hahaha.



The huge resolution on the 22" LCD is ideal for running Eclipse - in Debug view, I actually have lots of screen real estate. This LCD is proving ever more popular with me, I'm glad we bought it instead of me succumbing to some camera lens I'd hardly ever use.

Joel Spolsky wrote in one of his articles that you ought to give your developers a huge screen to work with, it will vastly increase their productivity. And he's right! I thought I was in hog heaven at my previous job where I had a 17" LCD on my desktop.

This is one case where size does matter. Two 22-inchers would be even more eye-popping, but the truth is, the big monitor is only useful for coding, watching movies, and games. It's just too large (and high resolution) for things like web browsing, web sites end up with laughable amounts of white space.

Friday, January 11, 2008

Fedora 8 Non-Goodness

After downloading Fedora Core 8 x86-64 the other day, I burned it to a DVD last night and put it into my home desktop's DVD drive for some Linux installing goodness..

Which completely failed.

Some Google searches turned up tons of issues with Intel ICH6/7 south bridges in conjunction with PATA ATAPI drives. In other words: the new Intel ICH use a SATA to PATA bridge to support PATA (old-style Parallel IDE). Since both my hard drive and optical drive are PATA, they go through this bridge.

Linux supports this using the ata_piix driver. This driver has a bug: it doesn't support PATA ATAPI drives, such as CD-ROM or DVD drives. So, the Fedora installer starts up, but when the ata_piix driver initializes, it can no longer see the DVD-ROM. So no Fedora 8 goodness for me at all.

Admittedly, if I were using all manner of SATA disks, this problem wouldn't come up at all. It's the combination of ancient (PATA) and modern (Intel ICH7) hardware which causes my problem. Still, overall, quite a disappointing performance.

Thursday, January 10, 2008

Bandwidth

A lot of my bandwidth (when not at work, obviously) is still being consumed by the game, Oblivion.

But I had this sudden realization that my cheap, entry-level computer is 64-bit capable! so last night, I downloaded Fedora Core 8 for x86-64. Took all night.

I actually started the wget yesterday morning - yes, wget for Windows exists - but the computer powered off after only downloading 600MB, apparently there was a power interruption during the day.



So my download took all night. Which is amazing! I'm paying $25 per month for Globe's entry-level consumer DSL. And it took only all night to download an entire 3.7GB DVD image.

Friday, January 04, 2008

Playing with Oblivion

I've been playing The Elder Scrolls IV: Oblivion for the past couple weeks. I didn't even finish the NWN2 main quest because killing the main boss is extremely difficult.

Anyway, one of the features of Oblivion (and the latest, greatest hit game Mass Effect) is that they use the FaceGen Modeler system to create and render character faces (both PC and NPC). So you can literally have any character look that you want.

Unfortunately, getting good-looking character faces using Oblivion's in-game face editor is a tedious, hit-and-miss affair. What other players have done is spend hours producing faces, then exchanging these faces with each other on forums. However, the FaceGen Modeller 3.2 Demo allows any user to import a face into the FaceGen system. All you need is a front-facing photo, and a left-facing photo. So a mug shot would do.

For myself, I decided to try using Jessica Biel. Here are the photos which I used (found them using Google Image Search). They have to be of reasonable resolution (e.g. 400 pixels wide at least) for the system to work well.



Use the "PhotoFit" tab of FaceGen Modeller to bring in the two images, and apply the crosshairs to the control points in the image.







Once FaceGen Modeller has done its grinding away (3-5 minutes, depending on your hardware), we can verify how good a job it's done. In this case, a very good job (I mean, the rendered image is recognizable as Ms Biel):



Afterwards, save the generated face as an FG file. Then, using Zennorious' FaceGen to Oblivion Converter, apply the FaceGen file to an existing Oblivion save game. It's also useful to have Oblivion Face Exchange Lite so you can edit the hair style, transfer faces from one save game to another, and so forth.

Here's Jessica Biel as an Altmer. Unfortunately, something got lost in the translation from FaceGen to Oblivion, but the result is still OK.





Wednesday, January 02, 2008

Farewell, Old Friend

A lot of people anthromorphize computers. A computer is more than just a bucket of bits, it contains your data. Your pictures. Tiny bits and pieces of your life.

My old computer was assembled sometime in early 2000. For its time, it had a pretty impressive feature set:
  • Abit VP6 dual-processor Socket 370 main board; Abit is now bankrupt, another casualty of the dot com collapse, but eight years ago they made the best hobbyist main boards, and the VP6, with its two Coppermine Pentium-III sockets, was their flagship
  • dual Pentium-III 800EB stepping CC0, both of which I got running successfully at 1 GHz
  • 512MB of PC133 SDRAM
  • GeForce 2 GTS video card (at that time, the third-fastest Nvidia card, after the GeForce3 Ti200 and Ti500)
  • 27GB Seagate Barracuda ATA, the first-generation 7200rpm IDE Barracuda
  • Aureal Vortex2 sound card, which at that time was the highest-end consumer sound card you could buy
  • 20-inch Sony GDM20D10 fixed-sync monitor, actually a Sun monitor
It was a very nice computer setup for its time, and cost me about 50,000 pesos back then. At that time I gave no thought to expending all my disposable income on computers.

Here's a picture of that computer, dated 24 November 2001, at the Mozcom offices at the Peak Tower:



Incredibly, I was still using this exact same computer in January 2007, a year ago. A whole lot of bits of my life, and Lalai's life, went into that computer. Including our wedding photos and videos, bits and pieces of my work at two jobs over eight years, and God knows what else.

The only difference between the computer's setup in 2000 and early last year was, first, I bought 1GB of PC133 SDRAM from someone on TipidPC because I'd just gone to work at Oracle and needed a machine to run TimesTen on. So I needed more RAM. Second, the GeForce 2 had given up the ghost and I'd gotten an ATI Radeon 9600 Pro. And lastly, the Sony fixed-sync monitor had died (it's somewhere in Mozcom's stockroom) and we bought a black Samsung 17" CRT monitor.

The last game I played on that 800-MHz Pentium III was Vampire: The Masquerade Bloodlines. It was quite slow, but I managed.

Anyway, all things must come to pass. The ancient machine was replaced by a 1.4 GHz Athlon-C second-hand from TipidPC again. And then in May 2007 I discovered that Oblivion would not run on the Athlon-C because pre-XP Athlons didn't support SSE instructions. Then at the beginning of last month I got that misbegotten Socket 478 main board and 2.0 GHz Pentium 4 that didn't quite work.

And a week later bit the bullet, and got a new main board, CPU, RAM, and video card. Which is the machine I'm using now.

My old computer was actually perfectly functional, and I wouldn't mind having it still, because an 800-MHz Pentium III (one of the processors burned up when its fan seized, and the warranty replacement wasn't the same clock speed so no more dual-processor goodness) with 1GB of RAM is still a decent machine. Ironically that's about the spec of the all-new for Christmas 2007 Asus Eee PC.

But my old computer was taking up space. Since my in-laws needed a new monitor, and Lalai and I are really short on space, we decided to buy an LCD monitor and give up the (still relatively new) Samsung CRT. Since the computer at my in-laws' house was also not that powerful, I decided to put back together the old computer once more so that they could use it.

So last night, I put it back together for the last time. Then packed it into a box for its journey.





Ironically, our new computer isn't all that new: the new bits are the monitor (the biggest and most obvious new bit); the main board; CPU; video card; and RAM.

But the case and AVR are from Lalai's circa-2001 Pentium 4. The CD writer and mouse are from my old Pentium III;



And interestingly enough, the speakers in the photo above (white Altec Lansing ACS-45's) are the same ones in the November 2001 picture at the top of this page.

Anyway, I hope my old computer continues to be productive in the days ahead. And that it doesn't get junked and collect dust in some forgotten corner. And when it finally does, I think I'll get it back and put it in a display case or something. Almost ten years' worth of my life passed through its CPU and spun off its hard disk. I can't think about that bucket of bits being discarded