Lamp Training

Up to the minute training
in emerging web technologies

Ian Millington - Biography

Ian Millington Photo

I got involved with web-application development in 1996, developing some of the earliest massively multiplayer browser games.

I have used a range of web-development technologies over the years, including writing custom server systems in C++, the inevitable years of Perl, and over the last five years a range of Python based web technologies.

I have deployed systems based on Zope, on custom Python web-frameworks, CherryPy and most recently Django.

Before founding Lamp Training in 2006, I consulted for clients on software research and development. Particularly in the areas of Artificial Intelligence and Decision Support. As part of this consultancy I have developed a large number of web-based applications for clients in short times scales to tight budgets, displaying state of the art functionality and behaviour.

I taught programming to a wide range of university students, including post-graduate courses in Java, web development and Pop-11 (a relatively obscure artificial intelligence programming language). For three years in the mid-1990s I provided the introductory web-programming course at the University of Birmingham in England. This was at a time when the web was beginning to take off, and the course attracted a significant number of the department's staff as well as its students.

I was an AJAX pioneer. My PhD research included published work on using embedded code to create AJAX-like interfaces with dynamic HTML (well before the term AJAX was coined, and well before Javascript had the ability to support AJAX). I also wrote for the original Web Developer magazine in the US.

I am the author of two academic and professional textbooks published by Elsevier.

Our Training

Our courses are intensive and practical, focussing on timely web-technology issues for professionals who need to get stuff done.

Course Materials

Our training philosophy can be expressed in 4 simple principles:

1. Doing is better than just hearing. Our courses are structured in a bite-sized way, with a concept presentations, followed by guided student work on exercises and well-written, robust example code.

2. Training is a long-term process. We continue to provide support for your participants for three months after the course is over, answering syllabus-related questions as they arise. We don't leave our course participants in the lurch when they come to apply their learning to real world problems.

3. Not all experts can teach. Not all teachers are experts. Minimum qualifications for our instructors are expert-level skills in their subject with a great ability to communicate their knowledge and mentor skill-development.

4. It's your course. Everyone has different needs of their training program. We work hard to understand the demands your work will put on your technical skills, and tailor programs to help you. We are happy to include your real-world problems as examples and exercises.