PHP UK Conference
26th February 2010, London
- Interesting conference
- Affordable and with loads of important issues being discussed. The following talks were the ones I've seen that this report is only my analysis of the subjects discussed.
The lost art of simplicity
By Josh Holmes
This was basically an exposition of very good practices a developer (and a company) should use to avoid big problems. His talk was basically:
- Avoid the 'truck factor' - If your main developer get hit by a truck (don't cross your fingers) your company is finished.
- Document step-by-step of every main part of the code
- Store support requests and solution given, archive the old ones but keep them all
- In code comments are very important also, but keep them humanly understandable. It doesn't matter if it is long
- Easy to read variables and method names can be time saving. It doesn't matter if it is long
- Be aware of the size of the company that will use your application.
Big companies normally use scripts and apps that work for 30 years or more. So make it robust and with comprehensive error messages.
- When testing and specifying a project, get the user in the room
The user are going to use it and their opinion is the most important thing of the whole project
- Read Allan Cooper (which I hadn't yet, but will for sure)
Anti PHP Patterns
By Stefan Priebsch
Stefan's talk was about not doing what many others do. Look at some of his ideas to avoid:
- Golden hammer - avoid code that does everything
- Copy & paste development
- Feature creep - finish one thing and move on. Don't develop things you will never use (common sense but still important to say)
- Constantitis - avoid too many constants 'cause it is hard to find where you are when it isn't your code
- Globalomania - too many globals is the same as too many constants, just too hard to read. Use dependencies instead.
By Kore Nordmann
This really good talk about the amazing new HTTP-driven database system still has lots to evolve but left me very very curious.
- You POST and HTTP request and Apache does the rest, inserting rows, deleting them...
- You can work with your CouchDB from Ajax, Flash, Flex... anything. Just amazing!
- Data is stored in a JSON format (with many types of index to make search quick) and this makes it look like it is object-oriented storage. Revolutionary I think.
Living with legacy code
By Rowan Merewood
Very good and dynamic talk about how to apply new OO techniques into old-style code. I work mainly with procedural scripts because that is the way we always did here where I work and Rowan's talk opened my eyes for how to start changing that (and we are trying). The main idea that I've got was that you don't try to change legacy code, instead you include it into a method and try to control the outcomes as best as you can, but don't change it too much or it is going to be messy.
By Juliette Folmer
Juliette is a funny and intelligent speaker that knows how to engage the audience. I loved the talk but for me to learn regular expressions properly is going to take more than 1 hour.
Best practices for web service design
By Lorna Jane Mitchell
This was quite an inspiring talk on such a tough issue. Web services is something hard to get right if you are too strict with your service rules and too easy to get it wrong on security issues if your rules are too loose. The main points from Lorna (that I've picked up) were:
- To make it handle multiple formats
- Include the "version" parameter
- Include HTTP status on all responses, not just for REST)
- Failure handling (common sense but very very important)
- After authentication, return a token and request that token for every request after that