Server Move A Success

After spending with our ServerBeach servers in Texas for almost 3 years, Lawrence and I finally decided it was time to upgrade — especially since the cost of the new upgraded server is the same as the old one!

So Loz spent about a week prepping for the move, using rsync to backup files from the old server to the new…. etc. The move was relatively painless. But I just hate moving around, virtually or otherwise. But the move was a success albeit there were minor hiccups. I bet nobody even noticed… 😉

How Flickr Saves Me Time

I basically stopped processing all the digital photos we shot last August when my work finally caught up with me. That caused an uproar among some friends and family (mostly from Grace). So I started looking at some alternatives on digital photo management for online sharing.

I looked at Google’s Picasa (which is basically a lame duck now that Google’s sitting on top of it), Yahoo’s latest prized acquisition, Flickr, Sony’s ImageStation and hosting my own using Gallery 2. There are also a few other online photo sharing services I considered, but none worth my time to look deep.

Picasa
Pros: Probably won’t disappear after a couple of years; decent interface for photo management; relatively fast site; iPhoto plugin readily available and free.

Cons: Though the online photo management interface is not bad, it still lacks the “polish” that Flickr has; Google doesn’t seem to be doing much with it lately; limited API for people who want to tinker with its photo sharing API; no cheap photo prints via its service.

Flickr
Pros: Very nice and actively used API for tinkerers like me. In fact, there’s a wrapper to its API in virtually all major modern languages — PHP, Java, Perl, Python… etc; offers incredible control on manipulating its photo sharing services via the API; active developer community; incredible and polished user interface; easy to use; excellent iPhoto plugins (more about this later); great photo management capabilities; excellent WordPress plugin for publishing Flickr photos.

Cons: Photo printing service is a rip off for what they charge.

ImageStation
Pros: Offers cheapest photo processing per print by far. Otherwise, technically, none significant.

Cons: No developer APIs; horrible user interface (try making a calendar with it… yikes!)

Gallery2
Pros: Control over almost every aspect of the photo sharing since it’d be hosted on my own server; some decent iPhoto plugins.

Cons: The site’s screwed if the server is fried or there’s too much traffic; obviously no connection to any kind of photo printing service; dependent of me uploading the photos.

So, clearly, Flickr is the easy winner of the bunch. Now more about how I am using Flickr services. I have a streamlined operation where everything from picking photos, writing captions to publishing just takes a few minutes. The key here is a nice little iPhoto plugin called FlickrExport for iPhoto (there’s a more powerful version for Aperture for you Pro users out there). Basically all I do is a simple 3 step process in publishing the photos from downloading from the camera all the way to Flickr.

1. Apple-click all the images I want to upload to Flickr in iPhoto. When done, go to “File” and choose “Export”. Select the FlickrExport tab.
2. Select all the thumbnails, set the maximum size to upload (dimension wise). Assign tags; write captions.
3. Upload. Done.

Once the images are up there at Flickr, I don’t have to worry about them anymore. But the nice added bonus is the APIs for when I feel like building my own gallery using images that are already being hosted at Flickr. All my application has to do it to pull those images and arrange them in the way I choose to in my own designs. Very NICE!

Most importantly, for me to easily publish those photos on my own blog, there’s a nice WordPress plugin called Flickr Photo Album that allows me to browse through images in my Flickr account from within WordPress and choose which images I want to include in my entries. No more manually pre-processing images before I blog! Sweet!

Shady Brooklyn Stores

For those of you bargain hunters, I know some of you might have seen some great deals on electronic gadgets with shipping addresses from Brooklyn, NY. I know I certainly have. Everything, meaning their websites, looks official and legit on the surface. But unless you’ve been to those parts of Brooklyn, NY, you just don’t know where the hell you are ordering your expensive toys from. A nice fellow by th name of Don Wiss started checking out these stores on his bike. And he has some very interesting, let’s just say, “discoveries.”

Great work, Don.

via [Don Wiss’ Brooklyn StoreFronts]

My Impressions on Canon SD800

Finally. I upgraded my digital camera to a Canon SD800. It was long overdue having missed quite a bit of Bryan’s candid shots.

Some thoughts on this modern marvel:

1. The body feels like it was built with “cheap”, low grade plastics. In comparison, Canon’s older S-series cameras were built with metal which gave them a sturdy and an indestructible feel. My theory for the use of cheap plastics is: a) it’s all about profit margin baby — plastic is cheaper than metal, or b) Canon is thinking about us users — plastic means lighter weight.

2. The door cover to where all the communication ports are is flimsy and, again, feels cheap. I feel like I am going to break that stupid thing in a few months. My theory? See 1a. God damn evil corporations.

3. The new generation Canon Digic-III chip is considerably faster and takes somewhat sharper images than my S230. At maximum resolution, 90 pictures equals to approximately 250MB worth of JPGs.

4. HUGE 2.5″ LCD screen that’s going to be main source of battery drain. But boy, it looks beautiful.

5. Face detection actually works — that is — if the subject is front-facing. But what’s REALLY cool is that the face detection technology actually moves with the subject if you have an active kid like Bryan. And it will follow and focus on where the face is fairly accurately.

6. The camera packs in way too many features than an average consumer would ever use. I mean, when was the last time you wished you could replace the color of something with another color IN CAMERA! I mean, com’on! I don’t want to pay for that B.S. feature, Canon.

7. Canon seems to assume that people will spend A LOT of time customizing this camera. There are features where you can make “folders” and assign pictures to various categories that was predefined. Um, yeah… nice try. Another useless feature. Like I am going to spend my time organizing my photos IN THE DAMN CAMERA.

8. Focusing can be weak and slow. But overall, it does the job. But I just hate it when you thought you got a sharp focus in the camera, but then it looks all out of focus after it’s downloaded.

9. Improved dynamic range, but it’s no RAW. Bright areas still get washed out relatively easily. But it’s definitely a step up from my S230.

10. Acceptable lag upon powering up and between shoots. Nothing is more annoying than having to wait for the camera to process the previous image that you miss out on the next great shot. Obviously this is no continuous shoot in DSLR cameras. But man, it’s fast!

I like the fact that the camera is a much faster beast. But control wise, it’s still no SLR. I look forward to the day when a DSLR with a decent dynamic range becomes more affordable.

Innovations by Bryan

At almost 19 months, Bryan has become incredibly innovative ways in dealing with daily issues using his problem solving skills. Here are a couple of examples.

A Whole New Game
Bryan has one of those multi-functional toy boxes that facilitates different types of learnings on each side of the box. One of the sides is an opening that allows Bryan to reach in to the center of the box to grab the blocks that he’d insert into the box from one of the sides. But he’s outgrown the box a while ago.

Just recently we bought him a complete set of colorful wooden alphabets to play with because he just LOVES solving puzzles and match shapes of blocks. At first we thought alphabets would be kind of challenging. But within a couple of weeks, he knew exactly where each alphabet goes without any help. And because we always sound out the alphabets when he makes a match, he already knew how to pronounce a few of the alphabets. After a while, the game got pretty boring for him.

So one day he decided to invent his own game with the two toys — he dumps all of alphabets into the toy box. So instead of picking alphabets at will by looking at them, he spiced up the activity by randomly picking out an unknown alphabet and tried to match that specific alphabet he just picked out!

WOW!

Making the Association
Bryan is at the stage where he wants to help himself to everything he eats. And we allow him to make a mess most of the time to help build his self-confidence and fine-motor skills. But one of the challenges has been finding a cup size that he can comfortably hold on to for maximum control.

While having pancakes at a restaurant one time, we noticed the cup used for syrups was perfect size for his tiny palm to comfortably hold on to. So we cleaned and washed the cup and replaced syrups with water. He LOVED the cup. And he kept drinking and asking for refills with it like an alcoholic at a bar. It was really funny to see.

So last night Grace gave him a small glass of milk to drink and experiment with using different types of utensils. At first he was happy with using a straw and different types of spoons. But then he realized one of his toys looks exactly like the syrup container he used at the restaurant. So he went and dug it out and started happily scooping milk out of the mug and drank with it. It was fascinating to see how quickly he made the associations on those objects.

Amazon’s Price Drop Policy

After having missed some valuable shots of Bryan doing amazing stuff, I finally decided to open up my checkbook for a more modern camera. Thanks to previous researches done by Michael and my cousin Alex, I knew exactly which camera to get — another Canon — Canon SD800 with built-in image stabilization.

Within 36 hours of the purchase from Amazon, the price of the camera dropped by $20 BEFORE it was even shipped! So I dug around to see if Amazon has a policy to match its own prices — no luck there. However, Amazon does have an unwritten rule on “price drop” policy within 30 days of purchase — they will refund the difference of the price for the same item within Amazon stores. Thanks to this bargain hunting site for the tip. And apparently there’s also a site dedicated to helping customers track their items purchased from Amazon complete with an email reminder feature (for free!).

Here’s a blurb from Amazon’s customer service department:

From: cust.service***@amazon.com
Subject: Your Amazon.com Order (#***-*******-*******)
Date: February 22, 2007 10:15:38 PM PST
To: ********@wiredatom.com

Thank you for writing to Amazon.com.

The discounts we offer for items on our web site do vary from time to time. I’ve checked your order, and found that we now offer a greater discount on the item than at the time you placed your order.

Since this item was shipped so recently, I have requested a refund of $20 to your credit card. This amount reflects the difference between the price you were charged and the discounted price. The refund should be processed in the next few days and will appear as a credit on your next billing statement.

You may view returns and refunds by clicking the “Your Account” link at the top of our web site, then clicking “Go!” next to “open and recently shipped orders.” Completed refunds will appear at the bottom of an individual order’s summary page.

I hope this solution is satisfactory. Thank you for shopping at Amazon.com–we hope you will visit us again soon.

.
.
.

To contact us about an unrelated issue, please visit the Help section of our web site.

Best regards,

Serena
Amazon.com Customer Service
http://www.amazon.com
==============================
Check your order and more: http://www.amazon.com/your-account

This was what I did to get the refund:

1. Use Amazon’s Return & Refunds Contact Form.
2. On the subject of the form, select “Refund Inquiry” and hit “continue”.
3. On this screen, there should be a list of eligible items for the inquiry. Check ones that you’d like to have the price difference refunded and click on “continue” again.
4. Then next in the comments box, simply tell them you’d like to get a refund in the difference in price… etc. Be nice though.

Within a few hours of my request, Amazon’s email came through and my refund was approved! This gives me yet another reason to shop at Amazon!

One related note: Buy.com used to have a price match guarantee with a similar (but not nearly as intuitive) process. But the company has since become a pain in the ass to deal with on almost everything (well, except the checkout). Unless you have a compelling reason to shop at Buy.com, my experience tells me to stay away from them…

WordPress Upgrade, Finally

I finally have some spare time to upgrade my aging WordPress 1.5.x to 2.1. Good thing I waited till I really had the time to do it… because the upgrade literally punched a hole in time and sucked all that time out… The upgrade wasn’t terrible at all. The more tedious part was to get all the newer versions of plug-ins I use, test them and make sure none of them break anything. So far everything looks decent in Firefox.

I tried upgrading to 2.0 when it first came out. But it just blew up. So I figure anything with a “.1” in its version name should worth the time.

Now back to more urgent matters — Java and other stuff.

Notes on Java: Garbage Collection

One of the advantages that proponents of Java love about the language is garbage collection — the process in which JVM cleans up after your program is done partying and messing with your computer’s memory — free of charge. Th-unk you. Com’ again. Buh-bye.

Simplistically speaking, in comparison, C and C programmers typically need to clean up after themselves. The problem with that is, sometimes these parties get so wild that it makes the clean up afterwards impossible. That’s when “memory leaks” occur (ahem, Safari). The “parties”, of course, are the programs that rampage through your computer’s memory when they are having the time of their lives (which is not all that long). I mean, WHO likes cleaning up after parties, right? Think about it: Even if you try, there are bound to be spots where you just can’t get to or miss out from all the other cleaning you have to do YOURSELF. Java frees programmers from that headache by being in the business of memory salvation. Bless Java.

So here’s how it works… Whenever your Java program disposes something that it no longer cares for in your system memory, it’s considered trash, garbage, litter, junk, scrap, rubbish, Microsoft’s customers, whatever name suits your fancy, and is eligible for Java’s free garbage collection service. Did I mention enrollment is automatic, and it’s free? With small parties, Java only cleans up after your mess once in a while. But with parties in the size of Coldplay’s concerts, Java will do it a bit more frequently.

Well, I lied when I said it’s free. Com’on, nothing is free. You know that. Luckily, it costs in terms of system performance with all that bookkeeping and cleaning Java has to do. But it’s not really that bad if you consider the work Java’s done for you and the time and brain cells it saves you. I may be going out on a limb here, but I’d say the small performance hit your program suffers is well worth the price. And besides, with today’s qua-gazillion-megahertz computing power and memory availability, these performance hits are barely noticeable. It’s like being thrown at with a penny — of course it hurts. But just a little, and the pain only lasts long enough for you to realize that the sucker who threw the penny is now a penny poorer, and you are now a penny richer…

On a different note, the new Mac OSX Leopard is supposed to ship with a new version of Xcode that comes with garbage collection feature… Buh-bye, major memory leaks…

Dreaming in Code

Ever since I started prepping for the GRE, I’ve been somewhat lagged behind on my Java programming homework. So when I was done with the GRE, I feverishly tried to catch up by reading all the assigned sections in the book plus trying to program for the assignments. Maybe I am just not very bright… but it just takes me a while to pick up a new programming language in the beginning trying to orient myself in the new syntax and constructs.

Maybe it’s because of all the codes I’ve been reading, programming and tinkering with. For the past couple of nights, my dreams have been nothing short of me trying to solve some obscure programming problems in Java! How weird is that? The messed up part is, every line of code in the dream made sense!

Damn I need some rest and time away from Java…