Yet Another Pointless Tagline
Permanently Uncached header image 1

Entries Categorised as 'Web Design'

Does Agile + Scrum Actually Work? A Personal Experience.

June 12th, 2009 · No Comments · Web Design

Having spoken some what in Tuesday’s post about how I loved working in small and creative companies, and that smaller is better, I thought today I would take some time to write about my experiences with Agile as a development and project management process over the last three years.

So the basic question: “Does it actually work?”

In short, the answer is maybe. In fact, I have no qualms about recommending Agile as a development and management process, but in choosing it to govern the rules and best practices of your work team you need to understand its best fit within the context of the size of your team and the type of projects you work on.

The great thing about Agile & Scrum as a means to an end, is that the process is malleable and allows you pick and chose the best parts of it, without having to stick to it with a religious dogma. In my experience, the bigger the team and/or project, the more likely it is that you will find it beneficial to implement the true structure that Agile provides more rigidly. Whilst working in a smaller team, daily scrums definitely enables you to keep up with one another, and deal with any possible blockers, the real benefits of convening sprint meetings are less apparent.

This marked difference really depends on the ability of the project manager to keep a 100% hands-on approach 100% of the time. The more you veer away from this possibility, or the more you add in layers and complexity to the actual project, the greater the divergence of methods. Of course rule Agile purists will balk at any talk of veering from the divined path of the process, but the fact is that most of us live in the real world and the process of development, by the time you overlay it on your team, is never so black and white.

Though Agile helps with the process of development and management it is not a panacea, that is to say that it doesn’t do the job for any one single individual within the team. It certainly won’t mask any ill or lax management, though it does help to keep light focused on the progressing needs of any individual project and its sub-projects, and provides the tools and means by which to keep things moving forward constantly, and in fact in previous roles and on larger teams I have reported back daily to the production manager, in person at the beginning of the day & online at 6pm, before heading off home.

Anything that adds intelligent and informed structure to the development process has to be a good thing and I would be the last to shirk away from such demands of a project manager and return to the good old days of Cowboy Coding. In that respect Agile is more than worth investigating for your team, if you are not following such principles already.

Relevant Links

Nothing Beats Working On A Small Team – Vincent Stinks http://vincentstinks.blogspot.com/2009/04/nothing-beats-working-in-small-team.html

Related Links

Agile Development Process – Wikipediahttp://en.wikipedia.org/wiki/Agile_software_development

Scrum Development – Wikipedia http://en.wikipedia.org/wiki/Scrum_(development)

Some interesting ideas on scrum and how to implement them, in English and other languages – http://scrum4you.wordpress.com/

A Few Things to Remember for Front-End Devs

April 29th, 2009 · No Comments · Web Design

After yesterday’s post about designers and their oft lack of web savvy, I want to offer a counter balance. One that will set right the woes of the relationship with my fellow designer at Stink Digital and will avoid a clip around the ear, as he sits right next to me. That aside, there are always bits and pieces to remember, both when working on web projects and when working with others. Here are a few things to consider:

  1. Follow Conventions …
    When working on code, CSS or otherwise, make sure you follow formatting conventions, either globally or those laid down by the team in your company. A predominant one is regarding the use of 4 spaces versus tabs for indentation, another the use of encoding types, yet another the introduction of comments for documentation generation. Worst of all is the maintenance of different code styles on a shared code base with other team members.
  2. Comment, Comment, Comment …
    No excuses, always comment your code. Even more so when you are working with others. It’s a real pain to figure out code in the absence of comments, especially the longer and more complex it becomes, though not impossible. Obviously, the longer the code and the shorter the comments, the longer the process to figure it all out. Comments are part of good housekeeping and reflect all round good practice.
  3. Keep It Clean …
    When working on CSS, ensure that the files and rules are well structured, that they are clean, and that each section is well demarcated and for the “icing onthe cake”, keep an up-to-date table of contents at the top of the CSS file. If you are working on a massive site, with thousands of lines of CSS code, it is worth following the A List A Part model and split off the code by media type and rule type (colour, layout, text).
  4. Accessibility …
    Your might grin with glee at your perfectly written semantic mark-up and your shining-ly brilliant css code, but in all reality, if it does not take accessibility seriously, then it isn’t worth anything. Making the site appear, and work properly is one thing, but to ensure that it works for each and every kind of web site user is another, impaired or not, is another matter. Don’t treat some users as second-class netizens.
  5. Colour, Size and Fortune …
    To make your life easier, the team should ensure that all of their web graphics apps use the same color profiles, from the designers to the front-end devs. There’s nothing worse than fighting over the varying color palette displayed on one screen and another. Also, you will likely need to ensure you all use the same monitors and have their profile colour corrected too. On top of this, when exporting graphics, be sure to compress the files correctly. Over-doing it only ensures nasty glances from the designers who feel like their designs are being butchered with a sledge hammer.
  6. Compatibility Testing …
    Test your sites in software and on hardware that will be used by your target audience. Take multiple versions of the same browser, as they may easily render differently and check out how the site looks and works on handheld devices. you may find custom stylesheets and tweaks are the way to go. Use conditional comments, selective media types and possibly even js to load in browser or device specific css or js code.
  7. Cut Down HTTP Requests
    Work on reducing the amount of HTTP requests made. This can be achieved in a number of ways. For one you can use CSS sprites. You can also pack CSS and JS files, so that the individual CSS or JS files are larger but are contained in one request. Another way is to use the googleapis.com hosted JS files. The advantage here is that other sites might use the same links and thus the files may be contained int he browser cache, thus limiting the request.
  8. Right Balance …
    Constant think about creating well designed code. WordPress have it right with their strapline “Code is Poetry” though they themselves don’t necessary create the most poetic code. What I talk about isn’t the be all and end all, but these rules make life working with others and for others (your customer is the web site visitor) much easier. Beyond this there are plenty of ideas for best working practice, so go hunting.

Related Links

Colour matching and ‘Save for Web’ in Photoshop – http://beta.stinkdigital.tv/blog/2009/03/31/photoshop-save-for-web-colour-mysteries/

Progressive enhancement with CSS – A List Apart – http://www.alistapart.com/articles/progressiveenhancementwithcss/

10 Little Web Development Tricks – http://zygote.egg-co.com/10-dirty-little-web-development-tricks/

7 Things Designers Should Not Forget About The Web

April 27th, 2009 · No Comments · Design, Web Design

There is always something to learn, whether you think you know it all or not. I will never forget the time that some kind soul sent the head designer at Last.fm a copy of “Photoshop for Dummies” after a massive site redesign that 50% of people seemed to hate. Jokes aside, here are a few points that every designer should remember, both in their work and in working with others.

Don’t Hand Over a Mess …

Being able to select each layer in turn with the arrow cursor in Photoshop isn’t an excuse for poor housekeeping. There is nothing worse as a front-end dev than having to pick through a morass of ill-titled layers: layer 56, layer 55, layer 54, layer 1, layer 17. When you can group clusters of related layers together, rename them and delete any unused objects, there is zero excuse. Do not expect colleagues or work partners to deal with the problems of your inability to execute clean files.

Perfection …

If you want pixel perfect designs, then firstly, good luck. Making anything match in an identical fashion across all browsers is nigh on impossible. Secondly, no two computers or people are the same. If you want your designs pixel perfect in dimension, then you need to provide guides and rules in your files that help clarify the exact dimensions. Into this you must remember that your horizontal widths can be fixed whilst you can rely less on using fixed vertical space and must anticipate that both user generated content and copy to sit perfectly within it and not break the design. Colors will vary too, whilst images, by default, will end up getting compressed, and zooming in at 1000% view to see how lossy they are, unlike any other web user out there, is not worth the effort, nor energy in getting upset about it.

Rose Tinted Glasses …

Don’t make the mistake of designing through blunt headed vision. The reality is that any design can look perfect with preened and pruned swathes of lorem ipsum, but take that design into the real world and those tweets, comments and client entered blog posts will jar in your design. They will make it look crap, and they will break it in every way possible. You need to have the depth within your design to be able to both anticipate and handle that. Making a manicured design that falls apart deserves little consolation when it all goes pear-shaped, and using content from the real world is the best strategy against this.

Use Conventions …

Don’t make the mistake of small time web designers out there, and that is to re-invent the wheel every time you design a web site. Actually think about your users, not just your visual eye. What makes a good designer isn’t the philosophy behind the design, it’s the usability of their web sites. Elegance and usability are not entirely mutually exclusive, and their are plenty books out their to help inform your design decisions and processes, so get reading!

Informed Choice …

When working on large sites that have been around for a long time, don’t just slap together work based on your own broad assumptions. Get your fingers dirty actually looking at the stats for the site. Figure out how visitors are using it and what their paths are through it. My recent review of a book web site showed that visitors were most looking at any combination of 3-4 pages, and that there was little point in redesigning the site, other than to make the experience for the “typical” site user easier by providing quickest access to those pages through the global nav point.

Accessibility …

Access to anything starts with the design. Don’t design for 1. Make sure that you think about everyone that might use a site when you design it. It’s no wonder that governments have to legislate for accessibility, and equally no surprise when you hear stories of impaired web users suing organizations and winning due to the complete lack of accessibility on their sites. Remember to use contrasting colors, not shades upon shades of the same ever so slight colors. Not only will they be lost from one computer screen to the next, users will likely not even notice them, and anyone with a visual-impairment definitely won’t. Beyond this, think about making space for text links and other accessibility-friendly elements.

The Right Balance …

If poor site design and badly executed files are your MO, then you need to get with the programme and start designing with more than yourself in mind. Designers are not artists with singular styles and patterns, they are paid to be able to execute to brief, with changing visuals, not generate constant knock-offs of the same thing. If you want to be a great designer then you need to remember to find the right balance between your mind and the real world.