Friday, 14 March 2014

Pros and Cons of Including a Refund Clause and a Debugging Clause when Developing a Website

Greetings one and all, time for yet another exciting blog post from the brain of Skippy. Due to being very in demand over the past couple of months I haven't been able to update as regularly as I would like, so this update is long over due.

This question comes from Matthew Harrington, a fellow local Web Developer who I regularly chat with to bounce ideas off each other. Big congratulations to Matthew for having recently set up his own Web Development business. Hope it goes well for you!

So, for the question - As a Developer how important is it to have a refund clause and/or a debugging clause in a contract? Of course no client should ever expect that 'Attempt 1' is the finished product, in fact if they do its a sure sign its time to negotiate a way out. Whether it be a website, online database or any software you've created its usually developed in such a way that you get a general framework in place before adapting it to the specification for your client.

In order to answer this I'm going to break it down into the Pros and Cons.

The Refund Clause - Pros
  • Its a great 'out' for all that are concerned - If, for whatever reason, the working relationship between yourself and the client becomes untenable, or the client simply has ideas that are so vague that it becomes clear that the project will be quite difficult, then this is were a refund clause can be ideal.
  • You find that the website is being used for malicious means - Even when a website is complete the programming in it is still yours (your client will only own the domain name or the overall brand and content on the site) so if you think it is being used for something you didn't agree with during the time that site was being built, then yes its time to voice your concerns and come to some kind of a solution, usually a refund.
The Refund Clause - Cons
  • It suggests you want to be paid up front for the work - A lot of clients don't like handing over money for something that doesn't exist yet. I personally only issue invoices once a project has been completed to a minimum specification (any additional work is invoiced separately). A refund clause is only really valuable if you are paid up front. Why would you need to be refunded for something you haven't been pad for yet?
  • A refund clause suggests you have had problems with clients in the past - there's nothing worse then that awkward moment when you site down to discuss how a project moves forward and you have to explain the history of a previous project which didn't work out. Not exactly a conversation you want to have with someone who is willing to trust you and ultimately pay you for your services.
As you may be able to tell a refund clause can be difficult. Its there for a reason, but it can also put potential projects under threat. It all comes down to how much you, as a developer, trust the clients you are hoping to work with. There is no harm in explaining your terms of service to anyone if they need to know, but if you find you are explaining a negative experience then stop explaining, The last thing you want to do is give a client a reason to not want to work with you.

Of course if, upon reflection, you realise you have more negative experiences then positives then book an appointment with a business advisor to see if there is anything you can do different to make your experience better. Developers live and die by there reputation, so always remember to assess the perception people have of you.

What about a Debugging Clause?

As I've wrote this article I've come to the overall decision that a debugging clause is a brilliant item to have in your contracts. When meeting a client to discuss a project ask them when they want the website ready for. Depending on the size of the website this will either range from a few weeks to a few months.

Aim to get a website ready a few weeks before the deadline. This gives you time to allow the client to see the website, mess around with it and also for you, as the Developer, to test it. Once everyone is happy that all the criteria have been met, then go ahead and launch the site. The debugging clause could be something like 'we've both tested the site, it hopefully works as you expect, but if you notice any bugs during the first XX weeks of the site being live then please inform me and they will be fixed ASAP'. Of course any additional features the client wants adding should be invoiced separately.

Hope that helps any budding Developers out there. Any questions please just leave a comment and I'll endeavour to respond as best I can.

Happy Development my fellow Website Creators!

Sunday, 19 January 2014

Stargazing 2014 – The Best Live TV Show I’ve Seen in a Long Time

Stargazing Live 2014 was a great start to the year

There is something marvellous about watching a group of people talk about a subject enthusiastically. Even more so when it is live, unedited and only loosely held together by a schedule to fit in a television slot. With so many guests, presenters and short clips to cram in, all wanting to share their enthusiasm for their subject, it makes for a great spectacle.

Such an occasion on television rarely comes along. Normally live TV is so heavily controlled you get a sense that discussions are held as nothing more then time fillers until the next part of the broadcast. So when it all just clicks into place, you know you are watching TV gold.

The 3 day event that was Stargazing Live 2014 was one such event. And I felt privileged to be able to watch it all unfold before my very eyes.

I’ve always been fascinated by the starts, planets and universe ever since I was a kid. Even to this day I still have a Star Chart hanging up in my room with a map of all the stars in the northern and southern hemisphere, grabbing my attention whenever I walk past it. The idea that there are other planets and galaxies out there, with infinite possibilities of what they hold, is just such a draw to me. So when, I think it was 4 years ago, the first episodes of Stargazing where broadcast, I was so excited.

This year seems to have gone to different levels of greatness though. Seeing Professor Brian Cox and Dara O’Briain, a quirky combination of presenters that works so well, talking about the stars, universe and planets like excited kids, is just great to watch. You could tell from the way they spoke and the look in their eyes that they really enjoy their subject, and it definitely rubbed off on me watching it on TV.

There is a definite camaraderie between the two presents. When Dara was getting ridiculed for looking slightly weird in a Centrifuge G-Force simulator at NASA, he immediately showed a clip of Professor Cox in the same machine, declaring that he looks like an old woman from Coronation Street. Hilarious to watch.

And the guests on each show…simply wow! NASA scientists, veteran and new astronauts, experts in various aspects of astronomy and mathematics, the list went on. Each one had a fascinating story to tell about their life studying or working in space. So powerful were their stories that the 3 day event would have been a success even if we just had them being interviewed for the entire duration of the shows.

It almost seemed cruel when Dara had to cut the guests short at times because they had to move on to the next part of the show, but that’s live TV for you. I would have loved to have seen some extended interviews on the website, just to give each guest the opportunity to tell their story in depth. Perhaps something to consider for Stargazing 2015?

Then we had the perfect balance of comedy mixed in with science. One moment Professor Cox is explaining the shape of the Milky Way in a filmed clip surrounded by candles strategically placed to show the shape of our galaxy. The next moment Dara is asking everyone to talk amongst themselves while he picks something up from the floor, or his head starts randomly appearing in the 3D planet sphere they are seen playing with regularly (I want one!).

Let’s not forget about the stunning footage of the Aurora Borealis. I’ve never had the opportunity to see this spectacle myself, but to see it live and changing shape was a delight to watch. A huge high 5 for bringing that footage to the viewers.

And on day 3 we had the biggest reveal of them all. A new galaxy had been discovered by a viewer during a challenge that had been set on the first day. The discovery was so amazing telescopes and observatories all around the world were pointing at this new galaxy to learn more about it. Watching it unfold on TV was breath-taking, I genuinely felt I was witnessing a moment of history. When they showed the discovery on TV I immediately shouted out “that’s incredible”.

It was a fitting end when they named the galaxy after the gentleman who found it. When they interviewed him live it became even more poignant when he said he had been an amateur star gazer for decades, and it was heart warming that he would have his name in history forever. It was a great way to end the show and the series for this year.

No pressure BBC, but I’m already looking forward to Stargazing 2015. You’ve set the standard for how live TV should be broadcast. Heck, even if it’s half as good as this year it will still be amazing to watch.

I applaud everyone who was involved in Stargazing 2014. In my opinion the best live TV show I’ve seen in a long time, if not ever.


Time to get my telescope out.

Friday, 10 January 2014

New Year in A&E

The first few days of my year where spent at North Tees Hospital

A great start to 2014. 2 weeks of illness and time spent in hospital. Not only has it prevented me from getting on with the things I enjoy doing; it also delayed me from wishing my sister a Happy Birthday. It’s fair to since 2014 has a lot of making up to do, and its’ only the 10th day of the year!

I suppose I was just unfortunate I was struck down with illness when I was. For those who don’t know I suffer from migraines. To the many these are nothing but pains and annoyances in the head brought on by stress and tiredness. To the unlucky few, and I sadly put myself in this category, a migraine is nothing more than a living nightmare. The sudden sharp pain in your head, flashing lights in the eyes and, more disturbingly, the sudden and unrelenting full body pain you suffer, are just a handful of the problems I’ve had to live with ever since I had my first proper migraine some 8 years ago. My only saving grace is that I only have to go through this torture every 3 to 4 months – I’ve heard stories of people whose pain is never ending.

For just under 2 weeks I was in hospital. Such was the pain it was unbearable to move, even the act of blinking caused shooting pains throughout my body. An MRI scan, Lumbar Puncture and lots of pain killing drugs and exercises later, I was finally free to return to the real world and at least get back to some kind of normality.

One shred of comfort I can take from being a migraine sufferer is that I at least know what is causing my problems. Migraines are irritating (literally) because there are so many different types, some better understood than others and treatment ranging from ‘lifestyle changes’ to ‘take this tablet when you are about to have an episode’. My particular ones are dealt with a combination of lifestyle changes – no caffeine, cheese or chocolate (the 3 foods I love most in the world!) and Propanolol tablets to keep them as irregular as possible. It doesn’t stop them, and when I have an attack it bloody well hurts, but at least they are manageable. My latest MRI scan has shown I’m missing the Myelin layer in my brain, the part that stops excessive electrical signals being transmitted. No protection, no insulation, and meaning every so often I’m always going to have a build of electricity in a confined area, causing a migraine.

The good news is, after 8 years of suffering these painful problems, I’ve finally been referred to a Neurologist to see if there is anything that can be done to fix this missing part. Now its’ just a waiting game. If I’m honest I’m not overly confident they will find a miracle cure, but I’m glad to know its’ not really anything I have caused myself. The problem was always there, it just took 18 years of my life for it to become a problem. Apart from going MIA for a couple of weeks every few months I should lead a relatively normal life.

And with that I’m very much happy to be back to my old self, and will officially be declaring January 10th 2014 as my ‘unofficial New Year’. The first port of call I had to do was get my sister her birthday present. It was her birthday on the 7th January, and due to me being otherwise engaged I was annoyed to have missed it. Gifts have now been sent, I’ve wished her a belated Happy Birthday, and I can finally crack on with my year.


Happy Birthday Mel!

Saturday, 10 August 2013

Mainstream news websites need educating on the Games Industry

This generation has highlighted the difficulties mainstream news has on reporting about the Games Industry

This is something that keeps popping up every few months, and it seems to have gone to new levels of craziness over this current generation (Xbox 360, PS3 and Wii). As we move into a newer console generation, and ultimately find even more people are online and gaming regularly, I’m now of the opinion the news that is being reported on generic websites needs to handled differently.

It only seems to be a mainstream news problem too. Websites and other specific interest websites, with trustworthy news sources, regularly get the news right. Not only do they focus on the correct details of the news, but also aren’t afraid to throw out comments and opinions, backed up with reasoning, to demonstrate how this news impacts on the wider gaming community. Websites like Game Trailers, Game Spot and PSXtreme have all built, in my opinion, a strong loyal following because they broadcast news the moment they are aware of it, and offer constructive and critical opinions on them.

Then we come to the mainstream generic news organisations. I’m based in the UK, so the BBC is where I get a lot of my news from. Then we have the press - The Times, Mirror, Sun, Telegraph etc, who don’t give gaming as much attention as it deserves.

I remember an article that was published on the BBC website a few years ago that said the PS3 was struggling to sell well because ‘There weren't many games available’. I think this article was written around 2009 (sometime around the release of Killzone 2), a time when the PS3 had been available for a number of years, consumers where just beginning to see a surge in 1st party games being released on the console, and all of the fantastic 3rd party games where multi-format and available on either 2 or 3 of the gaming consoles. To say the PS3 had fewer games then the other consoles was completely inaccurate.

The worse thing about this kind of news article is that it seems out of date and written by someone who has no knowledge of the industry. If this article has been published in 2006/2007, when the PS3 really was up against it, it would have held more merit. But the fact that such an article was written a couple of years later merely shows how far behind they are with their information and views.

Considering games are on par, if not above, Hollywood movies with regards to income, values, and the time consumers spend actively using them, it’s about time the mainstream news started paying attention.

A couple of days ago the BBC published another article about how Xbox One will charge for some features (http://www.bbc.co.uk/news/technology-23613754). To me (and apologise if I'm in the minority here) this isn't news worthy. This feature has been in place since the original Xbox, and in order to get the best features out of your console you have to pay an annual fee for ‘Gold Membership’. The PS4 will have a similar model in place for online gaming, and to a lot of gamers it is acceptable and makes perfect sense. Companies have to maintain their servers and other IT equipment, so to have to pay a fee to connect to them seems fine to me.

I'm aware I've focused a lot of attention on articles on the BBC website. This is simply because it’s easy to access the site, and I'm aware that other news companies regularly output similar content. If the news wants to gain respect from a fantastic industry they should learn to appreciate what warrants being published.

At a time when new consoles are about to be released its crucial consumers are aware of the differences in each console. Xbox One is hogging a lot of the limelight at the minute, simply because their announcement was so shambolic they've had to reverse a lot of their decisions (and I’ll get to that in another blog soon). But don’t forget to tell people about the positives of gaming too. Games are helping people over come social boundaries, the industry is becoming less male dominated and new ideas are flourishing. Games are even helping people out of hardship by letting developers publish their own games on phones, and soon console devices.

I’d much rather hear the stories of game developers and how gaming is helping to improve our lives. It sounds so much better then reading news that is 3 years out of date, inaccurate and, in some rare cases, becomes the point of blame when a tragedy in the world happens.

The games industry is a thriving place of creativity and excitement. Is it so much to ask for journalists to get the news right and show this fantastic atmosphere, and properly educate the masses?

Tuesday, 30 July 2013

Do You Need to Know About Databases to be a Web Developer?

Back once again, and this time for as long as you all want to listen to me! Having sifted through the work I've been doing for the past few months it’s now time to get back to blogging and blogging hard!

And what better way to start things off with the most popular question I get asked about when it comes to website development.

Do you need any knowledge of how to create databases?

I'm in a fortunate position to be able to communicate directly with students at universities around North East England, and this question always pops up. It seems a simple enough answer too, especially when it comes to dynamically generated websites, but it warrants a more detailed explanation.

The short non-detailed answer:
Yes, it helps a lot!

The detailed answer:
Absolutely, especially when your making a website which connects to a database!

When you start making websites, whether you just do it as a hobby or want to do it professionally, people generally start the same way. They’ll start by making good old fashioned HTML websites, with JavaScript programming for those who are brave. These are websites which you have to manually update by editing the page directly, then putting it online for the world to see. For starters it’s a great way of learning HTML code and the many different standards and accessibility options you can use, and it gives you a strong standing in programming and design.

If you use a program with a WYSIWYG interface, such as Adobe Dreamweaver, don’t limit yourself to using the design view. Use code view, or switch between them both. You’ll eventually begin to be able to visualise your website just by looking at the code. It’s a great skill to have, and makes you a much better designer. Rather then having to build something to see how it looks on the site you can just imagine it and see if it works or not.

The next logical step is to move on to dynamic building of websites, using a database and a content management system. This is where a lot of professionals tend to stay, using existing template technologies to quickly build websites and supply them to the client. You’ll graduate from HTML to other web technologies such as PHP and ASP, and be storing website content in a database. This allows you to exaggerate the scale of a website because different content is being pulled from a database depending on different outcomes. One page could be used to display thousands of different information, making your site seem huge!

With dynamic websites it soon becomes apparent your not just working with web pages any more. You need a database, an admin system and ways of connecting all these things together. Databases can be potential projects in themselves, and you need to appreciate that all the content needs to be stored in a logical way, but has to be unique from each other too. This is where Primary Keys, Foreign Keys, Joins and Filters are used to collect only the necessary information you need.

In my experience it’s always best to use numbers as unique identifiers for information stored in a database. Every number, no matter how big or small it is, is different from each other, and allows for similar content to be stored without any conflicts. I've seen websites that connect to a database to retrieve information based on a name, only to find two or more pieces of information have the same name and so a logical error happens because the database doesn't know what information to send. This is especially apparent when working on larger scale websites where lots of different people are constantly updating information all the time.

A working knowledge becomes even more crucial if you then take the next big step in web development and begin to make your own websites and management systems from scratch. It’s a big step to take, and one that should not be taking lightly. This is the world of custom-made websites (and a beautiful world it is, if I do say so myself). While you have so much more control other your projects, you’ll soon realise that it’s up to you to understand and control how the website works, but you have so much more freedom to express your creative talents and try new ideas out.

Remember that, if you do make custom websites, to always follow a development style, such as OOP (object orientated programming). While you may be building a site to a specific specification you might end up not being involved in the actual running of the site. Always program your sites in a way that other professionals can understand, and don’t be afraid to collaborate with others. While a lot of developers are comfortable working alone its always nice to bounce ideas off others and try new things out.

Good luck to any budding web developers who want to pursue this career. It’s a brilliant job to have and lets you have fun designing and building. Databases and their structures are a crucial part in dynamically driving websites, so if you have any ambitions of development such things I’d strongly suggest learning about databases. Take it from me, they’re not as boring as you think, and can be used in countless different ways.

Should anyone have any more questions about databases, or web development in general, please feel free to get in contact. I'm always happy to help.

Tuesday, 2 July 2013

When Programming Becomes Art

Wow it’s been far too long since I posted on my blog. Something I'm supposed to do everyday has gone a whole 7 weeks without an update! Terribly sorry people, but when I explain the reason why I hope you’ll understand.

For the past 2 months I've been working on a new database for Hartlepool Carers. Those of you who have seen my previous posts will know I do a lot of IT support for them - whether it be running the Hartlepool Carers website, or fixing a Carers computer for them. It’s pretty fun stuff, and one which is different every time I visit.

My latest challenge was to build them a database which allows them to more accurately monitor how any people they support is progressing. There existing system did this to an extent (you could leave a comment explaining what you had discussed with the Carer), but unfortunately it was too vague and was impossible to pull results from.

Step forward Skippy! Having been handed a list of criteria the new database needed to meet, and using a little bit of artistic licence to make it a bit more pleasing to use (grey coloured forms are so 1997), I began to build this beast of a system.

I’m now happy to report that the new database (I’ve called it Gabrielle, every database I make is a girl haha) is now nearing the end of its development. It’s super complex in terms of programming, but I’ve hopefully made it as simple as possible to use.

I have to show you this one bit of SQL code I used. It is a work of art!

The Code

SELECT tblCarer.uniqueID, tblCarer.carerType, tblCarer.forename, tblCarer.surname, MAX(timelineEvents. date) AS lastDate FROM tblCarer INNER JOIN timelineEvents ON timelineEvents.carerID = tblCarer.uniqueID WHERE tblCarer.isClosed = ‘F’ GROUP BY tblCarer.uniqueID HAVING lastDate <= '2009-31-12' ORDER BY lastDate ASC LIMIT 0,25

For the uninitiated reading this, let me explain this code.

The English Equivalent

Get the top 25 people, who are still registered with Hartlepool Carers, who haven’t had any communication with Carers since the end of 2009. Only get the date which references their last recorded contact, and then arrange them so that the person who hasn’t been contacted for the longest time is at the top.

I’ve just ran this code on the database, which is full of 3,000 people and over 50,000 recorded events.

Total time the code took to gather the results: 0.012 seconds!

Efficiency and the correct results from a glorious bit of SQL programming. If this isn’t art I don’t know what is.


Would love to know what any fellow SQL aficionados thought of this code. When I figured out how to write it I was super excited by it.

Tuesday, 14 May 2013

BBM on Android and iPhone ASAP Please

I'd definitely use BBM on my Samsung Galaxy


The head dude at Blackberry, a Mr Chris Green (who is even more epic for sharing his name with my step-dad) has announced the Blackberry Messaging Service will be going cross platform. Users of Android and iPhone devices will soon be able to use the service too. I'm totally excited by this!

A few years ago I worked in a Call Centre for a mobile phone network. One day a group of us where invited to a new training session to play with the new Blackberry phones (can’t remember which one’s they where), and a couple of corporate folks where doing their best to sell us these phones too. I was never a big fan of Blackberry’s. The keypad is too small for people like me with huge hands, hence why I have my Samsung Galaxy S3…it’s the perfect size for me.

While I was never interested in Blackberry’s, myself and a couple of friends in the same training class where loving the BBM system. Pinging away, sending messages to each other, completely ignoring the important training we were all receiving. For a whole 10 seconds we seriously considered buying a Blackberry. Then we came to our senses and realised 90% of the messages we sent had some type of misspelling in them. Not one of us could use the keypad properly.

But now, as I'm staring at my S3, I can see it working. By opening up the system to other devices Blackberry could be onto a winner. The 60 million monthly users could treble in the space of months, and then keep increasing as the months turn to years.

Only down side I can see is the lack of information about Windows Phone’s. To me personally it’s not really a big issue because I hardly know anyone with a Windows Phone (Google and Apple seem to have a 50% - 40% share within my close friends and family, with Blackberry having the over 10%), but that’s probably why Blackberry didn't mention them. If this ratio is continued everywhere then what’s the point in supporting them? At least they still have Skype.

The sooner BBM goes cross platform the better. I'm excited by it, and I can finally get around using the pesky Keypad’s. I love my Galaxy!