Saturday, 17 October 2009

Level Up on IE 6

Recently, I discovered that level up looked like this on IE 6:



I use syntax highlighter written by Alex Gorbatchev to display Java, SQL or XML code and, for some reason, these ugly grey lines randomly appear over the syntax highlighter, but only in IE 6.

I have been testing the website on IE 7 and IE 8, based on the naive assumption that most users would be using an up-to-date version of the browser. However, looking at the stats for this blog it appears that 43% are using version 6, 38% are using version 7 and only 18% are using version 8.

For this reason I have removed the syntax highlighter whenever an IE 6 browser is detected.

Level Up Version 1.3 - Oracle SQL

Version 1.3 of level up is deployed. This is the initial Oracle SQL release and includes the SELECT statement, DML, DDL, joins and integrity constraints.

Saturday, 10 October 2009

Oops... Bad Design Alert!

The model of the world I have developed for level up is wrong!

The relationship between a head of state and the country they represent is defined with one-to-one multiplicity. However, while this is often the case, Queen Elizabeth II is head of state for no less than 16 different countries. Being English, I really should have known this.

Anyway, I will leave it for now but just in case you do happen to use level up to learn a new technology, I'm sorry Your Majesty.

Level Up Quick Start

I am a little disappointed in the way Quick Start has turned out. It seemed like a good idea at the time but now feels a bit bloated and cumbersome.

The intention was to allow developers to get up and running as quickly as possible and I still think that this is an important aspect of learning a new technology.

I will try to think of something a bit slicker for this section. At the very least, the ability to download the code in a zip file would seem appropriate.

Level Up Version 1.2

Version 1.2 of level up is deployed. I have added sections on Associations and Hibernate Query Language.

I had hoped to include much more but simply ran out of time. In the future I intend to include topics such as inheritance, XML metadata and configuration for other databases.

I have also set up a level up development web site which contains work in progress. The Oracle section should be released around the 18th Oct.

Saturday, 8 August 2009

Getting Started with Hibernate - Justifying ORM

The first tutorial on level up takes a look at Hibernate.

After a very brief introduction, we dive straight into an example using a Country entity.

I decided not to talk about the benefits of ORM and the difficulties caused by the object-relational impedance mismatch etc. etc. based on a couple of assumptions.

Level up is aimed at Java JSE developers with at least some practical experience so I gambled, first, that most programmers will have had some exposure to SQL and JDBC and, second, that anyone who has done even rudimentary programming with JDBC will immediately see the benefits of an ORM framework.

You only need to retrieve data using SQL and JDBC into your domain objects, or perform basic CRUD maintenance on a table, a couple of times, to appreciate why Hibernate exists!

Getting Started with Hibernate - Tutorial, Example and Reference

The Hibernate area on level up consists of three main sections.

1. The tutorial aims to put across the concepts of the subject matter as concisely as possible. With Hibernate, pages on entity mapping, the Session object and CRUD operations on persistent entities, seemed appropriate.

2. Quick Start provides a working example for developers who want to get up and running with Hibernate as quickly as possible. It is cut and paste only at the moment but a download could be included.

3. The reference section (which is a little light on content at the moment) will provide code snippets for common requirements such as a primary key generator using a sequence or a bi-directional one-to-many relationship between two entities, for example.

I also intend to add a 'Further Reading' section on each page.



This will be the standard model for subsequent topics which will include associations, HQL and inheritance with Hibernate.