Flex/Flash/Actionscript

Is that Flex on my Kindle?

Well, not really… but it’s a Flex book 🙂

flex_kindle1

While I was getting ready to travel for the holidays I was buying a few new books for my Amazon Kindle to read on the plane. As I was browsing through the online store right on the Kindle, there in my recommended books list was Creating Visual Experiences for Flex 3 by my friends Juan Sanchez and Andy McIntosh. Out of sheer curiosity I was forced to instantly buy it, wondering what it would look like on the Kindle’s screen.

Note that this isn’t in any way a review of the actual content of the book, since I haven’t read it yet. But knowing Juan and Andy I’m sure it’s fantastic. I just skimmed a few chapters trying to see what it looked like on the Kindle’s screen.

Text and Images
Turns out that reading the textual content of the book on the Kindle works great. The images leave a little to be desired, since they’re rendered (like all images in a Kindle book) in fairly minimal grayscale, but they don’t actually differ that much from the print book (also in black and white) and you usually don’t lose any important information by viewing the images on the Kindle’s screen. Some of the screenshots comparing different effects and blend modes didn’t work very well since they were so small and the low contrast makes it difficult to notice differences.

Tables
Tables actually turned out pretty readable, although quite small. But I was impressed how well the tables were actually preserved, and assuming you don’t have a problem reading small text (which I didn’t) then they’ll work just fine. If you’re old and your eyes are feeble then this might be an issue.

flex_kindle_table

Code Samples
The code listings are a bit more problematic. With the normal font size, the code listings become pretty unreadable on the Kindle’s screen. Pretty much all the code wraps in weird ways, breaking the lines up, often mid-word, and usually spilling over onto multiple pages.

flex_kindle_code

However, if you adjust the font to the smallest that the Kindle offers, then you get more readable code listings. Things still spill over across pages, and sometimes the lines wrap awkwardly, but overall the code listings are much improved. The smallest font size is really the only way to read a book like this. Truthfully, I imagined the code listings would be completely unreadable, but if you adjust the font size it’s much better than I ever imagined it would be.

The difficulty with code listings makes the Exercises section (section 4) difficult to get through. But the previous sections, which give you explanations of the skinning and styling techniques and discussion about all the particular components within the Flex framework, rely on much shorter snippets of code sprinkled in the text. The exercises are really code-heavy (as they should be), which makes viewing on the screen hard.

Of course, reading code on such a small screen (regardless of whether you’re reading a book or reviewing someone’s code or whatever) is far from ideal. I’d never choose to write code on a screen this size, and reading it here is certainly less than perfect. But reading code in any print book is always relatively awkward, with the only real difference between print and the Kindle being that print books have better formatted line breaks and the ability to see multiple pages at once (assuming the two print pages can be open side by side).

Overall, if you’re comfortable reading the entire text at the smallest font size, it’s pretty decent actually (again, I’m referring to the viewing experience, not the content of the text). I don’t think I’ll get any other programming books on my Kindle, instead I’ll buy the print versions if I have the choice (or more likely I won’t buy programming books at all, as I’ve written about previously). But if you’re traveling and you don’t mind the layout issues, there’s no reason you can’t learn Flex styling and skinning on an airplane.

P.S. For worry of breaking some unknown clause in my contract with my own publisher, I better tell you that I wrote a Flex book too! Deepa Subramaniam and I wrote Adobe Flex 3 for Dummies, which is awesome (although it’s not offered on the Kindle). Juan and Andy’s book and our Dummies book really target very different audiences, so if you’re just starting to learn Flex then you might want to check out our book first and then move on to Creating Visual Experiences.

P.P.S. Merry Christmas and happy holidays!

Legal stuff to try to keep me from getting in trouble
All images in this post are digital pictures I took of the Amazon Kindle displaying the Creating Visual Experiences with Flex 3.0 book, written by Juan Sanchez and Andy McIntosh and published by Addison-Wesley. All content is copyright Pearson Education, Inc. The images used in this blog post reproduce very small amounts of text and images from the original text, at very low quality in comparison to the original. The intent of this post is to explain the reading experience on the Kindle, not in any way to redistribute copyrighted content. I will, without argument, remove any images at the authors’ or publisher’s request.

Standard
Uncategorized

What my work day looks like

I’ve been using RescueTime recently to track my computer usage during the work day. I’m not really trying to curb bad behavior or specifically stop wasting time on particular tasks, I just kind of like to see how I work. For those that don’t know about RescueTime, it’s a little time tracking app that runs on your computer and logs what applications and websites you visit and how much time you spend. Then you can see some cool reports to visualize where your time goes.

This chart shows the time I spent on the computer yesterday:
screenshot046

So you can see I woke up a bit past 8 and had a bit of a slow start to the day. Between making coffee and dilly-dallying I managed to waste most of the 9am hour. But then I got into the swing of things. I think the 10am hour is one of my most productive all day. My brain’s well rested but awake (thank god for that coffee) and I have very few interruptions. We do a daily scrum call at 11, so I usually have until then before I get sidetracked with phone conversations and other things that start cropping up. Then I took a 45 minute lunch a bit before 1 and then was back at work until 6.

Here’s the chart that shows the % of each hour that was taken up by Flex tasks, which I’ve basically defined as Flex Builder or debugging in Safari.
screenshot047

So that shows that for the majority of the day I’m either using Flex Builder or using Safari specifically to debug Flex apps. One thing that I found interesting, however, is to compare the time spent on my top 10 activities:
screenshot048

So clearly you can see Flex Builder and Safari rising to the top of the list. Note that RescueTime logs my local testing as file:// since it thinks it’s a web page, but it doesn’t know how to deal with local pages I guess, so that file:// means I was running a Flex app in Safari. One thing that struck me was the total time spent in any particular app didn’t seem that high. Out of an 8 hour day I spent 3 and a half hours in Flex Builder itself. I spent another hour or so testing/debugging in the browser. So about 56% of my total time during the day is actually spent writing code/debugging. The rest is management tools (FogBugz is issue tracking, we use Google sites for project documentation, gmail for email, Adium for IM) and news reading (MXNA, some random article on Washington Post that took me 5 minutes to read). The other thing that made it into my top ten yesterday was watching a demo video of cyn.in, which I was checking out since it seemed like we might be able to use it for project management at work. And to round out the list, pgadmin is a database tool for Postgres databases.

The hour I spent on email should probably get cut down. Since I work remotely, there is a lot of communication over email, but I certainly need to do a better job managing my email time instead of popping back over to gmail every few minutes (although if Flex compile times were sped up I bet my email time would get cut in half). The time on IM (Adium) is essential since the way I communicate with my team is through IM all day long, so that can’t really get cut down at all.

It’s also interesting to see how the little things factor in. If you add up my top ten list there, you end up with about 7 and a half hours. That’s almost my complete work day, which means that all the other crap I might have done, reading blog posts, watching dumb videos, etc only took up a very small amount of aggregate time. That makes me feel good about my overall productivity. There are about 90 total entries in the RescueTime log for yesterday, but most of them take up only seconds of time (scanning blogs, quick Google searches, etc).

So that’s what my day yesterday looked like. I know this isn’t directly related to Flex, but I thought it was kind of interesting and I need to get back into blogging one way or another, so bear with me while I get back on the blogging bandwagon. If I made New Year’s resolutions then getting back to blogging like I used to would be at the top of my list.

Standard