Thursday, April 07, 2011

How to Use Droid X Bootstrap

Note: I've been experimenting with alternate ROMs for my Droid X, as I've been unhappy with the support Motorola has offered in regards to new releases, performance, Motoblur bloat, etc. Hence, I'm posting the following primarily for myself as reference information so I can find it easily later. The following information was taken from a forum post found on www.android.net.

Requirements


  1. Get root
  2. Droid X Bootstrap- $2 on Market or free from Koush's website. 

Once app is installed, go to your app drawer and click on it. It will ask for Super User permissions, press yes/ok. This will stop it from booting into clockwork after every manual reboot.

How to Backup Your System

A backup is a snapshot of your system at that moment. This will be vital should you experience any issues modifying your phone.

  1. Click on Droid X Bootstrap app
  2. Click Bootstrap Recovery, then click OK when it says Success
  3. Click Reboot Recovery, phone will automatically reboot
  4. Once in the black screen with green writing, you will use the side volume rockers to move up and down and then the camera hard key to select.
  5. Move down to backup/restore and select it.
  6. Move to Backup and select it
  7. The phone will begin to create a full backup (nandroid) of your system, data, and cache. This will take about 5 minutes to generate. After it is finished it will take you back to the main screen. If you want to move back to previous screens use the back hard key.
  8. Select reboot system now.
  9. You can view your backups in your file manager. There will be a clockworkmod folder where the backups reside. You can change the name of the file, but do not use spaces or odd characters. For example, use a dash - rather than a backslash / for dates.

How to Restore a Backup

If you have issues with your setup after a ROM or theme install, you can restore a backup made when the system was running correctly.

  1. Click on Droid X Bootstrap app
  2. Click Bootstrap Recovery, then OK when it says Success
  3. Click Reboot Recovery and phone will automatically reboot.
  4. When black screen with green writing appears, select backup/restore.
  5. Then select Restore.
  6. Choose the backup you want to restore. If you don't change the name of the file, they have the date and time stamp as the file name.
  7. Select backup and then the phone will begin restoring the backup.
  8. When its finished, it will take you to main screen, select reboot system now.

How to Install a Rom

  1. Click Droid X Bootstrap app, hit bootstrap recovery, click ok, then reboot recovery.
  2. Go to mounts. (Optional, read instructions on ROM install) Mount system. If system is mounted, prompt will read "unmount system"
  3. Format data, click yes
  4. Format cache, click yes
  5. Back arrow
  6. Install zip from sd card
  7. Go to folder where zip is. If you downloaded zip from stock browser and didn't move it, it will be in the DOWNLOAD folder.
  8. Click on the zip you want to install, then yes.
  9. Once install is finished, back arrow, and reboot.

FAQ

  1. You can have as many backups as you'd like
  2. If you get and md5 sum error, its probably bacause you renamed the file with unrecognized characters.
  3. Yes, when you manually reboot it will always go to bootstrap recovery unless you do the very first step after installing. Just select reboot system now.
  4. If it does not boot into bootstrap recovery, and you need it to, you can boot into stock recovery and do a factory reset and then restore a backup.

How to Boot Into Stock Recovery

  1. Hold power button and and home hard key.
  2. When M screen appears, release home key.
  3. A screen with a small green Droid and an ! will appear. Push search hard key.
  4. Use volume rocker to select wipe data/cache then factory reset.

Thursday, May 13, 2010

Installing Ubuntu Netbook Remix 10.04 on a Dell 700m

At home, I have an older Dell 700m laptop which has had linux installed on it in one form or another for a few years. I have a soft spot for this laptop due to its small size and decent performance, even though a newer Toshiba I bought recently has more power. So, I thought that with Ubuntu 10.04 now out, I'd give the netbook remix a try.

For those of you not familiar with the netbook remix distribution of Ubuntu, it "is optimised to run on a new category of affordable Internet-centric devices called netbooks. It includes a new consumer-friendly interface that allows users to quickly and easily get on-line and use their favourite applications." Specifically, it has been designed to start up quickly and sports a user interface suitable for smaller sized screens, like the one that the Dell 700m sports.

So I downloaded the Ubuntu Netbook Remix ISO and burned it to a CD. Newer laptops and netbooks support booting froma USB device, but I wasn't sure if the 700m supported this, and so went with the sure thing. Sliding the CD into the CD-ROM tray, I reboot the computer and wait.

Hrm. After a minute or two, the computer has stopped accessing the CD, but the screen is black. Hrm. I try a few kernel boot options from the grub menu (like noacpi, and a few others), and continue to receive the black screen devoid of all things linuxy. You know what? After banging my head on the 10.04 server install, I am now getting a bit irate. I'm at home, spending what little free time I have trying to get this SOB working, and it just isn't giving me the time of day - time to shut it down for the evening before I go supernova.

Fast forward to the next day. Doing a bit of research on the Ubuntu Forums (a good support site, although a bit overwhelmed right now due to the release), I find that I am not alone. It turns out that laptops sporting the Intel 855GM video chipset (and others in that family) were having severe problems with the kernel. I find this especially ironic, since according to the netbook remix site, "Canonical has collaborated with Intel...". *snort*

There is a workaround (or two, or three, or four) for this problem, and I appended the "i915.modeset=1" kernel boot parameter to the grub configuration, and I was then able to get video (which is always helpful for those of us with eyes). So the install finally went through to completion, and I had a netbook install on my Dell 700m.

Unfortunately, the 3D portion of the Intel drivers must not be enabled, because performance of the 3D enabled netbook launcher is atrocious. We are talking about several second delays when switching categories, slow/nonexistent feedback when launching an application. Once you get a normal application launched, then it performs fine (like chrome or the gnome terminal app).

So, that is where it stands so far. I am expecting a kernel update in the very near future to sort out the Intel video bug, and then everything will be fine. However, I pity the fool who tries to install the netbook remix with a similar video chipset, and isn't very familiar with linux.

Tuesday, May 11, 2010

Ubuntu Installed on New Server

When we last left our hero, I was struggling to get Ubuntu 10.04 (Lucid Lynx) up and running on a new server box with software RAID 1. Since that time, I have scoured the Ubuntu forums and searched the bug report databases, and found that I was not alone in my frustration. While misery does love company, this did nothing to help me resolve the situation at hand.

In the meantime, the flaky VMware server box continued to act flaky. I had had enough, and decided to try installing the previous release of Ubuntu, 9.10 (Karmic Koala). Unlike my previous attempts with 10.04, 9.10 installed perfectly the first time and I was in business! To quote John McClane in Die Hard, "Yippee-ki-yay, motherfucker."

The next step I took in my journey to server nirvana was to read up on Ubuntu's Uncomplicated Firewall, ufw for short. As the name implies, it is trivial to set up and use if you have a modicum of networking knowledge (quick test: on which port does an HTTP server usually listen?). Using ufw, I locked down the server nice and tight, allowing connections from our local network and my home IP address (for remote administration).

Next came the virtualization software installation. I have become convinced that VMware Server is not the virtualization software for me. The web based administration software was nice, when it worked. However, I found that when I most needed it to work, it oftentimes did not. In that, it is remarkably like an automobile not starting up in a bad horror movie.

I've worked with VirtualBox as a desktop virtualization solution, and knew that it could also operate in a "headless" (think no GUI) mode. So, I took the plunge and install VirtualBox 3.1 on the new server. If you want to look into installing VirtualBox for a similar purpose, I can't recommend this site enough - it helped me out enormously and walked me through the process in an almost pain-free manner.

Thankfully, VirtualBox can use VMware server's virtual disk drive files (vmdk), so I moved our web server virtual machine over from the old VMware install to the new VirtualBox ... ummm... box. My heart stopped a bit when I first tried to start up the new virtual machine, as it would not boot. However, after checking the "Enable IO APIC support" in the virtual machine settings, I was off and running.

I am going to hold off on moving any other virtual machines from the old to the new until I am confident in the new system. Or the other one blows up - whichever comes first.

Thursday, April 29, 2010

Trying Out Ubuntu 10.04 RC1 - Fail!

The main server at my place of employment which houses three virtual machines (two linux, one XP) has been acting very flaky over the last month or so. The server tends to crash and restart itself, with the virtual machines sometime coming back up, and other times not.

The reason why the virtual machines do not come back up sometimes is due to the presence of VMware's .lck directories, which do not always get cleaned up appropriately. So, I have to go in there and remove the offending files, and then start the virtual machines back up via the VMware web console.

I have tried just about everything I can think of to find the cause of the server reboots. Temperatures of the four CPU cores is good (checked via the sensors command), as are the hard drives (checked with hddtemp). I've tested the memory, and all looks good there. So, I am at my wit's end.

The server is running Ubuntu 8.04 LTS, and a new release of LTS is due out tomorrow. I thought that I'd try installing the release candidate on a new server box I put together recently, and see how it faired. Unfortunately, after making my way through 98% of the installation, the installer failed when trying to install the grub2 boot loader.

Gah. There is an option for the legacy grub boot loader, so I tried that. No joy. I am not trying to installed the server OS on exotic hardware here. It is a RAID 1 setup, but I was able to install the same setup in 8.04. I have heard that there is a bug in grub2 relating to multi-boot systems, but that doesn't apply to my setup.

Frak. Frakfrakfrakfrak!

Thursday, November 12, 2009

An Early End to My Soccer Season


I blink my eyes and time seems to sweep by in great bounding leaps covering weeks at a time. Better to be busy than bored, I think, and my family certainly keeps me busy!

I've been playing in my third season of adult soccer, and this season has mostly been injury filled and disappointing. Ever since my ankle injury in January of this year, my right ankle has just not been "right". When one part of your body is injured, you naturally try to reduce the amount of stress placed on that area of the body. Unfortunately, doing this can often times cause problems for the other areas of your body which aren't used to this new stress.

Since my ankle was injured, I haven't felt comfortable out on the field. Rolling an ankle increases the likelihood of doing it again, so it can become a fairly vicious injury-circle. I've tried doing some ankle strengthening exercises, and was beginning to feel better when I was struck down by another injury.

A few people on my team were scrimmaging against some local soccer coaches, and after about an hour and a half of a good scrimmage, I found myself attempting to make up on defense forthe sweeper who muffed getting the ball out of the back. I caught up with the striker and tried sticking a leg out in front to get a touch on the ball, when I suddenly felt my hamstrings go *sproing* (or something like that).

I went down immediately to try and minimize any possible damage beyond what was already done, and made my way home with an ice pack grafted onto my leg. It wasn't a horrible injury in regards to pain, especially compared to my previous calf muscle tears and ankle injury, but it was enough to know that I would not be able to play soccer for a few weeks.

After three weeks, I came back to the pitch to try and give it a go again after running on it a bit during my lunch hour. However, it was not rested enough and after one attempted sprint to close on another player during a game, I knew I was done for the season and took myself out of the game.

So here I am, three weeks from my previous attempt at returning, and now I'm trying a bit of jogging and plan to work my way back up to the sprinting one needs to do during a game. With my season over, I can now focus on taking it one step at a time to try and ensure that when the next season rolls around, I'll be ready.

P.S. Getting old sucks!

Wednesday, September 02, 2009

Sumatra PDF Viewer

This will be a very quick blog post, perhaps more appropriately classified as a "shout-out". The PDF format is wonderful for preserving detailed formatting across multiple platforms, and is all over the web. Thus, we need an application to view these files.

Most people are familiar with Adobe Acrobat Viewer, as Adobe was the original creator of the PDF format, and hence had the first authoring and viewing tools for the PDF format. Unfortunately, their viewer application continues to increase is size and decrease in speed with each successive release. The later versions of the application go so far as to auto-run portions of the application at startup, to reduce perceived start up times later on when you actually want to view a PDF file (much like that bloated pig of an office suite - MS Office).

If you are looking for a lighter weight solution to viewing PDF files on the Windows platform, let me recommend the Sumatra PDF Viewer. It is light weight, clean, and functional. It does not contain all of the bells and whistles in Adobe Acrobat Viewer (like form filling), but then again, that is why it is so small and fast.

Give it a try and see if it does what you need - so far, it has exceeded all of my requirements and expectations!

P.S. I was using Foxit for a while, but had problems with it updating under Vista. Plus, all of the ads sort of soured me on the software.

Friday, August 14, 2009

Drupal

At work this week, I've been looking at upgrading our website from the home-built effort that is looking fairly stale to something a bit more modern and up to date. I created the basic framework of the site many years ago, using Apache with PHP on a linux server.

The site is extremely fast, but it is difficult to edit existing content, or add more. Furthermore, there is no database back end for the site, which means no users with permissions approriate to their need.

In thinking about our site redesign, I realized that I should take a serious look at a well supported content management system (or CMS) which fulfilled the following requirements:
  1. Must support user / password logins and configurable roles for each. As an example, there should be an anonymous user role for random visitors to our site, an authorized user role for people who have successfully registered with the site, and then specialized roles such as "content creator", "administrator", "product user under maintenance", "partner", etc.
  2. For the above mentioned roles, different security levels and options should be available. Only users with the "partner" role should be able to access the "Partner Portal" of our site. Only users with the "product user under maintenance" role should be able to download an update to the product in question.
  3. Non-technical people should be able to create content on the site.
  4. It needs to support different visual styles (or themes), and I need to find one that looks good.
  5. Support for new stories, regular pages, and maybe even book-type formats will be needed.
  6. Allow authorized users to comment upon stories and pages.
  7. It has to be flexible.
After looking around a while, I decided to give Drupal a try. I was vaguely familiar with it in passing, but had not yet really tried to do anything with it, which is usually when the fiddly bits will show up.

I downloaded the Drupal 6 Turnkey Appliance ISO, and installed it on new virtual machine using Sun's VirtualBox (which is a great product). Over the course of the last several days, I have been planning and implementing the new version of our website, and have a few observations on Drupal.

First of all, there are many themes available for Drupal, which may be experienced by visiting the Drupal Theme Garden. I have selected a few that I like, with a definite favorite. If you want to know which one I selected, well you'll just have to wait until we roll out the new site!

I have found Drupal to be extremely flexible. It supports a module system where functionality can be added to the core system, taking it the direction you want to go. I have installed modules which allow for access control mechanisms (requirement #2 above), book style content, and a host of others which improve the look and function of the site.

With all of the options and flexibility, starting out can be a bit daunting. Luckilly, the main Drupal website contains some useful documentation to help you understand, install, and then implement it. In my humble opinion, the investment is well worth it if you are looking at a website similar to the one I've outlined above.

Monday, July 20, 2009

Auto Repair Weekend

In preperation for my family's upcoming vacation to Cayucos, I decided to give our 2001 Chevy Suburban a tune-up and try to figure out why it was idling low and occassionally stalling at idle. My Saturday was fairly wide open, other than a practice scheduled for my daughter's soccer team that I would need to get her to.

I haven't done much work on the Suburban since we bought it (with 21k miles on the odometer), and now with 90k miles on it, the 'burban was due for some servicing. I installed a K&N air filter at around 30k miles, so it was time to clean and re-charge it. This was a fairly trivial task, once I purchased the recharge kit from the auto parts store.

Next, I decided to change the spark plugs. Most new cars don't need the plugs swapped out until about 100k miles, but since I was experiencing the idling problem, I thought it would be a good first stab at the problem. One thing nice about the Suburban is that the engine is fairly accessible compared to many other cars. I bought 8 new AC Delco Iridium plugs, and took out the old plugs and replaced them with the new ones, only losing around 5 pouds of weight due to sweat during the process.

Next up was a new fuel filter. I have replaced it once before on the Suburban, but it is always fun trying to squirm under the beast and disconnect fuel lines, etc. About an hour after I started and many expletives later, the new fuel filter was in and I could call it a day after I started her back up and gave her a test drive.

Unfortunately, all the work I completed had no effect on the low idle / stalling problem - argh! I was done working on the car for the day.

On Sunday, I decided to research the problem on the internet, and found that this is a somewhat common problem for the Chevy Vortec engines. The most common advice I found was to clean out the throttle body, and this would usually take care of the problem. The procedure couldn't have been easier. Disconnecting the air intake from the throttle body allowed me to take a rag with a bit of acetone on it, and clean some built up carbon deposits around and on the throttle plate. The job (which would have run me in the neighborhood of $50 - $150 at the dealer) took 15 minutes and cost maybe $0.25 in acetone, and the problem was completely solved!


Tuesday, June 09, 2009

Baseball Season Wrap-Up

The little league baseball season was wrapped up for my team (AAA division, mostly 9-10 year olds) this Saturday, when closing day ceremonies took place. After the ceremony, I found myself placed in a dunk tank, with my players eagerly lining up to dunk me with a gleam in their eyes.

Our regular season record was 10 wins and 8 losses, good for second place in the league. I had initially hoped for better at the start of the season, but no plan survives contact very long. We played the #1 team very hard on all but a few occassions, so my players can hold their head high and be proud of the progress made this year.

In the Vista City Tournament, we won our first two games convincingly, and then lost two games to finish tied for 5th place. Our first loss was against the eventual 1st place team, and we should have won that game except for the wheels falling off of our defense in one inning. And so it goes...

So now I will have to find something to do with all of the time with which I now find myself. I figured out that during the season, I spent well over 200 hours on meetings, practices, and games. This does not take into account time spent going to/from locations, nor the time spent at work planning lineups and position charts. Yes, I was kept very busy, and yes I will miss it!

Next year, my son will move up to the Major division, and I look forward to the challenges that it will bring, as well as the improved quality of game play. It is so very rewarding to see kids I have coached since tee-ball turn into smart and skillful baseball players!

Friday, April 24, 2009

It's Quiet Around Here... Too Quiet

What can I say other than, "Life is very busy". I'll try to provide a few updates here, however.

Little League Baseball

The season is well into the second half, and it looks as if our team will finish 2nd place. We only play the #1 team twice in the second half, and have already lost both of those games. Thus, barring some kind of divine intervention, the Angels will have to be happy with a 2nd place finish. However, once the regular season is complete, we get to look forward to the city tournament! So the team is still practicing hard and trying to refine our game with that tournament in our sights.

Soccer

My soccer team is currently undefeated, with 1 win and 5 ties! It seems that all 4 teams in our men's 35+ division are fairly evenly matched, which is good. My ankle injury has still not yet healed completely, which I find irritating. I am guessing that it will not be 100% good for a few more months, but it is good enough to play on now, so I do what I can.

Family

The rest of the family is doing just fine. We camped at San Elijo state beach for 4 nights during the kids' spring break, and the weather cooperated with us fairly well for a majority of the time there. In July we are looking forward to a vacation in the Central Coast as well.

Monday, February 23, 2009

What's Been Happening in My World

It has been well over a month since I last wrote anything here, and as you may guess, I have been very busy. I'll try to catch up a bit with this post.

Ankle Injury Update

My ankle has healed up fairly well, and is probably back up to 80% of it's original strength after 6 weeks. I've played a bit of soccer over the last two Sunday afternoons, and it just isn't quite right yet. I have also had a large blister form both days on my right instep. I'm not sure if I am doing something awkward to compensate for the weakened ankle, or if it is th new shoes. Next week, I'll be playing back in my old pair of Copa Mundials and see if the situation improves a bit.

Our first soccer game of the new season is on Friday, March 6th. I'd like to be somewhere in the vicinity of "being in good shape" by then.

Little League Baseball

A new baseball season is underway, and I am back at the helm managing my son's AAA baseball team, the Angels. The rain has interfered with practices a bit, so we've done the best we can. Opening day in on Saturday, March 7th, so we have 2 more weeks of practices to get some of the rust off of the ole baseball gears. I'm hoping for a good season - it always seems to come down to the pitching!

New Technology

I picked up a new Toshiba laptop on Saturday from Fry's. At $399, it was too good of a deal to pass up, and our old Dell 700m has been showing signs of aging for quite some time. The new laptop sports an Intel Core Two Duo T3400 CPU (2.16 GHz, 667 MHz FSB), 2 gigabytes of RAM, a decently size 160GB hard drive, and a nice 15.4" wide screen display (1280 x 800).

I've gone through and stripped out most of the crap that came bundled with the notebook (Norton begone!), and installed Firefox, OpenOffice, Notepad++, etc. Windows Vista Home Premium seems to work well on the PC (response is snappy, display is crisp), and it is my first experience with the OS. I actually installed the Windows 7 beta in a Virtualbox VM before ever seeing Windows Vista, and I can't say I see much of an improvement or difference between the two versions.

Windows Vista *is* a bit chatty with the UAC stuff, though, isn't it? Dialog boxes come flying at you during installation of new apps, but I don't mind it too much. I do believe that Windows 7 has improved in that regard. However, I don't see much that would compel anyone to upgrade from Vista to 7.

Friday, January 16, 2009

A Late Christmas Gift - Not Broken!

Woo-hoo! I received some great news yesterday during my appointment with the orthopedic surgeon. It turns out that the protrusion of bone on my lower fibula is, in the doctor's opinion, from a previous ankle sprain. My ankle is *not* broken - the x-rays were simply misinterpreted by the Urgent Care doctor, which can (and will) happen if they are not experts in the skelto-musculature realm of medicine.

So, the doc said that I should try putting weight on my ankle as I could, first with both crutches, then with a single crutch on the good side, and then with no crutches. When I got back home, I tested out my ankle and was able to put weight on it with two, then one crutch. Later that evening, I discarded the single crutch and was able to hobble around fairly well, even helping out with the preparation for dinner.

To cap off the night, I was able to ascend our stairs to the second story and actually tuck in my kids and sleep in my own bed for the first time in four days.

As far as further recovery is concerned, the doctor said that wearing a brace might be a good idea for the next few weeks, and to work on my range of motion in the ankle. Running is out of the question for about three weeks, but biking would be a good exercise when my ankle feels up to it. I am hoping to be back in soccer shape in fixe to six weeks - we'll see how things go.

I can not express how happy I am to be rid of those crutches! The four days I had to deal with them has given me a small dose of insight into what it must be like to permanently live with a disability. Just being able to walk and use my hands at the same time seems like an amazing gift to me right now.

Thursday, January 15, 2009

Epic Fail - My Broken Ankle


Ug. Maybe I should rename this blog to Alan's Place Where He Bitches About His Injuries...

Yes, a new year has come, and a new injury along with it. Up until this time in my life, I have been fortunate enough to have never broken a bone in my body. I was pure, as far as my calcified frame is concerned. Sure, the paint on the outside has suffered a few abrasions, burns, and general wear and tear over the years, but the frame on which it all rides was still in decent shape.

On Sunday, I play a pick-up game of soccer at a local park. After about 45 minutes of play, I was chasing down a ball and went up in the air for it. I landed with all of my weight on my right foot, which normally isn't a problem. However, when that right foot in turn lands on some kind of divot, problems can (and did) arise.

My right ankle rolled outwards as all of my weight bore down, and a 'pop' was heard by me and the player closest to me. I went down like a house of cards, to my hands and knees. I managed to crawl on my hands and knees off the field, where one of the other guys gave me some ice in a ziplock bag to ice it down.

After about 10 minutes of icing it down, I experimented with the joint a bit and found that I could move it around without much discomfort at all. I put on my flip-flops, and tested out putting some weight on it, and it seemed ok. Maybe it wasn't too bad after all?

I decided to call it a day, and then walked to my truck without too much difficulty. Some of the guys there asked if I needed any help, and I thanked them but said that it looked like it might not be too bad. One of them urged me to have it x-rayed, lest I wake up in the middle of the night with an ankle the size of a cantaloupe.

I almost dismissed the advice, except for the memory of the 'pop' sound. That was something new. So, I headed off to the local Urgent Care which was blessedly empty. After a few x-rays, the doc came in and said that it looks like there was a bone chip in my right ankle, and asked me if I had broken my ankle in the past? He said that he would consult with a radiologist the following day, and refer me to an orthopedic surgeon if it was a fracture.

The nurse splinted up my foot and calf, handed me a pair of crutches, a prescription for vicodin, and then I was sent on my way home. My wife picked me up, as I can not exert any pressure on the joint, and hence can not drive. Oh boy, this is going to be fun.

On Monday, I got an referral and appointment to see an orthopedic surgeon, which I will go to in a few minutes. More information will be forthcoming as it arrives. I am praying that no surgery will be needed, and that the break is minor.

Thursday, December 04, 2008

Python Challenge

Of all the scripting languages out there, I would have to say that Python is my favorite. I don't use it a lot, but when I need to whip up some kind of task to do some heavy text processing, or pull email down from my gMail account, I know that python can do it.

Yesterday, Ars Technica had a nice article on learning python via online resources. I was already aware of most of the references mentioned in the article, but in the comments to the article I found a gem - The Python Challenge.

The best way I can explain the Python Challenge is that it is like an adventure game with problems that can be solved using a few lines of python code. You start with problem number one, and when you have completed the problem, it will lead you to the URL for problem #2. Of course, what makes the challenge so challenging is that the problems are not always clearly spelled out on the web page. At times you'll need to view the source code and decipher clues to even find what the problem is. And then, of course, you'll need to solve the programming problem.

Right now, I am stuck on #6. I solved the programming problem, and received the ending clue ("collect the comments"), but I am not sure what to do now. I'll let it simmer in the back of my head for a while before I resort to looking for hints.

As a side note, these problems can also be solved with perl and even bash scripts. After you have completed a problem, a solution wiki page for that problem becomes available so you can see how other people solved the problem, which is always interesting and helpful.

Thursday, November 20, 2008

Unicode and Delphi 2009

I must confess that when it comes to Unicode, I have buried my head in the sand and deliberately tried to ignore the whole transition mess from the English-centric ANSI based character set to the world-friendly Unicode standard.

To get a brief background on Unicode and what it means to developers, please see Joel's article. It is a good briefing on the problem that Unicode solves, and addresses the basics.

As mentioned in other programming related posts, my company's primary products are developed using Delphi 2007 for the Windows platform. One of the primary products is also supported on the Linux platform by using Free Pascal.

Recently, CodeGear released a new version of Delphi - 2009. Doing some research on the product, it appears as if they have made a fairly significant change to the language. In previous versions, the string type was an AnsiString, which means that one characters takes up one byte of memory. In the 2009 version, the string type is now mapped to a UnicodeString. Since a Unicode string can have one of several types of encoding which map one character to one or more bytes, it is possible that this change may drastically affect any legacy Delphi application which processes strings, especially if it is a library which is used by other applications.

Thankfully, CodeGear has provided developers with three articles {part 1, part 2, part 3} detailing the changes made, and gotchas to look out for when porting legacy applications over to Delphi 2009. Please take a look at these articles to see what the potential obstacles are when moving your applications over, and consider the difficulties. Third party components will most likely also need to be tweaked to work with Delphi 2009, so keep that in mind as well. You can find PBear's HTML viewer updated for Delphi 2009 here, along with other free components.

As far as Free Pascal is concerned, Unicode support and compatibility is something that they are currently hashing through. Until a Delphi 2009 Unicode compatibility mode can be implemented in Free Pascal, we will be forced to stick with Delphi 2007 for the time being.

Tuesday, November 11, 2008

The Matrix Runs Windows

Check it out here. That is all!

Wednesday, August 20, 2008

Calf Muscle Rehabilitation and Soccer

It has been just over one year since my last calf muscle injury. The blog post I made on the subject is the #1 post for my humble blog, as it pops up as a search result thanks to Google. As regular readers (I have at least 2) may know, I surf quite a bit - working 5 minutes away from the beach lets me use my lunch hour to get some water time in.

While I love surfing, it doesn't do much to stretch out or strengthen my lower body (however, it is very good for the upper body). So, I decided to look around for an adult soccer league to join that would be good exercise for my legs. Luckily, I found a men's over-35 team in Carlsbad that needed a few players, so I signed up.

About 2 weeks ago, I suited up in shin guards and cleats, and went down to a local field to try and get my feet on the ball a bit. I have coached youth soccer for the last 4 years, and look forward to actually playing again.

You can probably guess what happened next... After a workout on Tuesday, my right lower calf muscle felt a little tweaked, but not too bad - just a bit uncomfortable. On Thursday, I laced up and went to jog across the field and back to warm up a bit before stretching, and on the return leg the tweak cranked up a lot, and I had to stop and limp back.

It didn't feel like my previous two incidents, so I think that I did not tear the muscle - maybe just strained it or something like that. I limped for about 24 hours, and then started looking at how to stretch out the calf muscles to try and prevent this in the future.

I have stretched in the past, but I have never focused on the calf muscles. Instead, I'd work the quads, hammys, and groin. I realized that I had been neglecting my calves - pretty stupid of me (especially after two injuries).

Maybe neglecting is the wrong word... I have never been shown how to stretch out the calf, in all the sports I have played and gym classes taken through school and even in college. So, with the theory of "knowing your enemy" in mind, I first did some reading up on the calf muscle, which is actually a pair of muscles: the gastrocnemius and soleus. The article even mentions torn calf muscles, the 'pop' that so many of us feel, and the conditions that triggered it in my cases: sudden acceleration and changes in direction.

Next, I did a search on stretches focusing on the pair of calf muscles, and found these: gastrocnemius stretch and soleus stretch. Since I found these videos, I've been doing both stretches for 90 seconds on each leg, and I do believe that my lower legs are feeling better. I'm not back to 100% yet, but I can make my way around the pitch if I take care to avoid sudden acceleration and changes in direction. I hope to be back up to 95% before the first game of our season, which starts on September 5th.

If you have hurt your calf, please be careful to not stretch it out prematurely. A bad tear can take a long time to heal, so when you start trying to stretch, let common sense be your guide. Stretch slowly and gently, avoiding bouncing. Any pain should be a sign that you are doing too much too fast.

To keep the rest of your lower body in shape, I found that biking was fairly low impact for my most recent injury, so long as I didn't stand up and pedal (pushing on the front portion of the foot as you do to begin a sprint).

If you know of any other good stretches, or want to talk about your calf injury, please feel free to comment below!

Thursday, August 14, 2008

Trip to Italy - Part 3

The final destination of our grand Italian vacation was the beautiful city of Venice. They say that the farther you go North in Italy, the more expensive it gets. From our limited experience (from Naples in the southern portion of the country, to Rome in the middle, and then Venice in the North), I can indeed confirm this piece of folk wisdom.


Venice's Grand Canal

Venice is a tourist destination for a large number of people from Europe and Asia. The city seemed much more ritzy-touristy than Rome, which had many historical sites. Venice, on the other hand, features a large number of ways to separate you from your money via high-end shops and restaurants.


Dining al Fresco

The municipal coat of arms for Venice features a winged lion, and you see this symbol throughout Venice. I can hardly think of a better mascot, short of Trogdor the Burninator.



We walked through the open air market near the Rialto Bridge one morning, and saw some of the local produce and seafood, which is boated in daily.


Local Produce


Fresh Seafood

The architecture of Venice fascinated me the most. It is a city with almost no land unused. The alleyways twist and wind through the buildings, occasionally meeting in a small plaza or crossing a canal. The lesser traveled walkways (sometimes only 3 or 4 people wide) can be eerily quiet even in the middle of the day, and it is always interesting to see what shops are found on these lesser traveled routes.


Horse - the other red meat!

After three days in Venice and 10 days in Italy, we had to make our way back home. It was a great vacation with the family, and something I think we will all remember for the rest of our lives.

Wednesday, August 06, 2008

Trip to Italy - Part 2

While we stayed in Rome for the week, we made two day trips during those 7 days. Our first day trip (by way of a very comfortable high speed train) was to Florence. We had reservations to the Accademia dell'Arte del Disegno to see Michelangelo's David and several other works of art (sorry, no cameras allowed!).


Fountain in Florence

We then walked about the city, taking in the sights and sounds. A bus tour sped us through the highlights of the locale, and we visited the Ponte Vecchio ("old bridge"). The Ponte Vecchio was first constructed by the Romans, and was the only bridge not destroyed by the German forces during their withdrawl from Italy in 1944, allegedly because of an express order by Hitler.

Our second day trip took us South of Rome, to Naples. From Naples we caught a local train to Pompeii. What can I say about Pompeii, other than it was truly an amazing experience? It boggles my mind how complete a city it was, nearly 2000 years ago!


Pompeii Baking Area

The city is so well preserved that some of the artwork (mostly frescos) is still visible, and quite beautiful.


Fresco on the wall of a Pompeii house

We spent a good 5 hours walking around Pompeii, and could have easily extended that to a full day if we had the time. Herculaneum is Pompeii's lesser known sister city, which faced a similar fate. That archeological site would have needed another day in and of itself as well.


Vesuvius and Family

We then made our way back to Naples, and had pizza Margherita at pizzeria “Da Michele” - supposedly the place which originated this style of pizza. I can't say too much positive about the city of Naples itself (other than the pizza), as it was still recovering from a trash workers strike. We had to be extra careful of pick-pockets and others, and that extra vigilance can take a toll on your ability to relax and enjoy the sights and sounds.

My next post will cover our three days in Venice!

Wednesday, May 21, 2008

Trip to Italy - Part 1

Well, things have been very busy for me and my family, but I have a few spare minutes and thought that I would update the blog on our biggest event this year so far - our trip to Italy. We went with our extended family, and everyone had a great time.

Several months before leaving, I decided to try and pick up as much of the Italian language as possible. I purchased a few books, and even gave the (very boring) Rosetta Stone program a try. However, the best tool I found for picking up conversational Italian is Pimsleur's Speak and Read Italian.

There are three courses in the series, each consisting of 30 lessons. Each lesson is just under 30 minutes, which just so happens to perfectly coincide with my commute time. Thus, I would often listen to a lesson on the way to work, and then repeat it on the way home or advance to the next one. I made good progress through the lessons, and made it half way through the Italian II course before we headed off to Italy.

We left for Italy on the Saturday before Easter, and actually arrived in Rome Easter morning. We spent that day checking into our hotel, relaxing, and trying to get a feel for the new surroundings.


View from Our Room

There are a lot of sights to see in Rome, as one might expect of a city with over 2,700 years of history. We took a bus tour around The Eternal City to get a feel for it, and stopped off at Piazza Navona to walk around a bit.


Piazza Navona

A short walk from there, and you'll find yourself at the Pantheon.


Pantheon

There are many fountains throughout Rome, built to bring water to the people. The water is fresh and we drank it often during our walks through Rome.

Trevi Fountain

My youngest son thought that the Colosseum was extremely impressive, and I would have to agree. Although parts of it were cannibalized for construction later on in Rome's history, a good portion of it still stands today. Perhaps most impressive were the storage areas underneath the main "floor", where the gladiators and animals they fought were kept. You can see today where elevators raised new and exciting beasts to the arena floor.


Colosseum

Exploring the forum and the ruins around it are definitely worth your time. Don't miss out on hiking up Palatine Hill to get a breathtaking view of Rome, and stroll through the Emperor's palace.


Family

My next post will cover two of our days trips from Rome...