I’m back

My site was recently down for a couple of days. And, it looks like I lost it all. I do have backups, but I decided this would be an ideal opportunity to make some changes.

Read More»

CodeIgniter 2.0 In Progress – The Critical Changes, Implications, and What You Should Know

Well, it’s been a long time coming, but Ellislab have finally done it, they’ve officially let us know about CodeIgniter 2.0. This is a huge step forward and shows that Ellislab are dedicated to this, their only free product.

I get plenty of emails asking me if this version of CodeIgniter would be released, and it’s clear there’s been a huge buzz about this in the wider development community. So, I’m going to take you through the changes and explain what you need to know, and what this means for CodeIgniter as a framework moving forward.

Read More»

Web Developers – We Don’t Need No Education?

September is the start of the new school year, and we’re all fresh to do some learning after the summer right?

When it comes to web development, I don’t actually have any qualifications for my industry. Well, I have an A-Level in Computing (*woo hoo!*). But, let’s face it, that’s not exactly a tough one to get. So, after being emailed recently regarding qualifications, I decided to investigate the whole industry. What qualifications are available, are they recognized, and are they really worth the bit of paper they’re written on?

I started by looking at some of the options available here in the UK. I imagine that this would be similar to the USA too.
On the first tier, there is the well established Zend Certification, which is specifically for PHP. Zend states some of the ‘benefits’ of gaining their qualification:

  • Differentiate yourself from competitors when looking for a new job
  • Boost your value at your annual salary review
  • Get your resume/CV noticed
  • Gain recognition from your employer
  • Have your profile displayed in Zend’s Yellow Pages for PHP Professionals
  • Join the Linkedin Group Exclusively for ZCE’s

Well, a linkedin group! Who could possibly say no?!

Zend Certification is actually fairly well-known. But unfortunately, only by other PHP web developers. Even move to the ASP land, and they won’t have any idea what the qualification means. This isn’t exactly ideal when you may be being interviewed for a position by a Java guy and a manager.

In terms of price, it’s not too bad. I suspect Zend have lowered their prices in the last few years.
The actual exam costs around $200, which isn’t that expensive. But your likelyhood of passing first time isn’t top notch, so you’ll want some practice exams at $15-$20 each, and maybe the study guide for around $50. Now we’re looking at about $300-$350.

If you’re nowhere near passing the exam, then you will have to get the full training course, which is about $1,500.

Overall, the Zend certification appears to be a good thing. And, if you’re already pretty slick with your PHP5 then it could be a fairly cheap qualification.

The downside to it is, it’s only for one specific area of web development. It doesn’t even touch front-end development (XHTML, CSS, Javascript)… and it doesn’t look at database administration/building.

In a nutshell: Zend Certification is a decent PHP5 qualification. But only if you can get it cheap. It’s way too specific to spend a great deal of money on

Maybe I was looking at this from the wrong angle. Maybe, what we could all really do with is a degree! Yep, a fully fledged BSc, a ‘proper’ qualification. Everyone knows what those three letters mean: You partied and lived off pot-noodles while racking up $40k of debt for a few years.

In terms of degress, the situation here in the UK has improved. Traditionally, degrees in the computing department tended to be very broad. Subjects like ‘Computer Science’ kind of looked at all sorts of computing areas but never really spent a great deal of time on the web.

But, now there are options! Several universities here are offering degrees such as this one:
Internet Computing (3 years) [BSc] (Manchester University).

Manchester University has always had an excellent computing department. They claim to have made some of the world-changing inventions in computing. To my suprise, they now do this much more specific degree. And it’s still housed within the computing department. (Many internet specific degrees are studied in an ‘informatics’ department instead).

So, what is a degree in ‘internet computing’?

The internet has become central to a wide range of commercial, educational, and leisure activities. As a result, the internet is used directly by a diverse collection of individuals and organisations, with different requirements and priorities. This course provides knowledge and understanding of the architecture and design of web-based systems and web development tools. it also provides skills that underpin the development and evaluation of collaborative and interactive web sites in commercial settings.

Well, it sounds pretty good, until I saw this line:

Tuition fees for Home/EU students commencing their studies in 2009 will be approximately £3250 per year

So that’s £9,750 just for the tuition fees for 3 years, then you can probably triple that figure to include living costs. So, £30,000 and 3 years of study for a BSc in internet computing.

Seems a bit expensive.
Now, I wouldn’t mind spending that if it was the ‘only’ way to get a decent job in web development. But it’s not! We are currently in such a great industry, where employers are very much more concerned about what you know, and how much quality work you’ve done, than how long you spent at university and how many letters you have after your name.
After all, I could have a degree in computer science and not know a thing about OO MVC PHP Development.

There are however employers who do demand degrees. Google is one of them. Because they’re such an awesome company, they can demand only the elite of the academic world, and so expect first class degrees in very complex and deep subjects such as Computer Science.

In a nutshell: Until a degree is classed as ‘essential’ by the industry. Or unless you want to work for Google… They’re just not worth it.

Basically, I believe that a really good portfolio, and experience in the industry is worth more than any qualifications. Unless that qualification really is essential.
And with the state of specific web qualifications, getting one that’s recognized can be a real minefield.

I think that there is a space for a good web development qualification system.
But it needs to be more defined and nationally supported.

For example:

  • A-Level in Web Application Development
  • BSc in Web Application Development (Specialized in: PHP/ASP/Java/Coldfusion)
  • BSc in eCommerce Technology
  • BSc in Database Administration

By making the qualifications more specific, and being able to start from an earlier age (A-Level), then we could have a generation of web developers with excellent, focused, and relevant experience that comes from good education to attain their qualifications.

But for now, I’d just build a kick-ass portfolio.

CodeIgniter – One Heck of a Can Opener

As a huge CodeIgniter enthusiast, I was asked to say a few words about the framework that’s completely changed my development style. And, always wanting to give back to the community, I decided to write a little bit of text explaining exactly why I think CodeIgniter is so good.

There is also an audio version of some of the article to go along with this too.

CodeIgniter is one of those things that just does a job perfectly. Take for example, the humble can opener. Whilst there may be a few other ways to open a can of tuna, the can opener just ‘works’ it serves a simple, yet extremely efficient purpose, and does its job with perfection.

CodeIgniter is exactly that. A can opener.

It’s a lightweight, efficient, full-featured web application framework that’s flexible enough to use for any type of web app. It’s built from ground-up with just one purpose – to make our lives easy; without sacrificing functionality, speed, or flexibility.

If most of your web applications share functionality across the board, you wouldn’t rewrite all that functionality for every one of them would you? – It’d be a ridiculous waste of time. CI is basically the skeleton for all my web applications. And instead of spending my time creating core functionality, I can spend my time building application level functionality.

When I first install CodeIgniter, I take 1 minute to configure a few settings, and then I’m away coding how the web application will work. Rapid is very much an understatement.

I’ve used CodeIgniter to build a basic content management system, an Enterprise Level XML-RPC based backend, a file mangement system, a blog, a photo gallery, a forum, a recruitment site… you name it, CodeIgniter just ‘fits’.

I don’t think I’d ever go back to development without CodeIgniter. It’s saved me hundreds in headache pills, and will probably continue to save me thousands more.

This is part of Ellislab’s ‘Have Your Voice‘ series, which allows members of the CodeIgniter community to write a little bit about CodeIgniter. I jumped at the chance to post some content, since CodeIgniter has become the main weapon in my development arsenal. So, if you’re passionate about CI, why not give something back too?

As a way of giving the CI community an even louder voice, I’d like to once a week or two publish something from a community member to the CodeIgniter blog. Its a chance to write about whatever you want, and speak your voice. The idea isn’t to gather posts on a specific topic, its to let you share with the communtiy. Has CodeIgniter given you something? Please give back!
- Derek Allard

A huge thanks to Ellislab for the opportunity to write for the CodeIgniter Blog, hopefully I’ll be posting some more CI Related Goodies!

My Pocket Guide To Blogging

Blogging has definitely become the free press of the modern world. With availability to anyone with an Internet connection, blogs are more popular than ever. But, many of my friends, and indeed colleagues don’t know why I blog. What’s my reason for it? And what’s the goal?

I’ve been thinking quite a bit about the growth and evolution of my blog recently, and I decided to share with you some of the things I’ve learned over the last couple of years. Although many of my readers are are regular bloggers themselves, hopefully you will still get something useful out of this, quite long post.

Content

So, let’s start with the ‘thing’ to spend your time writing about. I spend my time writing about Web Development and my experience with it. The main purpose of this is to help people who are asking the same questions as me, or indeed to encourage beginners by showing them how to do certain things. I might also write some more ‘advanced’ posts which touch issues of the web’s philosophy, or even challenge the very core ways in which we should go about development.

The reason I write about this topic is simple. I love it. And, it’s much, much easier to spend your time blogging about something you’re passionate about than any other topic.

Get what I’m saying here? – If there’s something you love doing, then there’s probably a good audience for a blog all about it.

Frequency

Now, frequency is probably the next thing to consider. There are some blogs that post entries every hour, some every day, and some once a year. The important thing to remember, is to always set yourself a reasonable goal. It’s always better to write a few high content quality entries than a lot of quick but rather unsubstantial posts.

So, think of a number, and half it. Seriously. Think you can do 3 blog posts a week? – I’d say more like 3 every 2 weeks. There’s some good reasons for this. Firstly, there’s the ‘time’ thing. Very few of us have regular free time slots. So ‘when’ you can blog will vary from week to week.

Secondly, you need to find content to write about. You may think it’s easy at first… but when you start writing regularly, you’ll realize that your content can dry up, and you may even find that you repeat yourself.

Delivery

We’ve thought about content and frequency, now let’s take a moment to think about delivery. This has a lot to do with your content, so be sure to take a look at what other blogs of similar nature are using to deliver their content.

Sorry, before I continue, let me explain what I mean by delivery. This blog is powered by WordPress, a standalone PHP/MySQL blogging system which I’ve installed on my server. So my blog is delivered in a very ‘traditional’ manner. However, there are new services such as ‘Tumblr’ and even ‘Pownce’ which allow users to post ‘mini-blogs’.

Think a great deal about your frequency and post size. These will effect which sort of service you want to deliver your content. If your posting daily, or even more frequently than that, with short, quick updates… Then consider Tumblr.

If you’re more likely to do a long, weekly article. A more ‘traditional’ approach such as WordPress, Blogger, or ExpressionEngine may be a better option.

Purpose

Never post for the sake of posting. So many people start blogs, and then end up posting content that isn’t worth the time to read it. Because they were previously posting at a regular frequency, they feel obliged to continue doing so. Never ever feel this way. Your blog is a resource, not a public service. Your users will be grateful if you keep your RSS feel updated less regularly, but with excellent content, rather than a hit-and-miss quality consistency.

If you do get ‘blogging block’, try taking a notebook with you when you’re out and about. Sometimes you may see things which just inspire you to blog. Maybe it’s a strange human behaviour, or, for me, and interesting and unusual programming error and solution.

This may seem strange, but some of the best blog content I’ve ever read has come from simple observations of people in the real world.

This brings me nicely onto my next point. We are all part of the real world. So don’t feel guilty for referencing it. If you’re telling a story about something that happened to you this week in the real world, don’t be vague, generic, and altogether dull… Make it specific, name places, times, weather, feelings. Remind your audience that you are a real person, who does real things, in a very real world. Just as they are too.

It may seem like an unusual thing to do, but believe me, it always makes for a more engaging read.

Connections

Interaction is Key – blogs are so free in the way that they are not restricted as a 1-way method of communication in the same way that mainstream media so often is. So use that to your advantage. I’d say that almost all types of blog lend themselves to having a comments section on each post.

Don’t get me wrong. I am aware that there are a few exceptions to this. But, if you can get your readers to join in, and turn a blog post into a discussion (particularly with trackbacks from other referencing blog posts), you instantly add to the appeal and satisfaction of your blog.

Build ‘friendships’ with other related blogs. Remember, they are not your competition. They are your ally.

Blogging is not a world full of capitalist corporations trying to get 100% market share, or at least, that’s not what it should be. It’s much more of a virtual, free, socialist/communist society (it could only ever work online)… where people share, give, and love others.

This may all sound a little optimistic, but believe me, I’m not licking frogs here. One of the reasons I am so passionate about the internet and blogging, is because I believe in the culture and ideas that surround it.

How does thing actually work on your blog then?

Well, as an example, I often reference posts by Michael Wales, or Derek Allard. I’ll generally stick to related content and articles. But I think it’s important for my readers to know about other great content from clever people I respect. And, in the same manner, they will often post links back to articles I’ve written.

Now, this is down to the quality of your content. People will only link back to something they think is worthwhile and useful. So, as I mentioned earlier, think long and hard about your content… and try to keep the quality as high as possible.

Presentation

Use Pictures! – Studies of people’s learning behaviour has shown that peoples retention of knowledge is much higher when they study an illustrated medium as opposed to a text-only form. This isn’t as easy as it sounds, especially if you’re blogging about something more conceptual, such as web development.

On my blog’s home page, I have a large image for the latest post. This is there to provide the reader with a stimulating thought before their eye even hits the title. Since doing this, the number of people clicking through from the home page to the latest article has more than doubled.

If you can, place regular images throughout long posts to help break up the content and give the reader a little break. This allows the reader to pause, digest the last bit of the post, and commit it to medium term memory before continuing. The image will provide them with a visual reminder of the content that they’ve just read. People are four times more likely to remember something if they have been reminded of it just once.

Satisfaction

There are many reasons to blog. Mine is to share my ideas/thoughts/knowledge with the community. But, whatever yours is, just be sure that you love blogging about your topic. Because once it becomes a chore, your blog really will lose it’s momentum.

I hope you’ve found this post useful, please leave your thoughts and comments!

© Copyright Elliot Haughin
This is a free demo result from the Wayback Machine Downloader. It is not a complete website.