Thursday, March 27, 2008

Book Review : Pro Drupal Development

Last year at work we spent some time reviewing available Content Management Systems. Our aim was to streamline some of our more basic web development work to allow more time for the interesting bits. After quite a bit of testing we settled on Drupal. We all recognised that Drupal was a complex system and that we had a lot to learn. We also recognised that it had the flexibility to deliver the more challenging aspects of our project specs while keeping editing simple for our clients. We accepted that a steep learning curve came with the package. That learning curve has two distinct areas :
  • Interface driven configuration
  • Scripting based configuration

Using the UI in Drupal to configure your site involves remembering where all the bits are and which ones are relevant to what you are trying to do. This is most obvious when installing a new module. As the Module needs to be enabled (and if there are any dependancies they need to be enabled, configured ... first). You then need to set permissions and then to configure the Module. That's before you start working out how to implement the thing you wanted in the first place. You find yourself coming back to the site a few months on and wondering how the hell did we do that? We have made a lot of progress but we still have a long way to go in becoming comfortable with the Drupal admin UI. Scripting based configuration offers an even steeper slope to climb and in the end we turned to the books; or at least one book : Pro Drupal Development (John K. VanDyk & Matt Westgate, Apress, 2007). It is hard to imagine doing any serious Drupal development without having read this book. It's not that the information isn't available from other sources. The Drupal site is chock full of information if you have the patience to find it and make sense of it. That's the problem with community driven resources they can grow a little wild. Pro Drupal Development offers the information you need for Drupal development in a logical sequence with clear and simple examples. It is written from a place of deep Drupal knowledge and it seemed to me that every page dripped with powerful gems that would transform your Drupal development experience. Perhaps that sounds a bit over the top. But I did pick up a lot of tidbits that I'm using daily. From my perspective the book can be roughly broken into three sections. The first section, Chapters 1 - 10, is what you have to know. It looks at Modules, Blocks, Themes, Nodes and the Form API. You can't build anything in Drupal without a good understanding of these concepts. The second section, Chapters 11 - 23, are things you should know. It looks at filtering, searching, caching, localization, security. You shouldn't build anything in Drupal without an understanding of these concepts. The final section is the Appendices and specifically Appendix A which has the Database Table Reference. Having this handy reference at hand is going to save you a lot of time if you need to write an queries (and considering the patchy selection of Methods most Modules offer you will probably need to write a few queries). I don't buy many programming books and consequently I'm very selective about what books I do buy. I think you need to buy this book because Drupal's support material is a rambling thicket. I guess you may feel a touch put out buying a book for that reason (I did). This book is good compensation for the inconvenience of Drupal's documentation and in the end this book makes it clear that Drupal itself is worth the effort.

Wednesday, March 19, 2008

Actionscript Reference for RIA Development

Adobe have released the Actionscript Reference for RIA Development.  This free pdf provides an alphabetical reference for all native Actionscipt API's for Flash, AIR and Flex.  The reference is very clearly laid out making it very easy to identify the relevant platform for each API as well as available properties, methods, interfaces and superclass.
Blogged with the Flock Browser

Tuesday, March 18, 2008

Blist : easy online database

Just spent some time looking at a new Flex application called blist.  It promotes itself as the world's easiest database and from a quick test it's hard to disagree.  I had a look at Coghead last year and while Coghead is geared a little more towards database applications I found it quite counter intuitive.  In contrast blist makes it very easy to make and query databases and provides some very useful data types.  Perhaps the clearest example of this is the date field which allows them to provide a calendar view of your table.  But equally useful are the very easily created (and customised) pick lists, image fields and url fields (that provide site previews).  It's not clear at this stage how they plan to make money off this fine system as it's free to sign up and use the beta.  TechCrunch reports that "they do intend to charge both casual consumers and business users" but it's unclear when and how this will happen.
Blogged with the Flock Browser

Thursday, March 13, 2008

Eclipse PDT : PHP Editor

PDT is a PHP editing IDE for Eclipse.  It provides all those lovely debugging, outlining, code hinting tools that  Eclipse provides for PHP development.  I hadn't written about it earlier as I hadn't had time to get going with it until yesterday.  My colleague installed it pretty well straight away and has been using (and  raving about ) it since.  I have been looking across with envy and saying I must find time to get that installed. 

To be fair I had tried to install it after the 1.0 release.  But it can be a bit awkward to install as it has a swarm of dependancies.  Fortunately, there is now an all in one release, but it means re-installing Eclipse and for Flex developers then re-installing Flex Builder (this question of dependencies and how they are managed is Eclipses Achilles heal).  It is worth the effort as PDT is already a great PHP development environment.

Blogged with Flock

Wednesday, March 12, 2008

Flash Player : April Security Update

Adobe have released an advanced warning regarding the 9th April release of a Flash Player Security Update.  The update is comprehensive and has the potential to break many existing projects.  I would recommend that anyone who has developed a Flash application that loads data through any mechanism take a close look at the update and consider any necessary action.

Blogged with Flock

Google Sites : Get Your (Google) Stuff Together

For a long time it's been clear to me that Web 2.0 must eventually resolve itself into a small number of all in one place tools.  For the last few years many of us have been choosing publishing platforms for our image, video, blogging, bookmarks, calendars, documents ...  But that place hasn't always been the same place.  For example, this blog is published using Google Blogger and I regularly include photos stored in Yahoos Flickr (I could use Picasa but I prefer Flickr).  I have sidebar widgets that aggregate my bookmarks from Faves and my shared items from Google Reader.  But I have other content in other places that can't be easily added to my blog and the blog isn't the ideal place for all my content.  What we need is one flexible tool that brings them all together.  The recently released Google Sites seems to me to be a prototype for the uber-tool of the future.  Google Sites is built on tools Google acquired from the Jotspot wiki company.  It allows you to bring together content from a wide range of (Google) sources; calendar, docs, spreadsheets. 

At this stage I'm just noting my thoughts on Google Sites. I haven't had time to get under the hood and have a play.  I certainly have some concerns about how nicely it plays with other systems.  I'd hate to think a time is coming when we need to make a choice between one of two or three uber systems for all our bits.  But it seems we are one step closer to being able to display all our public bits in one place and that a good thing.

Blogged with Flock

Friday, March 07, 2008

My First Game : Wheel Of Death

Screenshot : Wheel of Death

Feeling pretty excited I uploaded my first game; Wheel of Death onto Kongregate a couple of hours ago.  If you aren't familiar with Kongregate it's the king (King Kong : apologies for that) of the new wave of web 2.0 social gaming sites.  If you like playing trivial and annoying Flash games (like the one I just added) it's a great place to go.  The game was built using the 2D Physics Engine Box2DFlashAS3.  This was my preferred engine when I did a review of the available engines back in January.  I haven't written much about Flash 2D Physics since them mostly because I've been spending most of my spare time building this game.  I think it's still a bit buggy.  But for a first game I'm pretty happy.  I've got a few pressing work committments.  But hopefully I'll have time to get a few more of the bugs out and blog about the experience of building it with Box2DFlashAS3 in the near future.

Blogged with Flock

Tuesday, March 04, 2008

Wozniak criticises smartphones

"I'm learning to use their menus, it's awkward. I feel like a slave and less important than the technology."
The above quote is from Apple co-founder Steve Wozniak and was made at this weeks Broadband and Beyond conference in Sydney. He also had some mixed comments toward the iPhone. But the above quote really struck a note for me. Considering how long we've been designing and using screen based GUI's I don't understand why even the most basic tasks on the latests phones are so hard to do. I regularly find myself cursing because it takes five selections to delete messages or four to make a phone call. Surely common tasks (like making a call) should be easier. The other thing this comment highlighted for me is that technology works when it puts people first. Technology should always aim towards the highest achievable level of transperancy.

Blogged with Flock