June 2010 Archives

A few days with the JAPHs has reminded me of a few things:

  1. I’m behind. I need to do a better job of keeping up with Perl things.
  2. Perl has a unique culture and community that is both interesting and valuable to what it produces.
  3. I’m so glad that the people I usually hang out with do not use a certain expletive as their favorite adjective.

Okay, so let’s review.

Sunday

I traveled to Columbus, Ohio on Sunday. My travel was mostly uneventful, other than an hour delay in Dallas to replace the brakes on the plane. Because of that, I didn’t get to have dinner with Terri’s cousins, just her uncle. However, I enjoyed a delicious meatloaf and lemonade with Keith at the Cap City Diner (warning the web site plays music). I arrived at The Blackwell that evening, which is apparently named after a professor at OSU who has been convicted of insider trading.

My first impression of Ohio State campus is that they must have had a beautiful football stadium at one time, but now appears to be just a modern monstrosity with a beautiful arch on the end facing The Blackwell. I suppose this stadium will soon be featuring regular visits from our northern neighbors in Nebraska… I’m not an OSU fan, but I hope OSU beats NU every time they play here.

While traveling and late into Sunday evening, I finished up my notes for my first talk.

Monday

I met my colleagues in the lobby and we walked together over to the Ohio Union, where the conference was being held. The Union is knew and was a very nice place to conference, particular one priced at the value that YAPC is—though, my conference registration was paid for by the low-low price of giving two talks, which is great since I was just talking about two subjects I like to talk to others about anyway.

The keynote on Monday was given by Jesse Vincent, who was the Perl5 v12 pumpking, which has been released and is well into it’s maintenance cycle now. For those that may not know, this marks the second major release of Perl in the last 3 years and is part of a new effort to consistently make a major release of the language every year. This is good news for at least a couple reasons.

  1. Perl language developing will stay fresher with new features coming regularly.
  2. It will help dispel the message of the naysayers and show that Perl is Alive.

After that, I went to a couple talks on Catalyst that I didn’t pay much attention to. This had far less to do with the quality of the talks and more to do with me thinking about my talk.

I gave my first talk at 10:00 am on Telecommuting. I will post the audio/video when Krishna gets it online. I may post the slides too, but there’s really not much to show in them. Most of it was me telling a few stories from note cards. I feel like I was a bit dull, but I got some good questions at the end, which is usually a good sign. As I said on Twitter, I hope it was useful.

After breathing a sigh of relief I spent most of the rest of the day in talks and working on a project for work. I attended Util’s talk on Amazon EC2. I learned that EC2 hasn’t changed significantly since I used it. It’s still the same, though there are more instance configuration options, Windows instances, and different storage engines. This is mostly just an extension of what was there when I was last using it a couple years ago.

We then grabbed some lunch from The Flying Pizza, which was cheap and greasy and pretty good.

After lunch, I ended up in Moose for Managers, which wasn’t a stand-out talk in my mind since I can’t remember anything about it. However, I was working on something related to work at the time, so that’s probably just me not paying close enough attention. I stayed in the Grant Street Room to listen to Paul Fenwick’s talk on Awesome things you’ve missed in Perl. Paul is a great speaker and showed a number of things I’ve put on my todo list to investigate.

I ended the regular talks for the day by attending Dave Rolsky’s talk on Fey and Fey::ORM, which I’m mildly curious about since I once tried to write an ORM and because Fey seems like something which could be useful for something at work. By the way, my attempt at an ORM was awful and Dave actually wrote a scathing review of it on CPAN Ratings, which is part of the reason it has been disappeared from CPAN…I think that may have been my first CPAN module. Oh well. No hard feelings.

Finally, there were the lightning talks. They were enjoyable, as usual, but I’m not sure there are any that stand out in my mind from Monday.

After that, my fellow Grant Streeters headed out to dinner. We went to a local, cheap Chinese place, which was pretty decent. I stayed up late working after that, though after all the talks and travel I was pretty spent, so I got done far less than I wanted.

Tuesday

I ended up sleeping in a bit and missed the first round of talks and caught only the last part of Michael Schwern’s talk on the coding cycle. I stayed in the Grant Street room to see Gabor Szabo’s talk on Padre, which I’ve long been interested in, but still haven’t looked at much. If you want to learn Perl, using this editor sounds like the best way to get started.

Then it was lunch again, at Chipotle this time. Mmmm… Chipotle.

I attended scrottie’s talk on running Perl in a cheap distributed computing system (i.e., a pile of cheap computers working together to form a supercomputer of sorts). This was followed by Nick Perez giving a talk on how he’s building apps using POE and Plack.

I moved downstairs to another Schwern talk, this time on perl5i, which is a pretty interesting project. He’s basically taken to pulling in his favorite language extensions and piled them into a single module, perl5i. I’m still thinking about how it works and wondering if I like it or not. I certainly like most of the modules he’s brought in and how it works. I’m just not certain I like the mo and mc meta-accessors… still considering it.

After that talk, I stepped out for a while and worked a bit and chatted with some folks in the lobby of the Union. I met a lot of great folks while here, too many to mention all of them.

Then, I attended the keynote, which was given by Stevan Little. This talk explored the history of Perl and how we got to Modern Perl today. Using some concepts by Larry Wall, he wanted to show how Perl had filled a void that once existed in Unix. That is, it used to be if you wanted manipulexity (lots of deep functionality) you wrote something in C. If you needed something with whipuptitude (built quickly and easily) you used shell script. Perl was an attempt to fill in the difference so you could have both manipulexity and whipuptitude. Modern Perl is the outcome and successful implementation of this.

This is also a good opportunity to explain that while Perl has long had the slogan TMTOWTDI (There’s More Than One Way To Do It) from Larry Wall, Modern Perl makes it longer with TMTOWTDI BSCINABTE. This is pronounced Tim Toady Bicarbonate, which acronymizes, “There’s More Than One Way To Do It But Sometimes Consistency Is Not A Bad Thing Either.” This is an extension to Perl thinking that basically adds a little more consistency to programming (via Moose and related thinking) without actually losing any flexibility. (In fact, Modern Perl is really much more flexible in many ways, it just adds a common foundation that makes that flexibility a little more solid and less re-inventive.)

After this came the second round of lightning talks. There were again several good ones, but I think the talk that outshined them all was the one by Makoto Nozaki titled “How I mastered English with Perl.” It was great. I hope the video of it is posted so I can watch it again.

After this, we had the banquet, where I sat with one of my coworkers, Dieter, some of the folks from Best Practical (Shawn Moore, Kevin Falcone, and Jesse Vincent) and got to meet a couple others, Elliot and Ingy. I had a pretty decent time learning a bit about others, talking with Elliot and Jonathan Rockway in the food line, and made a smallish bid on some coasters during the auction. Pathetic, I know, but I did by a new Perl T-shirt since my Perl polo I bought at OSCON is starting to wear.

After that, I went with some folks and ended up talking about work with my coworkers at a local bar before heading back to my room where I stayed up late inventing a new talk to replace the one I wasn’t able to get together in time.

Wednesday

I started the morning by attending another Schwern talk on gitPAN, which is a really cool way of mining information about CPAN using github. This was followed by a talk by Tatsuhiko Miyagawa on cpanminus, which I had only heard rumors of up until this point. Now that I’ve tried it out, I’m not sure why I haven’t been using it for months now. It’s a very nice (simple!) CPAN client that handles most of what you need when you just want to install a module to try it out.

I then gave my second and final talk on Form::Factory, which showed a bit on how to extend Moose and how I like to build forms, but I don’t think it’s earth shattering. I would like it to be, but my time to hack is constrained by so many things.

I followed that with mst’s talk on The Troll, the God, and the Mountain, which was a very unusual introduction to DBIx::Data::Store. The punchline is that the Troll, Thog and his friend Al, are renamed and made great by the god v10 (“Voton,” i.e., Perl 8 v10) to become “Orthog-an-Al Persisten-T roles.” That’s about all I remember, to be honest. I’ve been hearing a few rumors about this project via Rob Kinyon (I think), though, so I’m keeping an eye open for when it hits CPAN.

I had one more lunch at YAPC, with a bunch of folks I didn’t know and Rob. I confess to have forgotten all names at this lunch, but they were good company for lunch.

Next, I attended Cool Perl 6 today by Patrick Michaud, who is the lead on Rakudo, which is the engine for Perl 6. I’m really thinking Perl 6 should be renamed to something else because it’s like Perl, but it’s not Perl. I like to watch these talks mostly for fun, though, things are getting to the point now that you can write Perl 6 applications, which is tempting to try.

I then attended a really excellent talk on autodie, titled “The Art of Klingon Programming” by Paul Fenwick. The talk featured Paul in a TNG uniform talking about his time as an exchange officer in the Klingon empire where he was testing the new universal translator. The joke is this. If you’ve programmed very much Perl, you know a common idiom is to write “open or die.” The reason is that if the file doesn’t open it returns a false value, so the short circuit “or” operator allows you to skip the die on success or run the die on failure. This is a good way to ask for blood wine in Klingon, since trying to ask nicely won’t get you any. The autodie module comes along to make this kind of talk automatic (making open die without the “or die” on the end).

Prior to the final keynote by mst, I attended two more Moose talks, one by doy and the other by perigrin. Both had way more information than I was really able to consume and the major thing that I took away was that I need to look into the new declarative syntax and immerse myself more deeply into the Moose type system, which I’ve really barely touched.

The final keynote was given by mst, which was another summary of the history of Perl as well as a general summary of some of the good things that have happened in the world of Perl in the past year.

After that, I went over to the Blue Nile Ethiopian Restaurant with the other speakers (and hangers on) and experienced my first taste of Ethiopian food and had one more social event. I got to speak a bit with chromatic, whom had edited the articles O’Reilly published to OnLamp. I got to chat with Ricardo Signes, Dave Rolsky, Rob’s wife, Randall Schwartz, and several others. It was a good time.

Finally, it was time to pack and head home.

In Summary

Perl has a really interesting culture. Between the libraries on CPAN, the dedication of many developers to the language and the community, and the way the leaders in the community interact with it, Perl has a lot going for it. It almost seems like there is a bit of religious fervor to it, though, that’s partially just the concentration of people getting together to talk about Perl. Most of these folks work in other languages too and have important concerns outside of Perl.

On my list of things I need to look into from the conference:

  • Perlbrew: A nice way of installing Perl VMs for development and testing.
  • local::lib: A nice way of locating and using CPAN modules installed to your home directory.
  • cpanminus: A tool that simplifies installing modules from CPAN.
  • Bread::Board: A framework for inversion of control, which is something I want to do better with in Form::Factory
  • CPAN Explorer: A visualization of CPAN.
  • Reflex: A new syntax for doing POE-like things with Moose.

There are others, but I don’t want the list to get too long.

Anyway, that’s my summary of everything I have to say about YAPC::NA 2010. Lord willing, I hope to attend again.

Cheers.

I have no idea how this phone compares to other Android-based phones. I’m not going to compare it. However, compared to the Motorola Q9c running Windows Mobile, the Treo running Palm OS, and the Nokia 3650 running Symbian, this is clearly the best phone I’ve owned. I’ve now been using it for a couple months and I still make good use of it on a daily basis. I think it of it more as a small laptop than as a cell phone. I can definitely see what the appeal is for having a tablet like this with a larger screen now. My next laptop may be one of these mini-laptop/tablets running Android I see coming out soon.

So far the only downside has been the battery life, which is mostly a problem when I travel. However, I can use my mini laptop (with it’s very nice 6-cell battery) as a charger. The other downside I experienced was that Sprint installs a bunch of apps I don’t need or want running in the background. However, since I rooted the phone, I’ve solved that problem rather nicely and have extended my battery life a bit in the process.

One of the main thing that makes Android nice is all the apps. So, I’m going to list my favorite apps now. I have added QR codes to each in the Android Market, so you can get to them easily if you have a barcode scanner on your phone. If you don’t, I recommend ShopSavvy below or Barcode Scanner also works.

Auto Memory Manager

QR code to Auto Memory Manager

By Mad Squirrel. This app is, on it’s own, worth the effort of rooting your phone. Android allows you to run multiple apps at once. You can see the last 6 or so such apps by holding down the Home key. When too many apps are running, Android will kill of the lowest priority ones to keep the phone from getting too hot and running down the battery. Sometimes this isn’t aggressive enough.

There are apps you can get (such as the EStrongs Task Manager) that will kill off running apps on top of the built-in task manager, but why run an app to do that when you can just adjust the built-in one? That’s what Auto Memory Manager does. It lets you tweak the settings of the built-in task manager. You need root to your phone to do it, but it’s worth it. I keep AMM on the minimum settings (only slightly more aggressive than the factory settings) and it makes a big difference.

LauncherPro

QR code to LauncherPro Beta

By Federico Carnales. Android’s equivalent to the Start Menu is the launcher menu. It’s a little drawer you slide up with your finger from the bottom. The built in one is kind of boring. LauncherPro replaces this with one that gives you customizable buttons at the bottom and gives you the option to have a larger home screen. The animations and such are very smooth and I think it brings up the menu faster than the built-in one.

Bible (YouVersion)

QR code to Bible

By LifeChurch.tv. This is one of the two Bible programs I have installed. This one uses the Internet connection to pull Bible verses from online servers. I don’t like the reader as much as the one from Olive Tree, but it has some nice reading plan helpers that I use.

ESV for BibleReader

QR code to ESV for BibleReader

By Olive Tree BibleReader. This is a full blown Bible study program for the phone. I paid $10 for the ESV version, which is now installed on the phone directly. You can also purchase additional books and study helps if you chooes. I’ve installed a few of the free ones. Navigating the Bible is very easy with this and the text is nicely formatted. The main downside is navigating any other text is not easy and it has a few rough edges, like not remembering what you were last looking at if you don’t quit through the menu and the bookmarks are nearly useless.

WeatherBug Elite

QR code to Weatherbug Elite

By WeatherBug Mobile. I’ve tried Weather.com (which comes with the phone) and AccuWeather and WeatherBug and WeatherBug wins, easily, as the best weather app and widget set. I can now get a nice weather map on my home screen, the current conditions, and 2 day forecast at a glimpse. It also keeps the current temp up in the corner, which is nice. This one is less quirky than the other weather apps I’ve tried too. It was easily worth the $3 I paid for the version without ads and the extra widgets.

ColorDict Dictionary

QR code to ColorDict Dictionary

By Notes. I’m a word geek. I look up words in the dictionary almost daily. This provides a dictionary installed on the phone so it works even if I don’t have a connection. It has a variety dictionaries available and a Wikipedia add-on that will look things up there when the Internet connection is available.

K-9 Mail

QR code to K-9 Mail

By K-9 Dog Walkers. Best IMAP mail reader on Android. This was the only app I knew about before I got an Android phone. One of my Perl-geek acquaintances, Jesse Vincent, wrote this to replace the built-in Mail app. It is very configurable and much nicer in nearly every way than the built-in IMAP mail program. I didn’t like some features of it at first until I learned that I’d just missed one of the settings screens.

Google Voice

QR code to Google Voice

By Google Inc. This is another excellent app for Android. This allows me to send all of my calls from my phone through my Google Voice account automatically. I already use this for voicemail, so I get my voicemail online and I get a reasonably useful text transcript of the voicemail. And that’s just some of the features.

AnyPost

QR code to AnyPost

By skAmped. I use this to send pictures and status updates to Twitter and Facebook from my phone. It connects to ping.fm. I prefer it to the Hootsuite App (which still only does Twitter) and just about anything else I’ve tried. This app is very simple and just does what it needs. Good enough.

Dolphin Browser HD

QR code to Dolphin Browser HD

By Dolphin Browser. This is a new browser for the phone. The built-in browser is fine, but this one just adds a few extras that make it worth it. For example, with an add-on it will save bookmarks to the SD card so that you won’t lose them when you do an OS update or get the phone repaired.

Google Maps / Navigation

QR code to Google Maps

By Google Inc. The phone comes with Sprint Navigation. That application does the job, barely. Google Maps with Navigation does the job well, very well. I bought a dash-mount to put into the van because this app actually works to navigate me. With Sprint Navigation, I was always waiting forever for it to finish loading the route from the online service and if it thought you got off track (which is inevitable with the weak GPS chips in these phones) it would lock up trying to reroute. Google Navigation loads the map and then is smart enough to reroute in a second or two on it’s own without contact the server again.

Genial Writing

QR code to Genial Writing

By zenpie studio. When I first downloaded this app, I just wanted to see what it was since it looked interesting. Now, I use it to take notes more often than my other note taker app. It lets you take notes using your own “handwriting.” This is very appealing for a number of reasons. This is a purely emotionally satisfying solution, even though it lacks certain practical features like being able to search (how can it search when all it does is record your writing). I still recommend it. It’s fun to use.

ColorNote Notepad

QR code to ColorNote Notepad

By Notes. This is my favorite general note taker app. I use it for shopping lists and reminders that I want posted to the home screen. It’s handy.

Handcent SMS

QR code to Handcent SMS

By handcent_admin. I’m not totally sold on this app yet. It adds a bunch of extra junk that isn’t related to SMS (font packs, it’s own voice input, it’s own notification system, etc.) I also find the default colors and theming to be very ugly. I didn’t buy an iPhone and I don’t really think apps on my phone need to look like one.

It is an improvement over the built-in SMS Messenger in some small ways, like the fact that it gives you a popup for quick replies and lets you do some nice per-contact customizations.

StopWatch

QR code to StopWatch

By sportstracklive.com. I use this for lots of things. If I need to time something or if I need a countdown to something (like Terri has asked me to take something out of the oven), this is a very nice app. It has a nice large timer display, allows for multiple countdowns, and has a button for recording laps (which I mostly use to help me track time while grilling).

Droid48

QR code to Droid48

By [shagrath])(http://twitter.com/shagr4th). The HP 48 is the Best. Calculator. Ever. This provides the classic calculator with RPN and everything. I wish it handled the (real) keyboard a little better, but I like the app anyway.

Congress

QR code to Congress

By Sunlight Labs. This is a beautiful app for keeping track of what your local Congressmen (or anyone’s Congressmen) are up to. It provides news about them, easy access to their Twitter and Youtube feeds, and information about bills they are currently sponsoring. If you want to stay up to date on national politics, this is great.

EStrongs File Explorer

QR code to EStrongs File Explorer

By EStrongs. I’ve tried a few different SD card browsers and this is probably my favorite, though Astro is a close second.

EStrongs Task Manager

By EStrongs. This is the task manager that goes with the file browser. It’s pretty standard and I use it to kill off apps every now and then.

ConnectBot

QR code to ConnectBot

By Kenny Root and Jeffrey Sharkey. Gives you a terminal on the local machine (i.e., on the phone) so I can execute Linux programs and such locally. It also gives me SSH in case I need to manage one of my servers.

TripIt - Travel Organizer

QR code to TripIt

By TripIt, Inc. I organize all my trip itineraries on TripIt.com. This brings the web site to my phone, which is very helpful on occasion when I need to remember where I’m going, what my confirmation numbers are, or whatever.

Twitter

QR code to Twitter

By Twitter, Inc. The official Twitter app is better for checking my Twitter account and getting updates when someone mentions me than anything else I’ve tried. It works really well, actually. I wish the Facebook app was half as nice.

ShopSavvy

QR code to ShopSavvy

By Big In Japan, Inc. This is the best bar code reader and shopping helper I’ve found for Android. It’s better than Google Shopper. You can use it to enter a search for a product or scan a bar code and then it will search online for Internet stores and local shops that have it and help you compare prices. Very nice.

Aldiko Book Reader

QR code to Aldiko

By Aldiko Limited. I don’t have a ton of e-books, but this has a nice library of public domain books, many of which are on my list of books I want to read. Currently, I’m reading Alice in Wonderland. This has a very nice interface and works well. I wish the Bible readers I had worked like this app does.

AndChat

QR code to AndChat

By Al. R. This is an IRC client. It works very well. I don’t use it quite as often as I would like to, but it is a good client in addition to my usual lurker connection (I log a number of IRC channels that I rarely interact with anymore).

eBuddy Messenger

QR code to eBuddy Messenger

By eBuddy. This is a decent IM client. I do not like the user interface of this one as much as the Meebo IM client. However, it does not use up battery like Meebo does and Meebo does not seem to maintain the Android app very well.

Movies

QR code to Movies

By Flixster Inc. I use this to help organize our Netflix account and check for movies in the unusual case I’m actually thinking of going to one. This actually provides a nicer interface to Netflix than the Netflix web site (which is what I say about just about every alternative web site for accessing Netflix since I find the main web site of Netflix to be impossible to navigate).

Facebook for Android

QR code to Facebook

By Facebook. This is the official Facebook app. I use it because it’s about the best there is, but it’s pretty bad. The notifications work every month or so. The UI uses a home page rather than the more usual menu or tab-based navigation. Clicking on notifications (when they come) or on many of the links within the app take you to the Facebook web site in the browser instead of the screen that exists within the app. When it takes you to the web site, it doesn’t even take you to the touch-site (the one made for iPhones and Android, etc.), but to the standard mobile site.

Robo Defense

QR code to Robo Defense

By Lupis Labs Software. This was the first game I tried on the phone and the one I’ve liked the best. It is extremely repetitive, but I’ve enjoyed in anyway. You have to protect one or more gates to your base by placing defense towers around it. Each game has 100 waves to it that steadily get harder. The thing that made me keep playing is that there are number of achievements you can get for doing certain things and you use points earned to buy upgrades. I’ve mostly exhausted these, so I haven’t played much recently, but it was a fun game.

Blow Up

QR code to Blow Up

By Camel Games. This is another fun game. In this game, there are little stick buildings that you blow up with dynamite. The goal is to get all the pieces to settle in as small a heap as possible. In addition, you have a stuffed panda that you need to get to fall toward a certain spot on each level. Gabe likes to push the button that causes the dynamite to blow and especially likes it if I put the dynamite on the panda and blow it up.

About this Archive

This page is an archive of entries from June 2010 listed from newest to oldest.

May 2010 is the previous archive.

July 2010 is the next archive.

Find recent content on the main index or look in the archives to find all content.