Blog
Shady Mall Carts (Part One)
OK, so I don't really have a series yet. But I've always found those vendor carts at the Mall of America (and, well, every mall) to be a bit shady. Here's exhibit #1:
Just in case you can't read it, the sign says "Version Wireless" (as opposed to Verizon Wireless and what I thought it was at first, Verision Wireless, thanks Josh). They at least sell cellular phone accessories, and maybe they sell phones and phone plans as well. This was the only time I found the place unopened, which is a bit disappointing, but still, it's shady.
Drupal and Web Frameworks
Many of my loyal readers know that I'm into Drupal in a pretty big way. Lots of things are going well for Drupal these days, including a better-than-ever release of Drupal 6 and a community's who only major problem is handling the exponentially rapid growth. Last week, tech celebrity Chris Pirillo announced a project called Gnomepal where he encouraged developers and users to use Drupal as a core for a community platform. It's just another reason why I think Drupal is the web framework of the future and that I hope I'll be able to develop with Drupal more in the future.
First, Chris talked of Drupal as a "community platform", but what does that mean? A community platform is a website where all aspects of an online community can be attached or created. Drupal's web site calls its software a "content management platform" and "community plumbing". This is very accurate because Drupal is made up of many modules that work on top of the main core of the site. At the core of the site is the basics of managing news items and basic pages of a website, but with only a couple clicks you can add a blog for each user (or subset of your users) or a discussion forum or an RSS aggregator of a number of specified feeds. I have literally implemented all of these in a matter of minutes on basic sites to facilitate community. In this way, a website for an online community can be started in minutes and features can be easily added to accommodate growing needs.
What's so great about a community platform? On many of the sites that I build at work, we often use three or four open-source applications - sometimes a CMS that manages pages, a blog, and a discussion forum, and then there may be some custom work to tie them together or bring in custom functionality. The problem is that each application has its own administration and logins. Not only do the owners of the site have to keep track of four different accounts, but the users of the site have a disjointed experience and have to sign up multiple times as well. This type of community platform allows you to make one site with all these different parts that integrate better and all use the same login account. The only downside is that, because it does everything, it does not do everything well. For example, WordPress is perfect for a blog and exactly what I use here because the features are more specialized for a blog. But if I wanted a blog and a forum, I'd install Drupal because users only need one account and the site is better integrated by design.
Second, what is a "web framework"? A web framework is a collection of functions and libraries that speeds up the web development process. The web framework is built on top of an existing language and speeds up the web application development process. Examples of web frameworks include Ruby on Rails, Django (for Python) and Zend Framework (for PHP). We use Zend Framework at work and it really helps in making custom applications because there's a system for database abstraction as well as systems for managing URLs, templating, and much more. It takes a bit of work to understand and get used to the framework, but once you get the hang of it, it speeds up the development process a bunch and still gives you the ability to override or extend the functionality gracefully.
Although Drupal does not use an MVC pattern like most of the other frameworks, it is a powerful web framework. All extensions are written as modules, and functions for themeing, rendering and organizing forms, etc. are all available from the Drupal core. Many of the contributed modules even provide their own functions for adding your own modules on top. Although Drupal's web framework API is a bit different than the major web framework players, it is still a great development system. And, again, one of my favorite things is that this web framework comes with a extensible Content Management System from the first moment you install it, giving you a shortcut to building most applications.
In the end, though, there is a problem. I've adopted Drupal as the platform of choice for a community platform, for example, on my music website, inReview.net, as well as the basic content management system for most sites I manage. The problem I've had is figuring out how to figure out problems and learn more. Through the Drupal book and asking a question or two in IRC and on drupal.org, I have gotten a long way and been able to develop a number of custom modules. However, in the development of inReview.net, I have gotten to the point where I'm spinning my wheels a lot. I'm trying to make as much of an automated site as possible but I cannot figure out how to organize and tie in the artist data throughout the site. I know Drupal can do it, but I cannot figure out a way how. I've tried posting a question about it on drupal.org, but I've never received an answer. I need some outside help, but I'm not sure where to get it.
The free options are to just read up a lot about stuff on drupal.org, but that takes a long time of reading and does not directly answer my problem. I could try networking and learning a bit at a local Drupal group, but their meetings already overlap with a People of Praise meeting I already have. There are a couple other local groups of Drupal developers, and maybe next time a Drupal Day is organized, I will go, but there seems to be no real low-cost solutions to my problem that don't require a bunch of time I do not have. I already do other free things such as a free Drupal podcast which has given me lots of ideas.
So, I think that means I need to spend some money to figure out more about Drupal. I could hire consultants from Lullabot or Bryght or somewhere to figure out and develop a solution, but that is just investing in my site and not my own learning. Plus, hiring consultants such as these could be very expensive. The solution, I think, is the Lullabot Training series. These world-class Drupal consultants have helped Warner Bros. Records, Sony Records, MTV.co.uk, Participant Productions and many others to create great-looking sites that leverage all the benefits of Drupal. Plus, they've done week-long training sessions in most major cities and even are bringing it this week to Australia. It is almost $2,000 to get a week of training, but it seems like it may be the answer to digging into Drupal a bit more. They are spending a week next month in Minneapolis, and I'm thinking about attending. I think I'd learn a lot from the classes, and just getting a week to play around with Drupal and have some guidance will probably be exactly what I'm looking for.
What do you think? I'm leaning towards thinking $2,000 of investment in my Drupal skills is probably worth it. Should I go? Is there something else I could do? Have you been to a Lullabot training and did it help you? I'd love to hear your thoughts.
Ride The Chipotle Train!
On my way home from work today, I was walking to the platform and I saw this:
I knew I had to get on the Chipotle Light Rail train! Unfortunately, the train was packed full of sports fans for the Twins opener. It was almost as crowded as during a Vikings game.
The Apple iPhone's Rich Future
Last Thursday, Apple held an announcement on their campus that detailed some of their plans for the future of the iPhone. Although not much was surprising, many Apple fans and developers alike will be very happy with the amount of concerns that were answered by Apple. The only major concern for some people that was not answered was when the 3G-enabled iPhone will be coming for those faster speeds over cell networks, but with all the new capabilities with today's data speeds, developers should have plenty of projects to work on. Most of what Apple revealed will not be available to the public until June when iPhone software version 2.0 comes out, but both developers and corporations worldwide are looking forward to the future.
After a brief introduction by Steve Jobs, Senior VP of Worldwide Product Marketing Phil Schiller talked about the solutions for the corporate customers. Apple decided to license Microsoft's ActiveSync technology to enable corporate customers to get e-mail delivered to their iPhones directly. In a jab at RIM's BlackBerry services, Schiller explained that Apple's service does not rely on an intermediate service such as the one RIM has, but instead the iPhone communicates directly with the corporate server, and optionally via the Cisco VPN tool that will be built into the iPhone. Some commentators have said it less reliable than the system that RIM currently uses, but it seems more secure to me and less prone to system-wide outages because there's no intermediate service to go down like happens all too often for BlackBerry users. They performed an impressive demo where Schiller created a new contact on his Exchange-enabled phone and then some Exchange administrator in the audience added it immediately. Apple is even giving Exchange administrators the ability to reset the iPhone to factory settings whenever they want. For most corporations who already have an Exchange server, it seems like the iPhone will fit into the corporate environment with very little work.
The main portion of the presentation was done by Scott Forestall, Vice President of Platform Experience. Forestall announced the immediate availability of the iPhone SDK to developers and proceeded to show off the iPhone's ability in a number of ways. The SDK they released is the exact same as the one they used internally to develop all the apps standard on the iPhone, so it should be some incredible access to the phone's innards. Forestall reminded us that the iPhone is a stripped-down version of Mac OS X through and through, and therefore development will be much the same. For the Mac OS X, Apple has previously released their Cocoa API for developing applications, and now they're releasing an API called Cocoa Touch with functions for interacting via a multi-touch enabled screen. Tools include graphics layers, access to location-based awareness, accessing contact information and the photo picker, as well as data storage via the SQLite database.
Some of the funnest parts of the presentation for me was Forestall showing off the API. It seems like it might even be fun to develop for the iPhone (or maybe my Mac, as well). It seems that iPhone development will only be able to be done a Mac, which is not surprising. But, never having used the included Mac developer tools before, I was amazed at all the helpers they give. First, there's helpful apps such as an Interface Designer that allows the user to graphically layout and an amazing debugging application called Instruments. Forestall created a "Hello World" application and loaded it onto the iPhone connected to the computer and Instruments collected live information on how fast the program was running. He just clicked on an underperforming part of the graph and was able to see what parts of the code were running just then. And finally, the iPhone Simulator allows developers to run an iPhone on their desktop even if they do not own one. I had a bit of fun playing around with my virtual iPhone for a bit, although the Mobile Safari didn't want to bring up iPhone-specific versions of web pages - just the standard ones.
Forestall quickly showed off a couple demo apps for the iPhone and iPod Touch. First, they put together a simple photo editing program that uses the touch controls. Scott put his finger over the photo and the part under his finger bulged out. He then took two fingers and pinched another part of the photo together much like fun little photo editing programs do. The most exciting part, though, was the idea of just shaking the iPhone like an Etch-A-Sketch to reset the phone. They also made a little Starfox-like game called Touch Fighter. Just tap on the screen to shoot, and to move around, actually move the iPhone from side to side. You might look a bit like a dork jerking your iPhone around to dodge bullets, but it's probably pretty fun.
For the next section, Forestall introduced several application developers, mostly game companies, who got to spend only two weeks playing with the iPhone API. In most cases, they came up with some amazing stuff. First, a couple EA developers showed a basic port of this year's most anticipated game, Spore, which will be releasing for iPhone this fall. They were able to demo basic gameplay and species modification using the touch controls of the iPhone. Sega also showed a version of Super Monkey Ball that is only controlled by banking your iPhone from side to side and the developer claimed it was a very fluid, intuitive motion. It looks like a blast and it certainly looks like the games will abound on the iPhone.
Non-gaming apps were represented as well, with AOL Instant Messenger, Salesforce.com and Epocrates making appearances. The AIM client looked great and easy to use, and is great confirmation that Apple and AT&T aren't going to be sticklers about using lots of data services. Salesforce had an interesting application that would certainly help salespersons manage their bottom line and follow up on sales from anywhere. Epocrates, a healthcare information provider, had an extensive database of drugs loaded into the iPhone's database and made it really easy for doctors to search for drugs and find all kinds of information about conflicting drugs and even see hi-res photos of what the drug looks like. All these applications look just as nice as the ones Apple provide with the phone and provide plenty of features. Rumors over the last couple days have been saying that programs are not given the ability to run in the background or as a scheduled event, so that may be a hurdle to overcome with some developers. Also, at least on the phone, your application has to be ready to stop at a moment's notice in order to answer a phone call, so that may be a bit hard to account for.
Steve Jobs return to the stage of Apple Town Hall to tell us that developing your own applications for the iPhone is entirely free as long as you're just testing on the iPhone simulator. However, to load it onto an iPhone, you need to purchase a $99 certificate from Apple to verify you're a trackable, reputable devloper. You can test it on your own iPhone and then upload it to the iTunes App Store, where iPhone and iPod Touch users will be able to download applications. Developers will be able to sell their apps for any price they like, including free, but Apple will take 30% of the sale price for the hosting and listing of the program, which is comparable to similar centralized stores for Palm or Windows Mobile. Apple will test your program and verify that it's not malicious and then will post it online. The App Store will also be available directly on the device, so users don't have to get to a computer to download and install new applications, which is crucial, although you could if you like. This seems to be a good balance between security and usability of applications and doesn't seem overly expensive for developers.
In a somewhat odd announcement for the fabled "One more thing...", Steve Jobs and Kleiner Perkins, a large Venture Capital firm, announced the "iFund", which is $100 million that is set aside for startups who want to develop for the iPhone. I guess this is supposed to spur development for the iPhone and give the little guy a chance for iPhone development. This move doesn't sound bad, but it's just a bit odd.
Overall, it seems like the iPhone is headed firmly in the right direction, even if some of us wanted it about a year earlier. Still, it's not surprising, as Apple doesn't like to lay all its cards on the table - they'd rather stagger them over time as the market for the original product slows down. If the development for the iPhone is anywhere close to what Apple and most people are expecting, I'll be itching to get an iPhone for my next phone when my contract expires in 18 months.
The Status Messages Problem
For the last couple years, most of my circle of friends have all signed up for Gmail accounts and hang out on Google Talk. It's much slicker and nicer than Yahoo!, MSN, or AIM, mostly because it's done in a Google smart way. It makes it really easy to contact all my friends because, more often than not, my friends are online, but it does still have its downsides, just like all the other services.
Among my friends, the "status message" has become the mode of communication. A month doesn't go by where some of my friends talk about how much they love that their Google Talk contact list is like a virtual "living room" of their circle of friends across the country, and I agree. It is fun to read everyone's status message, and great to be able to hear what's going on in people's lives or to find out what they're seeing/watching on the Internet.
However, the main problem is that I only really have time to hang out in this "living room" for about 12 hours per week, on average. I have a couple hours on the weeknights of Monday and Tuesday and then some blocks of time on Saturday and Sunday. Almost daily I hear, "Did you hear what was on so-and-so's status message?" Of course I didn't! I was at work! (And no, the management at work wouldn't look kindly upon me chit-chatting it up all day.)
The best way to overcome this problem, in my opinion, is to use a service such as Twitter or Pownce as well as or instead of Google Talk. These services are basically another place to input your current thoughts or goings-on that also includes an archive of statuses. Persons can post comments on your message. Your friends could also get your latest status message sent to their cell phones, if they like. You can download some sort of application that will keep the latest statuses of your friends on the side of your screen, just like Google Talk, if you want. Sure, there's some status messages that are of the moment and not worth having a big archive of, but when someone posts a cool video or interesting article, I'd rather not hear about it three weeks later in a conversation where I'm the only one of 40 people who didn't hear about it. I like this because then I can subscribe to the RSS feed and read about it later that evening or the next day when I have time, and then I can take part in the conversation. If I do come up with a quick thought that I post on my Google Talk status, I always also post it on my Pownce page, whether via the website or the handy little Adobe Air app, because I want you to hear about it even if you're not online at that millisecond.
Do-Nothing Governor Overruled on Transportation Bill
This past week has been a historic week for people who leave their houses on a regular basis in Minnesota. This week, Governor Tim Pawlenty's often overused veto power was overruled by state legislators. This is a major win for the state, as Gov. Pawlenty has consistently vetoed every transportation bill to pass his desk in the last six years as well as worked to cut transportation funding in favor of balancing the state budget without raising taxes. (Some politicians who have not supported Pawlenty's transportation plans even blamed the governor's policies on the collapse of the I-35W bridge this past fall.)
The transportation bill will raise the state gas tax 5.5 cents per gallon. This is the first gas tax increase in 20 years, and will generate billions of dollars for transportation-related projects, of course mostly roads and bridges. Also, the seven-county Metro Area will add a quarter-percent sales tax that will raise approximately $1.1 billion over the next 10 years for public transportation projects such as light rail, improving bus service, and providing more options for bicyclists and pedestrians.
Under Pawlenty's terms as governor, I've seen transportation, especially public transportation, suffer. When I started using the buses about 6 or 7 years ago, the buses ran more often and many routes ran all night. But since then, almost no buses run after 1 am (thus negating the idea of using the bus after the bar) and only a handful of routes run more often than every 20 to 30 minutes. The Metropolitan Council has often been blamed for putting too much money into light rail at the expense of bus service, but the truth is that the Met Council was doing what they could with the limited finances they've been given.
I, for one, am very excited about the potential for this extra funding. There's no doubt that our roads and bridges can use the funding, unless we want to to turn more of our roads into private toll roads or something. Also, I'm excited about the potential for improvements in other forms of transportation such as buses and light rail, which have been sorely underfunded in the past couple years. Like I said in an opinion letter in a local newspaper, we need to promote mass transit and make it a robust system, otherwise no one will use it. I still think that is true after three years, and I am glad that the state legislators are willing to fight for it.
In other Twin Cities transportation news, MetroTransit recently updated their Trip Planner to have a better user interface and maps of the locations (although it should be using Google Maps). Also, I will be posting more on the current plans for the Central Corridor Light Rail in the next week and how it is progressing, so stay tuned.
Stardust: Fairy Tales Gone Wrong
Director Matthew Vaughn started out producing Guy Ritchie's hits Lock, Stock, and Two Smoking Barrels and Snatch, then decided to try his own hand at directing with Layer Cake, a somewhat intriguing crime film starring the up-and-coming Daniel Craig. His most recent production, Stardust, is a case study in many of the vices of today's modern film.
From the preview, the film looks promising. There's evil witches and a boy who loves a girl. The boy says he's going to fetch a fallen star for the girl. Robert DeNiro seems to play a pirate of a zepplin pirate ship. There's kings and princes and other magical stuff. But this isn't The Princess Bride.
Much like movies such as Shrek, Stardust quickly maintains that the magic is poisoned by making sure that every character from the land of Stormhold is dysfunctional like every other modern movie. The hero of the movie is borne of a one-night stand with a princess enslaved to a witch. We find that the king of the land of Stormhold is determined by all of the seven brothers killing each other and the last living heir is the ruler (so much that the princes are named only in the order of which they were born). Robert DeNiro is not a swashbuckling pirate, but a cross-dresser who is trying to hide is true effeminate side from his crew. Also, most if not all of the characters flaunt their sexuality to the point where the film almost surpassed the PG-13 rating.
I don't know about my readers, but when I'm looking for a good fantasy or fairytale film, I'm going to stick with Tolkien or Disney, who know how to put together a convincing story without insulting the viewer's sensibilities. Speaking of which, Enchanted is a modern fairy tale that doesn't totally ruin the boundaries of the genre but still plays with it in intriguing ways. Of course, don't watch these with your kids unless you're ready to answer some of the hard questions of life.
The GNU Game?
Over Christmas, I was looking for a good game or toy for a young relative of mine. I had to take a picture of this hilarious-looking game box:
NOTE: Those friends of mine who know little of computers or know nothing about Linux may not find the humor in this.
Star Trek: The Prequel
To be honest, most times, I hate the "teaser trailers" that show nothing more than a new logo. But hey, this one shows the Enterprise under construction, so it almost doesn't count as a teaser. Yes, this is the only big movie that I know about for this Christmas: a Star Trek movie that predates the original series and contains a cast never before seen on TV or film. Plus, it's written and produced by the guys behind MI:III and Lost. It might be pretty exciting, but we'll only know in 11 months.
MacWorld Report: MacBook Air and iTunes Movie Rentals
Yesterday, Apple made some big announcements, as usual, to kick off the MacWorld Expo, the largest convention and trade show of all things Mac, iPod, and Apple. There weren't any really big suprises, but Apple definitely delivered some really interesting products.
First up was talk about some updated products. Steve Jobs demoed free updates to the iPhone and Apple TV. The iPhone (and iPod Touch) got some nice new features, such as being able too put a bookmarked webpage (and probably other third-party apps, which are coming next month) on the home screen as an icon. Also, the icons can be easily moved around and multiple home pages can be created. Even the icons on the bottom of every screen can be changed so your favorite apps have easy access. The Google Maps app has been cleaned up and you can now get your approximate location from the cell towers and a database of geolocated wi-fi access points. The iPod Touch until now shipped without applications like e-mail, but now they're available to all Touch owners for $20 and free with the phone. And, finally, Apple TV has a brand-new interface that packs more functionality in each screen as well as makes it so you can purchase movies and music, and thus you don't need a computer to use an Apple TV (although it does sync with iTunes if you have it). This is interesting because people who don't really care about computers and iPods could even purchase music and movies directly from the Apple TV.
The first major announcement is that Apple is now allowing users to rent movies from the iTunes Store. Apple has signed all major and some minor studios to their rental agreements, and have set pricing for movies at $2.99 and $3.99 for new releases. Users can also download HD (720p) movies for a dollar extra, and it seems that purchasing movies directly to your iPhone or iPod Touch is currently not available, although I think it would be a cool feature if they had that someday so you could rent some movies at the airport before you get on a flight. The standard DVD-quality videos are only about 1GB and download pretty quickly over a standard broadband connection.
Apple claims that most broadband users will have enough of the movie downloaded in under 30 seconds that the movie can be started. If this is the case and it looks as good as DVD, I may start considering it as my preferred method of rental, because it's cheaper than going down the street and getting a scratched-up disc from Hollywood Video and even more instantaneous.
The biggest part of the announcement was the MacBook Air, the thinnest and lightest laptop computer ever. The aluminum case holds a 5-hour battery and an 80 GB hard drive, which is powered by a 1.6 GHz Intel Core 2 Duo processor and 2 GB of RAM. At its thickest area, it's only 0.76 inches thick, and on the edges it measures only 0.16 inches thin! Steve Jobs brought it out in the standard inter-office envelope to an amazed audience. They claim it's the thinnest laptop computer ever, and at that size, I'm pretty sure no one can dispute that.
Although the size is small, Apple really doesn't skimp on features. This ultra-portable has a 13.3 inch screen and a built-in iSight camera. The keyboard is full-size and has the ultra-hip LED backlight. The touch pad looks even bigger than my MacBook Pro touch pad, plus it can do new gestures such as pinching and rotating in various programs. It includes Bluetooth and 802.11n Wi-Fi, the fastest wireless internet available. Also, for the person who wants the latest and fastest, the hard drive can be replaced with a 64 GB flash memory hard drive, although it remains seen as to how well these function in the long term. These are $1,000, but apparently they are faster than hard drives and use less battery power.
So what does it lose? Well, if you want to use tons of accessories, you'll need a USB hub and lots of dongles. For $99, Apple sells a companion DVD-burner drive that plugs in via USB because there is no internal CD or DVD drive. It comes with dongles to connect their Micro-DVI to VGA or DVI to use an external monitor. Also, USB dongles are available to connect to Ethernet or a phone line. I guess the mobile office would require a nice USB hub to connect more than one of these at a time.
Why is it called the MacBook Air? Well, I guess because the computer is all about a wireless experience. If you think about it, most everything is done wirelessly these days. Most people use the Internet and e-mail almost exclusively (and some Twitter and Facebook exclusively), plus, if you have your music and movies in the way iTunes likes them, you have them either on your laptop or an other connected Mac. The only major issue is the occasional install of software or burning of CD, and Apple has come up with a solution for that too. Included with the MacBook Air is Remote Disc software, which allows you to wirelessly use a CD or DVD drive from any computer on the local wireless network once you install it on that Mac or PC. It certainly solves that problem as long as you have access to another computer, which almost every user of this computer will undoubtedly have. Still, the "MacBook Air" is a bit of a hokey name, much like the "iPod inviso" because it isn't aerodynamic enough to fly or anything. It's just really small, not made of air, right?
The MacBook Air serves a fairly small market of people who want to take their computer everywhere and not lug around a large backpack. This "ultra-portable" market is commonly a computer under 3 lbs. that has all the basic features of a laptop in a compact package. Most of these have a 11 or 12 inch screen and a smaller keyboard, while the MacBook Air has a 13.3 inch screen and full-size backlit keyboard. The MacBook Air is also thinner than all the currently available competition from the likes of Sony, Dell and Gateway. At $1799, it may seem a bit pricey, but it is only marginally more expensive than similarly-styled laptops, if it is at all.
Some of us were hoping for more from MacWorld, but it did not happen. Still, you can expect a bigger-capacity iPhone and an iPhone with 3G functionality along with some nice software updates across the line throughout 2008 if predictions prove correct.