[ Content | Sidebar ]

Recommended Books for Web Application Developers

June 1, 2008

If you are a web application developer and you want to read some good books that don’t deal with programming or web design but are more focused on how to build web sites that are useful, profitable and up and running before you get bored of building them, then I have three recommendations -

Don’t Make Me Think - Steve Krug
This book is all about common sense, which believe it or not designers tend to throw out of the window when building user interfaces. This is normally because in the mind of the designer everything works just as they planned. Give your user interface to someone else to test and be amazed at how differently they try and navigate around it. Google’s success is not just because they have good search results but also how easy it is to use. The book uses examples of interface changes over the years of some of the most popular websites on the internet.

Getting Real - 37 Signals
This book is an excellent resource for learning how to cut wasted time in a work environment by rapid prototyping and as the title says “the smarter, faster, easier way to build a web app”. The books authors invented Ruby on Rails which provides rapid prototyping and code generation functionality, GENNIT can be used to build your .NET applications faster, smarter and easier as well!

The Business Rules - David A. Eichenbaum
Not normally a book that gets reviewed along side the other two. The Business Rules deals with the business end of building a business (and web application). Free isn’t a great way to earn money from a web application and this book drills it in. It gives examples of how even the biggest of companies messed up there profits by not following simple business rules such as “sell it for more than it cost you” - one of my favourite rules in the book.

Tips and Thoughts - 0 Comments

CakePHP Template on GENNIT

November 9, 2007

PHP developers have been left out of GENNIT for too long. So it is with great pleasure to announce that GENNIT now supports the excellent CakePHP Rapid Development Framework. If you are a PHP developer and want to get a head start on your project consider using GENNIT to generate DAL and MVC elements of your project to use on the CakePHP framework.

Checkout the updated templates list to see the CakePHP template features.

CakePHP on GENNIT

GENNIT will build your MySQL database and create model - view - controller objects that you define using the GENNIT designer, as well as any relationships between them.

Once you’ve defined your project using the designer, download the generated code zip and paste it into your CakePHP installation. Thanks to the scaffolding feature of CakePHP; you will also be able to manipulate your data without having to write a single line of code.

CakePHP Scaffold Example
CakePHP Scaffold

If you decide to use GENNIT Pro. with the CakePHP template, 10% of your subscription will be donated to the CakePHP development team!

Leave to cool and serve with ice cream or custard.

New Features - 1 Comments

Pricing Changes

November 3, 2007

Positive Spin - GENNIT is now $8.33 a month which is a about the same price as a couple of venti skinny soy caffèlattes that you probably could get through in one day.

Price Crash!!!

The minimum signup period is now six months rather than one month. The reasoning behind this is purely from an advertising perspective. Advertising GENNIT on Google for example, typically costs $1 a click so for every ten clicks one of those people has to sign up just to break even. This is obviously not going to work if I want to advertise GENNIT.

Hope everyone is OK with that!

News and Updates - 0 Comments

GENNIT on Mashable.com!

July 30, 2007

Mashable Web Development Toolbox

GENNIT made the ‘Web Development Toolbox: 120+ Web Development Tools‘ over at Mashable.com.

Big thanks to the Mashable.com for the inclusion - it sent visitors through the roof for a little bit -

 

reinvigorate gennit stats

Reinvigorate Stats

 

Buzz - 0 Comments

Template Creator

July 20, 2007

Progress on a new feature of GENNIT is under way and it will hopefully open GENNIT up to a whole new world of flexibility.

Rather than having to select pre-created templates/generators such as NHiberate/ActiveRecord/XHTML users will be able to write their own - again using online template designers. Below is a screenshot of the work in progress that should be available within the next coming weeks.

GENNIT Code Generation Template Creator Featured Picture

GENNIT Code Generation Template Creator

 

Coming soon!

New Features - 0 Comments

Code Generation Real World Part 3

This is a continuation of Code Generation Real World Part 2 which in turn is a continuation of Code Generation Real World Part 1 which is probably a good place to start if you’ve just got here.

In Part 2 I had just successfully downloaded the zip file which hopefully contains all the code I need to get started with the GlobalSurfari Facebook System.

GENNIT Code Generation Explorer
Extract the Zip file to a location on disk

After extracting the zip file you can see a number of folders and files exist. The first step would be to read README.html. This file contains a QuickStart guide and gives you the information about exactly what files have been extracted and what they are for.

Code Generation Readme
README.html - File Descriptions and QuickStart Guide

The file lists what each project and for certain projects, what each file does - it also contains a Quick Start guide for getting your project working.

From the Quick Start the following steps are to be taken -

  1. Ensure all of the directory locations match up (for example, this is an NHibernate template and I declared that NHibernate was located at c:\Program Files\NHibernate )
  2. Generate the database by using the script supplied by GENNIT
  3. Ensure the database connection string is correct and will connect.
  4. Open the solution and build it, use NUnit to ensure the solution is working correctly and communicating with the database.

Global Surfari Database Script
Generate the database using the supplied scripts

Opening the solution in Visual Studio I build the project and press F5 to run it. NUnit opens by default (as the parameter to NUnit is supplied when building your project), running the NUnit tests returns green lights, meaning the code and database are all working correctly. When this stage is reached the generated code is working properly and development on your custom solution can start.

Code Generation NUnit Build Green Lights

NUnit Green Lights is a crucial milestone

In the fourth and final part of the Code Generation Real World series I show what source code was changed and how the Facebook module turned out!

Tips and Thoughts - 0 Comments

Code Generation Real World Part 2

July 11, 2007

This is a continuation of Code Generation Real World Part 1.You may remember I have just drawn the diagram for the class layout for the project -

GENNIT Global Surfari Facebook on Paper

My GlobalSurfari Facebook System - on paper

So I have my diagram. It is very simple, I have a User object which contains the Facebook ID (fbid), Name and Surf Prediction Default (home) and a Message object, which contains the message the user writes on the ‘wall’ (body), surf prediction the message was written on (home) and the created date of the message (created). As well as a many to one link with the User object.

Now I am just about ready to get going with GENNIT, all I have to do is reproduce this diagram using the designer and I am ready to go. I am going to use the NHibernate C# DAL which comes with GENNIT to create the project.

Code Generation Real World Walkthrough Step 1
Create the Project

So I now have a ‘GlobalSurfari FB DAL’ project on GENNIT. I open the designer to re-create my diagram from paper into the system.

Code Generation Real World Walkthrough Step 2

Reproduce my paper diagram onto the GENNIT Designer

The Many-to-One link is represented by the user property on the Message object (shown in the above screenshot).

Next step is to Generate the code, I click on the GENNIT link from the dashboard, ensure all the parameters for the project are correct (specifically what the database is named) and download the generated code.

Code Generation Real World Walkthrough Step 3

Downloading the code generated project from GENNIT

In Code Generation Real World Part 3 I demonstrate what modifications I made to the downloaded code to get my Global Surfari Facebook Application up and running.

Tips and Thoughts - 0 Comments

Code Generation Real World Part 1

July 8, 2007

I wanted to give a real world example for the use of GENNIT. However, to make it a real real world demo I had to wait for that situation to come along. Fortunately the gods have blessed GENNIT as that situation came along a few days ago. This is part 1 so please be patient!

A few years ago, after spending practically 365 continuous days surfing, I found myself back in London. It felt like a million miles away from a decent surf beach. Fortunately, England’s South West is blessed with a varied coast which, in the late summer, isn’t too cold to go surfing… providing there’s waves and its a very long drive (5 hours) to find out if there isn’t any. There’s obviously other surf forecasting software out there, but I wanted my own surf forecast, so I created GlobalSurfari.com.

Global Surfari

Skip forward a few years and the Facebook revolution has started, with 30 million users and the ability to write applications for the platform it just seemed like a great place to put Global Surfari, for all the Facebook surfers around the world.

Brief

  1. Put GlobalSurfari.com into Facebook
  2. Allow users to chat on a ‘wall’ within each individual surf forecast location (Facebook Social Aspect).

Design
Getting the surf prediction to the user is already handled by the Global Surfari system in place. The social aspect did not exist, to provide this functionality I would need to know -

  1. Who the user was
  2. What Surf Prediction they have as their default
  3. What Surf Prediction they were writing the message on
  4. The message they were writing (and the time they created it)
  5. That’s it.

So after all that, here’s my UML diagram committed to paper.

GENNIT Global Surfari Facebook on Paper

Jump to Code Generation Real World Part 2

Tips and Thoughts - 0 Comments

Tangler for Feedback

June 27, 2007

Tangler feedback for GENNIT Code Generation

GENNIT Feedback is now on Tangler, rather than the forum system that we were previously using. The main reason for the swap was spam. Tangler is a pretty cool system developed here in Australia.

GENNIT Tangler Feedback Forum

News and Updates - 1 Comments

NHibernate 1.2 Generator

June 26, 2007

Bear which could potentially hibernate

Announcing the launch of NHibernate 1.2 Template for GENNIT.

The NHibernate 1.2 Template generates best practice templates for an NHibernate Data Access Layer. Based on the brilliant work by Billy McCafferty in his article NHibernate Best Practices 1.2.

The generated output includes a Visual Studio 2005 solution which contains 4 projects, Core, Data, Test and Web.

Core - Contains Domain Objects (Data Objects) and hibernate XML mapping files as well as interface design for data access.

Data - All NHibernate based operations occurs in this project. To extend the DAL with additional methods and operations add functionality to the individual classes within DataObjectFactory.cs and consider moving them out of this CS file and into their own.

Test - Very similar implementation to the Castle ActiveRecord DAL Test library. Tests the objects to ensure they are connecting and writing to the database as well as storing values.

Web - Implements NHibernate session management (defined in Data project) to provide simple example of getting values from data objects and inserting new values.

Goto http://gennit.com and signup/login to get going with the NHibernate 1.2 code generator.

New Features, News and Updates - 0 Comments