jump to navigation

Where’s my GUI designer for lo-fi prototyping? June 29, 2006

Posted by James Webster in : software, development , 2 comments

At my current client we have been spending time doing a little release planning. This has included creating some mock-ups of screens for a system that until now has been batch-oriented. So far we’ve been creating these mock-ups in the most lo-fi way possible; scribbled on the back of an index card. I had the good opportunity to recently receive some insights into the process from my colleague Luke Barrett who is a whizz at producing GUI prototypes within Powerpoint, which may sound strange but he really makes it work. Other’s prefer to use a wireframe template for Visio or OmniGraffle. Then there is the intriguing Napkin Look & Feel for Java’s Swing toolkit.

What I’m wondering is; can we do effective GUI prototyping using more traditional GUI building tools? What would a GUI builder targetted solely at producing prototypes look like?

A few quick thoughts I’ve had about this…

  1. Napkin LAF would be mandatory: forcing all prototypes to be rendered in a ’sketched’ fashion will reinforce in the mind of all that view them that they are just prototypes and are fair game for critique.
  2. Must be simple enough for non-technical people to use: most GUI designers I have used tend to be quite challenging to work with. Through arguable necessity they are festooned with palettes, property panels, toolbars and other assorted widgetry to build functional GUIs. This tool however could be much simpler; no event handlers need to be wired up, no futzing around with colours or fonts should be possible. Simple palettes of controls and contextual editing should suffice.
  3. Must be light on resource usage: Whilst many developers have the luxury of a high-performance workstation to satiate the resource demands of a modern IDE, most business users and domain experts generally do not. So in addition to being easy to use, this GUI designer should run well on lesser-spec’d machines.
  4. Can export completed screens/pages/dialogs to common image formats.
  5. Would include a palette of controls with common labels: I’m thinking of stuff like buttons with ‘OK’, ‘Save’ or ‘Cancel’ labels. Or perhaps drop downs populated with states/countries, etc.
  6. Should support grids/tables to be set up easily: Most database-backed systems will have several screens that involve the display of tabular data so the prototyping tool should lend a hand in this area.
  7. Would support the generation of lorem ipsum text.

So what do you think? Am I onto a good idea here or is it all just YAGNI? And if it IS a good idea, would someone care to build it for me?!

Dynamic vs Static languages… FIGHT! March 16, 2006

Posted by James Webster in : software, development , 1 comment so far

Via Obie, Reginald Braithwaite argues that compile-time type checking doesn’t buy you much in today’s world. I agree, especially if you are doing test-driven development.

There is alot of activity getting dynamic languages to work on top of existing VM’s such as the JVM and the CLR. Over at Microsoft, IronPython’s pace of putting out betas is impressive, whilst over at Sun, James Gosling is warning of the dynamic language barbarians at the gates.

Interpreting the language (Ruby, Python, whatever) to native JVM/CLR bytecode is only half the battle however. When the standard libraries for those languages are implemented through the underlying capabilities of java.* or System.* things will really get cooking. In my opinion, whichever of the JVM or CLR can get Ruby (and Rails) to run seamlessly on their platforms first will win a lot of kudos in the enterprise space as they will gain the productivity of Ruby/Rails, plus the integration with alot of ‘native’ Java/.NET code. The JRuby project is already making progress in this direction (albeit without Sun’s help). Scoble asked late last year what MS could do to make ASP.NET development more appealing. Get Ruby & Rails to run on the CLR, that’s how!

Demosceners and Will Wright’s Spore March 6, 2006

Posted by James Webster in : software , add a comment

The News Before The News is late to the party on this one however this video of Will Wright’s upcoming game Spore is long but well worth watching. What I find especially interesting, according to Gamespy, is where Will found the inspiration for some of the techniques behind the game:

Wright looked to the “demo scene,” a group of (mostly European) coders who specialized in doing a whole lot with a little bit of code. Their procedural programming methods were able to, for example, fit an entire 3D game in 64K, using mathematics to generate textures and music, etc.

I spent a great deal of my mispent youth in awe at the faraway European coders creating amazing graphics and sound on my Amiga 500, exhibiting their awesome grasp of assembler to wrest every inch of power from Agnus, Denis and Paula. I thought it was quite cool that their techniques have influenced what might be the ultimate sandbox.