Posts tagged ‘dungeons’

Introducing Arah J. Leonard!

So I’ve reviewed and ranted, entertained and bored, but in all this time how well have you really gotten to know me? For that matter how well do I really know myself? So please let myself introduce … myself.

Name: Arah J. Leonard

Sex: Often, please

Gender: Male

Age: None of your business … oh, fine. Born in ‘76. Are you happy now?

Occupation: I’m sorry. I’m a little preoccupied…

An image of ME, Arah J. Leonard!

Okay, so I was born a mutt of mixed heritage in northern Illinois to a loving mother and father. I also have a younger sister. When I was seven, my father died. On Father’s Day. While driving the pickup truck that was going to be a present to his father up to see us all. (Because he’s been delayed by work so couldn’t come up with my mom and us kids.)

I believe, that year for Christmas, with funds from my father’s life insurance, was when my mother bought us our Commodore 64. It was the best investment in my life that she ever made.

Over the years as I grew up I played in Commodore and Apple labs at school and on my Commodore 64 at home. I learned to program in BASIC. I programmed a few of my own games and things, usually simple affairs. More fun however was to hack into games like Telengard. My favorite Telengard hack was to add an escape clause. If you accidentally wandered into an area where monsters were much more powerful than you, it was instant death. Normally if you ran into a monster and tried to run away it would say, “The monster is not amused.” You’d lose your turn and the monster would attack. But with my escape clause I’d change it to say, “The monster IS amused.” And then I’d have the monster give you a random bit treasure and then leave. So if a monster was too powerful for you, instead of instant death you’d get to live and come out with some treasure to boot. :)

I also learned over the years to play with consumer electronics such as computers. I could disconnect and reconnect all of the wires like it was nothing. I’d help out in the computer labs after school, using my keen sense of hearing to locate monitors still left on and turn them off. (To this day I can still hear when CRTs are left on. And sometimes LCDs too.)

Later in grade to high school I expanded into helping friends work on their computers, upgrading RAM, hard drives, CD ROMs, graphics, etc. And I learned other variations of BASIC on PCs, on Macs, and so forth. I even learned HyperCard. And I learned on a Macintosh to program in a very stack-centric language for the game RoboWar, where you pit your robots against those of your friends in a completely unmanaged environment where your robots all fend for themselves and only robots with the best programming (and choices in robot hardware) win.

Then I graduated high school. I went straight into the US Air Force as a Communications and Computer Systems Programming Journeyman. (Or something like that.) I actually wanted to be an airplane mechanic and short of that an electronic engineer. Unfortunately over the years I have tested as every type of color blind imaginable, brown-blue, red-green, to every degree. I’m not color blind. It’s those stupid bubble tests. In them I almost always see every possible answer. Optometrists don’t believe me when I tell them that though. So it becomes a guessing game. One where I always lose. I can’t help it if I not only see all colors but also through optical illusions. Anyway, so because of that the USAF wouldn’t let me near anything where seeing the wrong color could cost people’s lives. So I became a computer programmer.

I did my Air Force Basic Military Training in Texas during the summer, playing with fireants and constantly marching through black flag days. (Though it wasn’t technically marching because we didn’t technically have to keep to the rythm. Theoretically. In practice it was a nice way for TIs to cover their behinds while still marching everyone around endlessly.)

In technical school in Mississippi I was taught BASIC (as if I needed teaching in that), Ada, COBOL, 16-bit x86 Assembly, and SQL. I also had the joy of having my appendx nearly explode as I collapsed to the floor and shook violently during the middle of class. And then a day later in the hospital along came a hurricane. Which I guess being in the hospital saved me from having to do cleanup afterwards. (As well as standing in the rain waiting for someone to actually unlock the emergency shelter, as I later heard.) But it threw me out of schedule with my class. So a week after being taped up (not stapled, sewn, or any such. Just taped. Because they were afraid of gangrene and actually cutting along the dotted line a second time was just too much effort for them) I was delivering packages all around the base, on foot, while I waited for the next class behind me to catch up to where I left off. Fun times, I tell ya.

In my first (and only) duty assignment, where I’d asked to be stationed in places like Alaska, Washington state, even Germany and Turkey, I was instead sent to Alabama. More south. Yippee? I used 16 and 32-bit Assembly, FORTRAN, C, C++, Visual FORTRAN, Visual C++/MFC, and Visual BASIC. Or in other words, I regularly used just about every language that technical school didn’t teach me. The project was AFTERPS (Air Force TERminal instrument ProcedureS). It involved calculating take off and landing procedures (as well as emergency and what to do it you missed) for every category of aircraft for a given runway. It was software used throughout the world. It took into account natural obstacles from NIMA satellite imagery through a program called DAFIF (Digital Aeronautical Flight Information File). And it took into account man-made obstacles through DVOF/DTED (Digital Vertical Obstruction Files and Digital Terrain Elevation Data). All so that airplanes wouldn’t crash. At the time however the air traffic controllers weren’t allowed to actually use these programs to determine take off and landing procedures because the military didn’t trust computers. They made errors. (Especially the first FORTRAN compiler we used, from Microsoft, that had a nasty division by zero bug in it.) So they still had to do all of the work by hand. These programs were just used to verify their results. It’s been a long time since I worked on that software, but I sincerely hope for their sakes that the military has changed it’s tune on that.

As I was there, AFTERPS evolved from a FORTRAN / 16-bit x86 Assembler DOS-only to a 32-bit console app of the same languages. (I upgraded most of the 16-bit assembly to 32-bit myself.) We did a lot of fixing the if-goto reverse logic of FORTRAN 76 (with overused continue statements) and mismatched common blocks in the FORTRAN code to proper clean if-then-else logic and such. It was a massive upgrade to the code to make it suitable for maintaining in a 32-bit environment. I also was part of the DVOF/DTED upgrade from global variable C to the object-oriented C++ for similar reasons as well as just plain sanity.
Then we did an upgrade all over again with DIGITAL Visual FORTRAN and Microsoft Visual C++/MFC. We enlisted the aid of a Microsoft pro, who promised us that it was possible. At the time, it wasn’t. At least not in a logical way. But eventually we sorted out ways to work around the incompatibilities of the two opposing ‘visual’ sides.

And besides programming for the USAF AFTERPS team I also occasionally had duties like installing memory and hard drive ugprades, installing Windows 95 and then again to Windows 95 B (OSR2), and even helping change networking protocols when the base switched.

And during this time as technology advanced my love of computers grew. At home I built my first computer, a Pentium I 133MHz machine with 128MB of EDO RAM. It’s been a very long time, but I remember also that the chipset was supposed to be very advanced (for the time) and had an external extra bit of cache memory. It ran DOS 6.22 with Windows 3.11. I even had a Soundblaster AWE32 for sound and awe-inspirint MIDI. I later upgraded the graphics to a Diamond Viper V330 and a nice big (back then) 17 inch monitor. I remember because the card itself had benchmarks that trounced the more popular Voodoo cards. But I was pissed because games like Quake weren’t supporting the Diamond Viper cards. They only supported Voodoo for OpenGL. It was a tough lesson that the best isn’t always the best.

My love of video games also helped me jump into saved file hacking with hexadecimal editors. I loved a good hexed. I even wrote my own in Visual BASIC once, called Hex Magic. Games like Ultima Underworld and Descent had wonderful save files that were so much fun to play with. And of course I taught myself HTML so that I could have my own webpage. It was on Geocities, back when Geocities was actually good. When I could FTP my changes up. When advertisement wasn’t even required and people were proud to add a Geocities logo all on their own. Then it all became crap, and though by the end I had a mirror going on two other free hosts, it just wasn’t worth maintaining anymore. So I stopped updating and let the accounts close from inactivity.

The Air Force had been fun, and given me plenty of opportunities to excel, but it just wasn’t for me. I was sick of my first shirt who seemed to have a hard on for trying to ruin my life. And because of my short five foot seven stature and heavy disposition I was always struggling with my weight. Not that I was fat. I went into the Air Force straight out of a high school season of track where I was a 100 and 200 meter sprinter extraordinaire, fit as a fiddle and in the best shape of my life, with no bodyfat whatsoever, and still had to starve myself for a week just to make the weigh-in. It’s all because if you weigh more than the Air Force thinks you should, they then go by a bodyfat index measured simply by taking your age, measuring your neck, and then measuring your stomach. (Note not by measuring your actual bodyfat anywhere.) Plenty of old people ran around fat as can be. Plenty of fat people with bulbous rippling fat necks ran around with stomachs the size of Texas. While actually fit young people that didn’t have fat in their necks were harassed constantly for being “overweight”. It got tiresome. Having a fist shirt that hated me for no good reason was bad enough, but occasionally giving him (albeit very questionable) ammo was a nightmare that I got sick of fast.

So after an honorable discharge with four years and two months (thanks to a stop-loss issued during the second Gulf War) I moved on. And perhaps out of spite (or relief) found a true love of food and allowed my belly to actually grow. Along with my hair.

I moved to Wisconsin, to be near my father’s side of the family. (My mother’s side being in Illinois.) I settled down in Baraboo, nearish to Madison where I commuted an hour each way to work and back. (Hence why I bought my Prius.) I worked for a scientific company, Bruker AXS. They build x-ray diffraction machines. I worked mostly on their single-crystal diffraction (SCD) which is small molecules (APEX) and proteins (PROTEUM). I became a self-proclaimed GUI (graphical user interface) specialist. In other words I specialized in making the layout clean so that users could quickly grasp how to use a program. I also made tons of icons and graphics, mostly in Visual Studio (for the Windows .ico icons), Adobe Photoshop, and GIMP (an awesome freeware graphics utility). At first I worked in Visual C++/MFC to develop the very first version of their Proteum software, which was a massive usability improvement over their old SMART console app. Then as the software team actually reinvented itself, we switched to a base of the Python scripting language and Trolltech’s Qt using PyQt bindings.

I’ve got to say, Python and Qt kicks the ever-loving asterisk out of C++ and MFC. The code is just so much cleaner and easier to work with, and the forced indentation of Python keeps code a lot more readable.

SCD programming was interesting. It’s kind of like an electron microscope in that your intent is ultimately to look at molecules. But the means are completely different. You start by growing a tiny little crystal. Because all of the molecules in a crystal are aligned to each other. You then shoot the crystal with a very intense beam of x-rays. The x-rays refract off of the molecules in the crystal. A big x-ray catching camera called a detector catches these points of diffraction. (These days it’s done by using a thin layer of material that fluoresces -glows- when x-rays hit it. A lens of sorts focuses these points of florescence using glass fibers into a super-expensive high-resolution extremely cooled digital camera optical chip, which basically takes the picture.) As you spin the crystal and detector around to gain more and more viewpoints of how the x-rays diffract you collect enough data about your molecule to actually produce a ball-and-stick model of your molecule. Which you then refine with atomic thermal parameters and a bit of art. And voilĂ , you know everything there is to know about the molecules in your crystal. What atoms there are, how they’re bonded, what it all looks like, et cetera.

It sounds kind of silly to a lot of people. Why would someone need to know what is in their molecule. Didn’t they create it? Shouldn’t they know? Well, unfortunately chemistry is not always obvious. The same atoms can bond in different ways depending on catalysts, the amount of energy (heat) in the environment, and so forth. And so a lot of times while you know what you mixed together, the sum of the parts is less certain. You may have made the next wonder drug. Of you may have made something completely useless. So you mix up your batch, grow a crystal of it, and use x-ray diffraction to find out what you actually made. Plus there are all sorts of natural compounds, like DNA for example, where you didn’t make it but still want to know what it is in great detail.

At Bruker I also got to work on several OpenGL projects. Making 3D visualization tools was fun. I also got to maintain their KRYO-FLEX Control software, which cools a crystal down to well below freezing. It was educational to directly control hardware over a serial port, and fun to work with liquid nitrogen. Plus I got to do all sorts of other fun computer hardware-based tasks. I got to test and spec neat hardware like LCD touchscreen monitors, ACS ACOS1 smart cards and readers, Axis network cameras, and on and on. And all sorts of normal computer hardware. It was a great experience!

Well, except for one part. At one point we needed a program updated, as in massive changes, since we were switching to Qt. We just didn’t have the manpower. So we thought, hey, why not outsource? Well, the outsourcing went to India. And it was the worst experience ever. They introduced a million of stupid bugs and screwed up the memory handling so badly that we never could sort it all back out. But I caught plenty of god awful stupid errors like instantiating a the same variable name with the new operator over and over and over in the same section of code, all because they needed a pointer. And at the end they just used one delete. Talk about a memory leak! They also did things like look at the Qt sourcecode to find under-the-hood mechanisms instead of using the API. Trolltech later changed those mechanisms (but kept the API the same) thereby forcing the code to only work with one version of Qt with no way to upgrade. They also didn’t compile under both Windows and Linux like they were required to, which left a lot of work to us to sort out. And they were notorious for finding bugs in the code, commenting what crashes here and why, but then not fixing them. (Of course demanding more money if we wanted these bugs fixed.) There were plenty of other crazy gaffs too. And the worst part? After all of that horrid programming, one of their programmers had the nerve to repeatedly bug us about hiring them and relocating them to America. After that I never wanted to outsource a single thing. Just in the time spent fixing their bugs, I could have single-handedly rewritten the entire program from scratch and avoided all of those bugs. It’s really what we should have done in the first place, but at the time we just didn’t have the time. So instead we got Frankenstein’s monster.

And at home, how was my PC doing? Well the Pentium 133 finally got too expensive to keep running. I’d order used parts (there were no new) that cost a fortune and I’d be lucky if they actually worked when I got them. It became a nightmare. But I couldn’t afford a real new computer. So I made do with an eMachines Celeron 500 box with onboard AGP but no AGP slot. It overheated (how I don’t know) so I drilled holes in the front of the case and added an intake fan. The power supply kept failing, and I kept ordering new ones.

Finally, after years of saving, I had enough to really build a new box. It was a Pentium 4 Northwood C. It started at 2.6GHz, but I overclocked it to over 3GHz by raising the FSB. It had 1GB of dual-channel DDR of the Corsair XMS variety. The graphics started as a nVidia GeForce4 TI 4600, but later went to a GeForce 6600GT. The sound was (strangely) the onboard audio. Since it could do 5.1 I didn’t see the need to get a separate card. Same with network. All on an Asus P4P800 Deluxe motherboard with the 865PE Intel chipset and a lovely fanless northbridge. And put into a lovely Antec Sonata case. With a pre-cut AcoustiPack aural damping material kit. The CPU heatsink got upgraded to a very non-stock giant fanless heatsink, lapped, and using Arctic Silver 5 TIM. The exhaust 120mm fan of the case was temperature controlled by the PSU. The intake 120mm fan was an Antec self-regulating fan with its own thermal sensor. And I had two quiet 7200RPM hard drives in a RAID1 array. (For redundancy to prevent data loss if a hard drive failed.) Running Windows XP Pro. The system was not only sick to play on, but it was almost dead silent. The only noise that could be heard from the box was the graphics card fan, and even that had been about to be replaced with a fanless heatpipe/heatsink monstrosity. Thanks to HyperThreading it ran two instances of Folding@home 24/7. It was great! Or would have been. If it hadn’t been for the house fire. Between the water from the firemen and the smoke absorption properties of aural damping material, nothing salvageable was left.

I was forced to go back to budget. So I built an AMD Athlon 64 3000+ box with 1GB of Corsair Value Select DDR. One hard drive. One optical drive. MSI (shudder) motherboard with onboard everything. And a later upgrade to nVidia GeForce 7900 GT graphics. In the cheapest PoS case known to man, with an included crap PSU that thankfully hasn’t failed yet. Unfortunately, this is the PC I still use.

But ever since my sweet silent powerhouse PC I’ve had a dream - performance and aesthetics. A powerful PC in a silent, and pretty, package. Who could ask for more? Unfortunately designing it this way costs a lot. Personally though, I think it’s worth it.

Well, long story longer, things at Bruker went great. But nothing lasts forever. I didn’t want to leave, but I had to. I fell in love with a wonderful woman in Pennsylvania. So I moved to be with her. For now, at least, I’m still on contract with Bruker AXS, where I get to work from home and connect in through a VPN so that I can access the company CVS source code server as well as email and network. I have no idea how long that will last, but it pays the bills.

Here I am today. Working from home, for now. With my own blog. I’m no dummy when it comes to computers, inside or out. I know soft, firm, and hardware like no one’s business. And what I don’t know, I can easily learn if I ever find the need or desire to.

Now, that’s how I consider myself an IT expert. But what does a geek like me do for fun? (Besides building new computers, writing software, and blogging.)

Continue reading ‘Introducing Arah J. Leonard!’ »

Of Space Monkeys And Men - A Sickening Tale

So any of you who actually read my blog may be wondering where the heck I’ve been last week. There are no blog entries. What happened? Well, I’ll tell you what happened.

We live in such a wonderful world full of modern knowledge and science. We can send monkeys into space. We can send people to the moon. We can send cute little rovers to Mars … and most of them even survive their landing and go on to collect data far longer than their planned lifespan. (Yes Brits, that’s a cheap shot at you.) We can create artificial hearts. We can cure diseases that wiped out whole populations in our history.

But we can’t seem to teach people who work at fairly well todo restaurants how to freaking cook some gosh darn freaking food with proper freaking hygiene!

Yes, that’s right, I’ve been laid out by food poisoning.

I’m told there’s also a flu going around. So maybe the food poisoning wasn’t E. coli. Maybe it was influenza or freaking Godzilla shrunk down to nanite size by a raygun! I don’t know. I don’t care what it was. All I know is that I was exploding at both ends and probably should have gone to a hospital it was that bad. The only reason I didn’t is because I really don’t like hospitals and I knew if it got any worse my hun would find my rotting bloated carcass and call 911 so that the hospital would then save me. It was just a simple matter of needing rehydration and possibly antibiotics. But the human body, you see, is an incredibly resilient machine, so I wasn’t entirely worried. Plus I wasn’t exactly in my right mind. I was dehydrated and fevered after all.

So yes, last week I was mostly struggling to put fluids back into myself at a pace hopefully close at least to the rate at which they were leaving me. Thank Us for Gatorade!

And I was watching in despair as my hun came down with a milder version of the same bug.

And watching a lot of TV.

Including two movies.

All I have to say is, thank goodness for yet one more of man’s modern technological wonders: On Demand television. Can’t find anything on TV? Browse through a million lame and pathetic movies that no one in their right mind would pay for but will watch because they’re free. It makes both no sense and perfect sense at the same time. If the prices of the pay-for ones were more akin to that of normal movie rentals one might almost even consider the pay-for ones. But they’re not. So we don’t.

Now, I’ll let you in on a dirty little secret. One of my guilty pleasures is kid’s fantasy/sci-fi movies. I grew up in the age of movies like The Dark Crystal, The Neverending Story, Willow, et cetera. I mean you couldn’t throw a dead cat at the ’80s without hitting a good family-safe fantasy movie. Is it any wonder I played Dungeons and Dragons and to this day still want to become a fantasy/sci-fi author?

At this point you may be wondering if I still have that fever. No no. Bear with me. This private internationalized web confession has a point. While I was sick I watched yet another two out of date movies to further my collection of movie reviews that no one cares about. I watched Bridge to Terabithia and The Last Mimzy. And here are my thoughts on them:

What can I say about Bridge to Terabithia? I seem to recall thinking from the commercials that it was going to be about two kids making up their own strange world. I figured it’d be the perfect escape movie for folks who have done the Harry Potter thing enough by now to have paid enough for tuition to Hogwarts. And maybe it’d even bring an element of imagination back into children’s fantasy movies. (Since, you know, Harry and Co. seem to import their fantasy elements from the same old Tired Fantasies R Us company that Tolkien founded. He at least did a much better job of it.)

But alas, no. Bridge to Terabithia is not a movie about children creating a fantasy world. You might think it at first glance, but you’ll make a grave mistake when you take your kids to it. No. It’s a rather dull tale about a girl with a mental defect, making her seemingly unable to tell the difference between fantasy and reality. (Okay, so she’s “pretending”, but really it’s written so poorly that you do kind of wonder some times if she’s a bit touched in the head.) Reluctantly by her side is a boy who’s father brow-beats reality into him. I’m surprised there was no belting. Seriously. The fantasy world comprises about fifteen percent of the movie, at most. The rest are simple emotional turmoils of youth in this imperfect world especially with us career-driven money-obsessed adults that no longer have time for our kids. Culminated by even more trauma and drama. And topped off with a very bittersweet ending. I’m trying not to give away the whole plot for you on the off chance that you actually do see this movie. But if you take your kids to it, be prepared for traumatized kids and tough actual answers that exceed the usual parent answers of “babies come from storks”, “he’s in doggy heaven”, “I ran into a doorknob”, and the ever famous, “because I said so.” If you dare bring kids to this movie, you will need to be ready to give them real answers.

And in that, I almost feel like this movie should involve beating everyone who was involved in making and advertising it with a big foam cluebat. They tease you in with one candy-coated fantasy and then traumatize you with serious issues. I didn’t pay for that. Okay, so I didn’t pay at all, but still… Geeze!

Alright. Next movie. The Last Mimzy? Yeah. Thank goodness it’s the last one too. Another Mimzy might drive people to suicide.

So I don’t know what I was thinking. I was expecting some kind of kid’s adventure story. Lots of weird wild things that us stuffy old adults supposedly find nonsense. (Well, except for me because I watch kid’s fantasy movies.) So was it that? Umm … kind of. But not much. As an adventure movie goes, it was actually rather lacking in adventure. I’m hoping there’s a lot of this movie left on the cutting room floor, because otherwise the screenwriter(s) really suck at writing an adventure.

What I also wasn’t expecting was an extremely over-the-top preachy soapbox drama on how humanity is destroying ourselves. And I’m the kind of person who is standing in the choir! I mean heck, I’m not only a geeky science-loving technology maven, I’m also a wannabe-hippie tree-hugging Prius-driving recycle-box-filling home-gardening Wiccan. I mean geeze. I get it and I thought it was over the top. I can’t even imagine what John and Jane Doe off the street are going to think of how overdone that message was.

But so basically, The Last Mimzy is a boring lack-of-adventure story where two kids find artifacts sent back from the future necessary to save the future from the ravages our modern selves are doing to humanity and the world and stuff like that. And it adds in some Buddhism for wisdom. Or something. Blah.

Is that the whole story? Pretty much, yeah. I try not to ruin the endings of these things for you on the off chance you haven’t seen them and want to. But this movie is so lacking in every way that there’s really no way to tell you about it without giving most of it away. Sorry. There are some kind of neat special effects. Every once in a while.

If I didn’t know better I’d say a hippie wrote it to try and snap the message at parents more than to entertain kids.

Should you see The Last Mimzy? Will your kids be entertained? Let’s put it this way. Once upon a time I found The Smurfs and The Gummi Bears enthralling. To this day I can’t understand what I saw in those shows back then. If I had to watch hours of them today I’d probably hang myself. But back then they were exciting! A child in a similar age of innocence will probably be equally fascinated by The Last Mimzy. You? You will probably want to hang yourself. Don’t expect grown kids to sit still through this one.

So, thus ends my Sickie Vacation Movie Review. Sadly, I just can’t find a modern fantasy movie with the same awe and wonder of the 80s. I can’t help but feel sorry for our children. Thank Us for DVDs! Wouldn’t it be nice to see The Dark Crystal on Blu-Ray?