Hacking

Canon Camera Hacking With CHDK

This short and somewhat boring clip is the result of playing around with CHDK (Canon Hack Development Kit). I’m working on a stop-motion animation for Tinysaur, but sadly neither of my cameras (a Canon Digital Rebel XT and a Canon SD1100IS Point and Shoot) had a built in timer that would shoot over and over indefinitely. Using the CHDK Ultra Intervalometer script I set my camera to take a shot every .5 seconds. Although it didn’t quite go that fast… I’ll get to that in a bit.

CHDK is a firmware add-on for Canon point and shoot cameras that lets you control absolutely every aspect of the shot. It loads from your SD card at boot, so it’s non-permanent (although you can set it to auto load). It gives you access to a plethora of fine tuning options and display monitors, and also lets you run scripts to take pictures based on time, motion detection, etc. But the most exciting thing I found is that there’s a script which will let you trigger the camera with a hacked USB cord with a switch.

img_0149Mine is shown on the left, it’s not very pretty. I spliced a reset switch into the +5v (red) wire. It uses a USB port for power, which makes it a little silly, although ok for my uses. Ideally you’d rig up a power supply along with the switch. I would have but I only had AA battery holders and it needs between 3.5V and 5V of juice. There are some neat hacks listed on the CHDK wiki for making remote cables out of old joysticks and flashlights and whatnot.

There’s a ton of documentation, but it’s a bit scattered around the CHDK wiki. Here’s what I did to get the Ultra Intervalometer script up and running. The instructions are almost identical for the USB remote script:

Getting CHDK going:

  • Grab a spare SD card and format it. If it’s >2 gig and you think you’ll want to auto boot CHDK, format it as FAT16 (‘format X: /fs:fat’ from the comand line). Leave it in your machine’s SD reader (which, by the way, you need for this).
  • Make sure you have a CHDK compatible camera. My SD1100 works well with it (and without it, for that matter), apparently the latest version of that camera (SD1200) doesn’t yet have a version of CHDK for it. CHDK isn’t available for SLR cameras.
  • Check your camera’s firmware version. Create a blank file called ver.req on the SD card. Put the card in your camera. Make sure the camera is set to playback mode and turn it on. Press “Func Set” and “Disp” at the same time. A screen with the firmware version should pop up.
  • Download the appropriate version of CHDK. Unzip it onto your SD card.
  • While not necessary to get CHDK running, now is a good time to stick the Ultra Intervalometer script on the card, so you don’t have to take it out to do it later. Copy the script code and save it as something like ‘ult_interval.bas’ in the SCRIPTS subdirectory on the SD card.
  • Pop the SD card in your camera.
  • Make sure your camera is set to playback and turn it on. Hit ‘Menu’ and scroll down, you should see an option to update the firmware. Do it!
  • When you update the firmware, the ‘print’ button will blink for a bit, strange things will happen, and you should see the CHDK splash screen. Hooray!

Now you can use the ‘print’ button to switch between the normal boring Canon menus / normal shooting and “<ALT>” mode, which brings up a totally different list of options when you press the Menu button, and triggers a script when you press the shutter release rather than taking a picture.

Using Ultra Intervalometer

  • Make sure you’re in <ALT> mode
  • Press Menu and scroll down to Script Parameters
  • Select “Load script from file” and select ultra_interval.bas or whatever you called the script.
  • Set the script parameters (those under the heading Ultra Intervalometer) to your whim. Use left/right to increase or decrease parameter values.
    • Delay 1st Shot (mins) – this is the time between when you start the script and the first shot, in minutes
    • Delay 1st Shot (secs) – As above, but seconds
    • Number of Shots – how many to take
    • Interval (minutes) – number of minutes between shots
    • Interval (seconds) – number of seconds between shots
    • Inerval (10th seconds) – as above, with 10ths of seconds
  • Exit out of the menu (by hitting menu)
  • Press the shutter to start the script. The camera will fire at the interval you chose, hooray! Press the shutter again if you want to stop the script before it finishes.

When I set the interval to 1 second I noticed that the camera wasn’t actually shooting that often. The ‘review’ period, where it shows you waht you just took, seemed to be getting in the way. I exited out of <ALT> mode and was able to set the review time to 0 seconds in the camera’s normal menu. I also turned off AF-Zoom. It still takes a little bit of time to auto focus between each shot,  I haven’t dug through enough of the CHDK documentation to find out how to only focus at the start of the sequence.

Here’s a short (ok, still boring) clip of my walk from NYC Resistor down the street, in search of some tacos:

Cooking, Exercise

Diet and Exercise Work. Film at 11.

As some of you may remember, at the beginning of May I realized I needed to do something about my diet / exercise levels as I crossed into the “overweight” BMI. While it’s true that BMI isn’t terribly accurate as it doesn’t account for your body fat vs muscle, I think it is fair to say that most of my weight was emphatically not muscle.

I made a number of changes to my lifestyle, some of which were relatively small, and some were larger. I enrolled in Weight Watchers, picked up a copy of EA Sports Active, and got more diligent in making sure I exercise every day (even if it’s just 10 minutes). The results speak for themselves:

Wii Fit Weight Chart

Food-wise the changes I’ve made have been pretty minor. I’ve cut out the constant snacking on candy bars, and that alone is probably the bulk of the weight loss. I’ve also switched to more whole grains. I still hate whole wheat bread, and have no intentions of switching from my plain white, but whole wheat pasta is surprisingly pretty much the same as the white stuff once you cover it in sauce. And in the morning I’m too tired to notice whether my multi-grain cheerios taste any different than the normal ones. 

I’m slowly adding more veggies to my diet. Lately I’ve been cooking a lot of broccoli because it’s easy. Throw it in a bowl in the microwave with some water, set a plate  (or, a lid, if you’re classy like that) on top to keep the moisture in, microwave for a couple minutes, add a slice of fat free american cheese, and consume. Normally I’m morally opposed to fat free cheese because its disgusting, but those american cheese slices are all chemicals anyway, so I can’t tell the difference.

Exercise is a little harder. I was doing 10-15 minutes of Wii Fit (mostly the Hula Hooping), and that was getting a little tedious, so I picked up a copy of EA Sports Active. It’s not a magic bullet, but it’s nice to have some variety in my exercise. EA Sports Active is also more resistance training than cardio, and I think the switch to that may be why there’s some weight bobbling in the past week or so. Cardio is better for burning calories, but building muscle raises your resting metabolsim, so you really want both. I’ve also been biking around Liberty State Park when I can. And doing little things like take the stairs on my commute (there are 4 flights down and 8 flights up on my morning trek).

I haven’t experienced a magical total body transformation, it’s only been a month and honestly I don’t have all that much to lose, but I can see some physical changes. My stomach seems to be retreating, and my arms actually have muscles in them. But mostly I’m just happy to feel like I’m in control of my weight instead of just watching the scale climb up up up.

Business, Crafting, Etsy

The Secret to Selling on Etsy

Every now and then I peek into the Etsy forums to gather information. It’s a good place to crowdsource… tons of people killing time on the internet who LOVE to share their opinion with you.

Invariably I see a thread asking about what the secret is to sell on Etsy, how people get so many sales, how much to relist in a day, etc. And I think I am fully qualified to answer these questions. I have an active Etsy shop, generally selling multiple items per day. I also used to work at Etsy, so I have an inside view of how the whole system works.

It turns out the secret to selling on Etsy is the same as selling anywhere: hard work and good products.

Ok, maybe that’s not the most helpful answer. So allow me to elaborate with a list of tips.

  • Take better photos.
    I don’t care how long you spent on your photos. They’re not good enough. Mine sure as heck aren’t. You need to do more than just snap an accurate picture of the product. You need to sell it. I’ve seen a lot of Etsy sellers complain that they shouldn’t have to be photographers. BS. You’re a salesman, and your photos are the biggest part of your sales pitch. If you aren’t willing to put serious and continuous effort into them then you’re not serious about selling online.
    For some quick tips, check out my article, Common Photo Mistakes and How to Avoid Them
  • Make something people want.
    Do market research. And no, posting a forum thread titled “do you think people want to buy ____” doesn’t count. Browse the sold items. What’s selling? Read blogs related to what you’re making. What are they featuring? Does your stuff fit in with that? Or are you still making stirrup pants? Stop. Stirrup pants hurt us all.
    Look at not just styles but also what people are selling. Where is there a void in the market? Fill it.
  • Make something other people aren’t.
    I hate to break it to you, but if you’re making snap bibs out of Amy Butler fabric you’re already at a disadvantage. Why? Because there are already 100 other people selling them. It’s like putting a Starbucks up on every corner and then wondering why you’re only getting 1/4 of the foot traffic.

    Do an Etsy search for your product. If you make bibs, search “bibs.” How many of the search results are the same as what you make? What makes yours different? It’s going to have to be something. Better photos, better prices, better selection, better construction, different style, whatever. But it’s got to be something or you’ll just be lost with the other 20,000 search results.

  • Build a cohesive line.
    Lets say you make pouches. Rectangular zippy pouches out of pretty fabrics. Great. So now you’re “that girl who makes pouches.” It’s pretty nondescript, and when I search for “pouch” on Etsy I’m going to get a ton of other people’s stuff, which I might like better.

    Pick a common theme and run with it. Make pouches in different shapes. Now you’re “that girl who makes round pouches,” and that already sets you apart from other people. Or maybe all of your fabric features skulls on it. Or flowers. Or math equations. Or your pouches all come with built in flashlights. Whatever. Transform yourself to “that person who makes generic” to “that person who makes specific.” You’ll stick in customers’ minds better, be easier to find, and sell more.

  • Give up.
    The flip side of building a line and putting all this effort into your products is you have to be able to let it go. If it’s not working out, you may just need to move on to something else. Not all of your ideas are going to be million dollar sell outs. That’s OK.

    A few years ago I had a line of jewelry that I liked, my friend liked, it went well together without being boring… and it didn’t sell. Anywhere. And for whatever reason I just kept trying to sell it other places instead of moving on or changing it. Needless to say it didn’t work, and I’ve still got a ton of stock for it lying around on a shelf. If you really want to sell, at some point you have to evaluate what you’re doing and change if it’s not working.

  • Take better photos.
    No really, it’s important. And yours still aren’t good enough.

Those are the big secrets. As far as relisting and other nonsense… I relist whenever things sell out, which is once a day or so. By selling something unique I find that even days later I’m still on the front page of search results

There’s also a lot of chatter about twittering/blogging, and whether those are good at driving sales. Yes and no. If you have something interesting to say, eventually people will read it, and if you’ve got your products showcased next to what you’re saying then it’s free advertising. But starting a blog and just posting when you list a new item isn’t interesting to anyone except you.

But it all comes back to your products. You can blog, twitter, and photograph all you want but it isn’t going to do a damned thing if you’re not selling an interesting product at the right price. So get off the Etsy forums and take a hard look at your products. Then fix them and try again.

Katamari

Life-Size Katamari Lives

A long time ago, in a galaxy identical to this one, I wanted to make a life-sized Katamari, and use it to play Katamary Damacy on PS2. My friend Eric Skiff shot a video, and while it’s not quite a polished project, I decided it’s time to share it with the world.

My very technical schematic
My very technical schematic
It uses an optical mouse to track the ball. I gathered up some cheap PS2 controllers, ripped out the potentiometers on the analog sticks, and replaced it with a digital potentiometer and an arduino. The arduino takes signals from two PS/2 mice (one for each analog stick) and adjusts the potentiometer accordingly.

Ribbon cables soldered to where the joysticks used to be
Ribbon cables soldered to where the joysticks used to be
It’s the first circuit I’ve ever designed, so obviously it has a lot of room for improvement. The biggest one being that there are two separate power sources, one for the Arduino and one for the PS2. We’ve discussed lots of different ways to run the whole thing off the PS2’s power, but all of them require a little more studying on my part to fully understand. I started this project with almost no knowledge of physical computing. I got the “electricity is like a river” talk from my fellow Resistors, and a lot of pointers along the way.

katamari0.5

Here’s the wiring schematic. I realize it doesn’t make a lot of sense. Basically the each mouse (one for each joystick) is wired up to the Arduino, and there’s a handy PS/2 library for Arduino which makes it easy to work with. It was also the first Arduino program I wrote after “make an LED blink.”

I used an AD5206 digital potentiometer chip, although the 5204 would work as you only need four channels (left x, left y, right x, right y). It’s a pretty simple circuit, and maybe when I have some time I’ll redo it to use an AVR and a single power source. It was a fun first electronics project.

Originally I wanted to use one of those giant yoga balls, to really get the scale. But it turns out those don’t roll very well on ball bearings. Luckily Adam had one of those mirror balls folks put in their gardens. Or at least I assume they do, no one I know has a big enough yard to put lawn ornaments in. While somewhat smaller and less impressive, it rolls much more easily.

This project wouldn’t have been vaguely possible without help from the fine folks at NYC Resistor, who very patiently explained things like “why do I need a pull up resistor?” Extra thanks to Eric who documented my work (something I forget to do) and Adam who helped me with EAGLE. Sadly I never did get around to properly etching a board for it (but I did have a lot of incorrectly etched boards).

You can find the music from the video at http://glitchnyc.com/music/


Exercise

EA Sports Active: Day 5

I’ve had a little more time to get used to EA Sports Active now. I stopped using the Balance Board in my workouts and that cut down on the annoying peripheral switching a lot. I’ve done four of the 30 Day Fitness Challenge workouts – yesterday was a scheduled rest day.

Now that I’m a few days into it, the preconfigured workouts – playlists, if you will – are what really make this title. The exercises are all similar to what’s in Wii Fit, but the controls feel sluggish and clunky compared to the balance board. But I’m getting a much more comprehensive workout because it’s leading me through a variety of exercises. On WiiFit I tend to just pick my favorites, do 10-15 minutes of those, and call it a day.

The lack of thought required to get a good workout out of EA Sports gives it a big boost in longevity. I really, really, didn’t feel like working out today, and thought about skipping it. Needless to say the pre-programmed workout was much more rigorous than the exercises I would have chosen this morning. So I got in a good workout despite myself.

I’ve seen a lot of WiiFit vs EA Sports Active articles, and I don’t think that’s really a fair comparison. If you’re just getting a wii as an exercise tool, you should probably go with EA Sports Active because it’s a little cheaper and gives you a better workout. But the price comparison overlooks the fact that WiiFit includes the Balance Board, which is a peripheral that’s useful in other games. Whereas EA Sports Active isn’t.

I’m a big fan of the idea of whole-body gaming, partly because I think it’s neat technology and partly because I like the idea of getting some exercise but find most sports incredibly boring. EA Sports Active is really just an interactive workout video. And it’s great at that, but if I wasn’t already interested in getting in shape I wouldn’t find it particularly compelling. Titles like Dance Dance Revolution SuperNova 2 and Shaun White Snowboarding are games, not exercise programs, and that’s more interesting to people like me who skipped PE as a kid. Unfortunately the Balance Board offerings so far have been pretty meager – most have received awful reviews. It’ll be interesting to see if publishers pick up the slack or just let the Balance Board go the way of the NES Power Pad.

Overall I think WiiFit and EA Sports are both good titles, but they server different needs. If you want a workout program, get EA Sports. If you want to play games and get your heart rate up a little along the way, get WiiFit.

Uncategorized

Spamalicious

I’ve been getting a lot of spam comments lately, mostly for Viagra and pictures of Paris Hilton nude, but as I was cleaning out the spam filter one caught my eye. I almost wish it was a legitimate comment:

Stargate Cast Member Hoax!!! These people are not even on the real set of Stargate. It looks like it was shot on green screen. I can tell. Just like the footage of the first American on the moon

Of course it was accompanied by some phishing / Miley Cyrus nude link… but the comment itself is hillarious to me.  As if anyone would go to trouble of staging a Stargate hoax of any kind. Also there may have been a period in college where I watched Stargate. A lot.

Exercise

EA Sports Active

I caved to internet peer pressuer and picked up a copy of EA Sports Active. I was getting a little bored with Wii Fit, and sort of annoyed that it takes you 45 minutes to get in 30 minutes of exercise because you have to pick a new task each time… you can’t just queue up a workout.

Plus I wanted to see if it lived up to the hype.

So far Sports Active is being touted as THE MOST AMAZING EXERCISE GAME. As of this morning 100% of its reviews on Amazon were 5 star.

The game starts off like pretty much every other workout video/ad/pitch you’ve ever seen. Some guy in a fleece vest starts telling you how awesome and perfect your life will be once you follow him and stop being such a pathetic lump. There’s some upbeat ambient music to emphasise this point. It’s cheesy but inoffesive.

I started the 30 day fitness challenge because it required the least amount of thought. Over a 30 day period the game picks workouts for you each day, mixing it up and making sure you’re getting an even workout. If you don’t feel like doing that you can do any of the dozens of pre-programmed workouts or build your own. But, I’m lazy. If I wasn’t lazy I wouldn’t have bought an exercise video game, now would I?

See this girl? She is way more into it than me.
See this girl? She is way more into it than me.

After day 1 I’ll concede that it’s a strong title for the Wii exercise genre, and fills some voids Wii Fit left behind, but I’m not sure it’s my new religion. I had trouble getting some of the exercises to register – particularly the lunges. Overall things seemed a little sluggish – my avatar would follow me about 2 seconds behind. The balance board didn’t bring much to the experience, and I’ll probably leave it out next time just because it was one more thing I kept having to bring out / push out of the way.

The exercises themselves were pretty good, and things changed up pretty quickly so I didn’t have time to get bored… which was nice. I’ve had a hard time motivating myself to do 10 minutes of hula hooping now that my boyfriend isn’t around to appreciate the effort.

My biggest beef is that it felt cumbersome to switch back and forth between all the gear. Nunchuck in leg strap. Nunchuck in hand. Get on the wii balance board. No, with the nunchuck in the strap. Now stand on the resistance band. Oh but holding the nunchuck this time. Yeah.

It’s a title worth picking up if you want to add something to your exercise routine but don’t actually want to join a gym / go outside. Also it tells you how many calories you’ve (theoretically) burned, and that’s a lot like points. And you all know how I feel about points. I’ll post updates as I go through more of the workouts and get a better feel for the overall game. Program. Whatever.

Uncategorized

The Fall of Dell

There was a time, in the mid-90s, when I really liked Dell computers. I was baffled by why someone would walk into Circuit City and buy some pre-fab underpowered peice of junk with a bunch of useless peripherals when you could just go to dell.com and get exactly what you wanted. And the idea of dealing with Circuit City’s tech support was laughable because Dell’s was so good. Between our household and my dad’s business we probably bought around 20 Dell computers over the years.

Fast forward to about 2002, which is the last time I bought a Dell. Gone are the tech support guys who actually know how to use a computer, all replaced by folks in other countries reading from a script. I guess if you don’t know what’s wrong with your computer the step-by-step drone troubleshooting is fine, but god help you if you actually know anything about your computer and you’re stuck talking to these people. No, I don’t want to change the display settings, it’s a hardware problem. Yes, I already did that five times. *go through 10 minute process* Nope, still broken. Really, we have to do it again before you can transfer me to someone with a clue?

But admittedly the awful customer service isn’t the full reason I stopped buying Dells. I have an HP now, and I’m sure their tech support is just as awful. Oh, and I purchased my HP from CompUSA, which may actually be a step down on the food chain from Circuit City. Although both are defunct now so I guess it’s a wash.

But the real impetus behind my conversion to off-the-shelf machines is that it just doesn’t matter that much anymore. In 1997 being able to leave off the printer/modem (uh hello we had ISDN)/CRT etc and put that money towards more memory/processor gave you a big boost in performance. Now, not so much. We’ve hit a plateau in consumer processing needs. There are very few applications that require the latest and greatest hardware.

My HP is about two years old. It has a couple gig of ram and somewhere around a 2 GHz processor. Aside from having to throw a decent graphics card in there to play Portal, it’s totally sufficient. I can run Photoshop/Illustrator/CorelDraw all at once without problems, Steam games run just fine on it, and I really don’t find myself wanting for a faster machine. I remember a time when I wanted a computer with as many hard drive bays as possible so I could stuff it full of disks (I promptly blew out the power supply). Now you can get a 1TB hard drive for under $100. Ten years later the hardware just isn’t as important as it used to be.

Dell, in a bizarre bone-headed move to stay relevant, has released a new advertising campaign: Della. This consists of a number of machines that come in colors besides white or grey because apparently the thing women care about most is whether the computer matches their furniture. And in an age where the hardware isn’t terribly relevant anymore maybe that is the only real consideration. I’ve got no qualms with marketing computers towards women, but the whole website comes off as pretty patronizing. I might want a computer that isn’t a blight on my living room decor but I still plan on using it for world domination.

Della has a page of “tech tips.” Here is a sample tip:

Eat better: Find recipes online, store and organize them, and watch cooking videos.

I’m sorry Dell, there’s no alternate universe in which that counts as a tech tip. Unless the computer is also a personal chef-robot. Oh and here’s a hint, even the most techno-phobic women can already do that, with these ingenious things called recipe books, a Rolodex, and cable TV.

Dell’s latest ad campaign illustrates pretty clearly that they’re out of touch. Seriously the “look you can use a computer for your womenly duties” thing is so 1994. What was once a purveyor of perfectly good consumer hardware is now more like a monolith of #fail.


Exercise, Hacking

Weight Hacking

I was dismayed recently to find my WiiFit calling me fat. Yes, it actually said (in its squeaky little voice) “that’s overweight.” While I’m not in the habit of letting an $80 plastic washboard dictate my lifestyle, my pants agreed. They said “lose 5 pounds or buy new pants.” Since I’m self-employed and like designer jeans I have no choice but to go with option one.

Let me start by saying that I will do anything for points. It doesn’t matter what the points are for, I want them. When I was saving up for video games as a kid I drew little thermometers and filled them up as I saved my money, just like your college alumni drive does. I play Xbox Live games more than others because there are points and a leaderboard and achievements and the achievements get you points and I want them all. And lucky for me, WeightWatchers is all about points.

On WeightWatchers you get a certain number of points per day, and all food has a set value of points (based on the fat/calories/fiber in it). And you can eat whatever the heck you want… as long as you don’t go over the points. You can also earn extra points by exercising, and get a bank of 35 spare points per week so you can eat normal people food and not blow your whole diet. Although tedious to some people, I find this to be an entertaining numbers game. And a challenge to hack my diet to maximum delicousness.

For example: a Chipotle Burrito with cheese and guacamole is 22 points. By comparison, my daily target is 20. Obviously the cheese and guac are big contributors here, and I’m sad to see them go. But all in the name of progress (and not having to buy new pants) I forgo the cheese/guac. Now we’re down to 15. In theory I could just eat half the burrito and save the rest for tomorrow and thus not totally blow my points for the day. But that’s not much fun now is it?

What’s interesting is that according to this handy-dandy calculator (which gets its values from Chipotle’s nutrition facts) the tortilla used to wrap the burrito is also a huge contributor. Nixing the tortilla and opting for the “burrito bowl” brings me down to 9 points. And it is a rather lot of food, so I eat 3/4 of it and save the rest for lunch tomorrow. So now I’m at 7 points, and honestly I didn’t miss the cheese/guac. That much.

You can figure out the points values with some simple math or another handy-dandy calculator and the printed nutrition facts. For stuff you cook at home you can guesstimate using the ingredients list and google… there are a handful of points charts floating around that tell you the value of things like eggs, broccoli, etc. For folks who like beer there’s a nice points values for beers list. It’s by no means comprehensive, but gives me a rough idea. Most of the beers I like are around 4 points.

Having to add up my points for everything has cut out a lot of my snacking, or at least made me switch to healthier options (bananas instead of chocolate). By skipping the cheese/guac on my burrito I freed up 7 points. An ice cream cone is about 5 points. I would much rather have ice cream than cheese on my burrito.

It’ll take about a month before I can tell if it’s actually helping, but in the short term WiiFit has stopped calling me fat. Now it says I’m just festively plump. In addition to the WeightWatchers I’ve been biking more and getting pretty darn good at WiiFii hula hooping, but I think not eating candy constantly will go a long way towards staying in my current pant size.

Uncategorized

Learning Android (or, not)

Wednesday night some friends and I sat down armed with our G1s and laptops to write some code for Android. If you haven’t looked at Android yet, it’s got this whole Java framework you get to learn on top of your rusty Java. It’s been about two years since I even looked at any Java, and most of my evening was spent trying to convince Eclipse and SDK to play nicely together on my computer.

Since Android is so deeply seated in its own framework even though it’s Java you can’t just throw any old Java application on it and expect it to run. This seems a little contrary to Java’s big cross-platform compatibility promise. But since I’ve always found that to be a horrible lie anyway, I don’t really care. So I’m learning Android, and it looks a lot like Java.

The Android SDK includes an Android emulator so you can play with it even if you don’t own an Android phone, and while it’s dog slow to boot it works pretty well. You can set which version of the OS you want to run (1.5 is supposedly coming out this month), although damned if I know how; I just followed the instructions in the Hello World tutorial.

I have to say that this is the longest process from start to Hello World I’ve ever gone through. And that’s my main beef with Java. It seems like every project has 1000 classes and I spend half my time on a wild goose chase trying to figure out what a given line of code is doing. This is exactly the sort of thing I can’t stand about highly OO PHP projects like Magento. Even doing simple stuff feels really really bloated. With Android you can hello world in your code, but really what you’re supposed to do is load your strings up in an XML file, and then load the layout into another XML file, and then some depths of the framework I haven’t read up on magically know to throw this on the screen. Ugh. Maybe this is something I’d appreciate if I did much GUI programming in other languages?

Anyway, so we got through Hello World, and then I lost patience with both Eclipse and the Android framework. I closed Eclipse, and when I restarted it had apparently forgotten all about the Android SDK. I’m sure this is due to some error on my part, but given that it took me 20 minutes to convince Eclipse to install the SDK the first time I didn’t feel like doing it again.

The XML file for your gui is kinda neat, but the documentation is not particularly well laid out. After setting up my little sample XML file with attributes like “layout_width” and “layout_height” I naturally wanted to know what other attributes I could play with. Can I make it pink? Can I make the text an inch tall? The answer to all these things is of course “yes” but first you have to find the list of available attributes, and then you have to figure out what class you’re dealing with (TextView in this case) and then you have to find out all of its parent classes, and then compare all thath against the documentation which you can really only sanely traverse with CTRL+F because apparently they didn’t feel like organizing things with nice hyperlinks.

I’m sure that the Android documentation is totally fine for someone who is used to working with Java frameworks, but frankly I avoid most frameworks at all costs. This might be because I work mostly with PHP, and in PHP a framework is just one more slow broken thing you have to debug. So I’ll keep plugging away at Android, but it’s going to take a lot more reading than I have the patience for this week.