Room 118 Solutions - Web Application Development & Programming

Author Archives: Jim Ryan

Jim Ryan

About Jim Ryan

Jim has been working with computers for as long as he can remember. He started programming when he was 12, and developed his first web application for hire when he was 16. Jim is as adept with hardware as he is with software. He's worked with countless languages on a variety of platforms, from gaming consoles to Android handsets to desktop applications, but his first and true love will always be the Web. For Jim, coding is more than a hobby or a job, it's his passion.

When he's not at his computer (which is rare), Jim's exploring Manhattan or enjoying a nice (gluten-free) meal with friends. He loves meeting new people, whether it be at home or when traveling the globe. Jim tries to learn something new everyday.

Android Emulator without Eclipse

So, you’re a web developer, not an Android developer, and you just want to test your work on a specific version of Android, or emulate a specific device. You just want to get up and running quickly, you don’t want to deal with Eclipse, and you don’t want to trudge through the SDK’s extensive documentation, which very poorly covers the usage of the SDK without Eclipse (which is a shame, since its Eclipse plugin is just a thin wrapper for a powerful suite of command line tools).

Here’s what you need to do:

  1. Download and extract the SDK
  2. Open a terminal and navigate to the “tools” directory
  3. Launch the “android” tool (./android if you are currently in the tools directory)
  4. Tick off the “SDK Platform” for each version of Android that you’d like to use in your emulator
  5. Click the “Install N Packages” button
  6. Click each package and tick off “Accept License” (legally, I’m probably required to tell you that this step may take several hours as you read each license ;)
  7. Done with those licenses? Great. Click “Install”. Wait for the SDK manager to finish installing your packages, then you can close it.
  8. Back in your terminal, still in the tools directory, enter ./android avd which will launch the Android Virtual Device Manager
  9. Click “New” and fill out the form to build the device you’d like to emulate. In the “Target” dropdown, you’ll see the SDK Platforms that you installed earlier. If the version you need is missing, you need to go back and install it. Click OK when you’re done.
  10. Click on the device that you just created and click the “Start” button, tweak any options that you need on the Launch Options window, and click “Launch”.

That’s it! You’re all done. If you expect to need the emulator frequently, I’d recommend a shortcut to the “android” tool with the “avd” flag, so you can quickly access the Android Virtual Device Manager. Enjoy!

Server Side Retina Graphics

The more I use my new iPad, the more I notice non-retina graphics. We’re spoiled by the many native apps with retina graphics, that when we browse the web, it feels like a second class citizen. It doesn’t have to. This problem isn’t going away, either. I bet we’ll start seeing retina displays in MacBooks pretty soon, and maybe even glorious 27″ retina cinema displays, too. But, even with just the iPhone 4, 4S and new iPad, we’ve got a lot of devices receiving subpar content.  Let’s fix that.

Read on

RVM/Capistrano: rvm-shell not found

If you’re trying to deploy with Capistrano to a server you just set up, and it fails with an error like this:

rvm-shell: No such file or directory

Then you probably have a newer version of RVM on your new server than on your development machine.  Update RVM and go on your way.  Hope this saves someone some frustration!


Ubuntu 10.10 Server + GRUB + GPT Partitions

So, I ran into a peculiar problem while trying to get my homebuilt 4TB NAS up and running last night.  I bought two 2TB SATA drives, and sourced everything else from my old computer boneyard (i.e. my closet).  The issue I was having was the Ubuntu 10.10 Server installer kept failing when trying to install GRUB.  I eventually tracked this down to an issue installing GRUB to GPT partitions (GRUB requires a BIOS boot partition).  Since I’m running a small 5GB partition in RAID1 for Ubuntu, and the rest of the disks (~4TB) in RAID0, I’m exceeding the partition size limitations of MBR, and thus need to use GPT.  Fine.  The issue is that the Ubuntu installer seems to be unaware of how to handle this situation.  Long story short, here’s what you need to do when yours fails:

Read on

Our Small-Business-In-The-Cloud Boilerplate – Part I: External

When Chris and I formed Room 118 Solutions one year ago, we didn’t really know how we were going to run a business from our home offices.  We didn’t even know what was involved in running a corporation (an S-corp, to be exact), from a business perspective.  Over this past year, we’ve fallen into a nice groove using a combination of web applications that has made everything from collaboration to running payroll a breeze.  We’d like to share them with you, as they mostly apply to all small business teams.  In Part I, I’ll cover services we use to work with customers; in Part II, I’ll cover services we use internally. Read on