Recession Reality Check for Web Developers

If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

Ok, Yahoo is laying off people in big numbers, and every day we hear about the health of the world economy. I think it is clear to everyone, this is more than a sneeze, it is recession hitting us hard and fast all over the world. Of course this will become reality even for people working in healthy businesses, in comparision to Yahoo, where there are a business strategy, product focus and numbers going in the right direction. How do you adapt to the fact that things are actually going the wrong way, and things out of your hands may eventually decide wether or not you have a work to go to next month. People who were part of the dotcom-crisis know that even healthy companies got hit harder than they deserved. In this post I will try to discuss how you can handle recession and prepare for the worst and make all you can in order to avoid it.

Pragmatic, Pragmatic, Pragmatic

OK, now is the time to start being pragmatic when it comes to everything. Roles, tasks, platforms, frameworks, libraries or any other thing that could enable cat-fights in any web department. Ask yourself the question: “Am I a pragmatic person when at work?”. If the answer is Yes, could you be even more pragmatic in even more areas, in order to avoid unecessary (from a business point-of-view) discussions and fights. If your answer is No, start being more pragmatic, put feelings and opinions away and focus on facts, reality and truth. I know a lot of people who say they are pragmatic (everybody wants to be pragmatic) and at the same time say that we must spend 12 man-year on building an almighty architecture that will survive WW III, when business needs here and now could be solved with existing tools or with lesser efforts added to the project. In short: Start being pragmatic in your daily work, and stop saying you are pragmatic.

Focus on Possibilities

Recession opens up for good things. When times are bad, investors and competitors decrease their efforts and that is a possibility. When others are braking, you should increase your efforts in order to gain market shares or enter a market that are ultra-competitive during good times. As long as you are still employed or running your own business getting clients, make sure you invest whatever you can invest making sure that you are increasing your market shares and revenues. This sound easier than it is in real life. But in order to convince you: Apple, Microsoft and businesses such as Online Poker where born during other time of crisis. I am confident we will see new business-leaders born or growing big during the coming years. I am writing a post on what companies I think will go out of recession as winners, will publish it before Christmas. Remember: In bad times, brave people can build the platform for being the next winner.

It Aint Personal

If for some reason someone (your company or lack of clients) puts you in the corner where your job is at risk, or even worse you get sacked or have to shut down business, Do not take it personally, because during times like these even talented people are fired. Often middle-management has to fulfill a number of layoffs and meet some strange budget-requirement making their decisions somewhat numeric instead of human-resource-optimized. Often roles needed for running daily businesses are the ones that are prioritized to keep. If you do not do this right now, you are probably more likely to get sacked than the guy making sure that the SVN-server is up and running. But it aint personal (most of the time at least).

Business Argument not Techie Arguments

I do not like techie arguments when we have good times, and I am pretty sure no business owner likes them at all during bad times. Developers have to be better, in good and bad times, trying to put numbers on their arguments. This is important for two reasons: First, it is easier to convince the business owners with business arguments and second, if developers try to find business arguments instead of tech arguments, they will be better developers as they do understand business better and tech solutions are business driven and not vice verca.

Summary

We will face recession. Your company will adapt to this. Maybe they speed up, maybe they slow down. The important thing to know is that no one is safe but recession is not all bad, it also opens up for new businesses and possibility to enter competitive markets. One good thing to bear in mind during recession, as well as better times, is to try to be more pragmatic and business oriented not only in mind but also in action.


Amazon EC2 Now Available in Europe

I just got a letter stating:

We are excited to announce that we have extended Amazon Elastic Compute Cloud (Amazon EC2) to Europe. Developers and businesses can now run their Amazon EC2 instances in the EU to help achieve lower latency, operate closer to other resources like Amazon S3 in the EU, and meet EU data storage requirements when applicable.

We are looking for a good solution for scalable hosting and were thinking of going with Slicehost, but this changes a lot for our project, as we will target both Europe and the US.

A quick view on Pricing, says it is +10% in Europe in comparision to the US. I bet I will write more on this.

Read more


Web Standards vs. Reality

Some people in the web development/web design/front-end development industry would rather be caught on tape stealing food from small children than admit they pollute the web with websites that do not meet standards when it comes to markup, stylesheet and javascript.

I break these standards on a regular basis, and apparently a lot of other people do as well, according to Opera, only 1 in 25 adhere to web standards, and the rest breaks them in some way. Why is that? Are standards not worth following? My answer is: it depends on the context.

In this post, I will not discuss things such as page size, design from content separation, behaviour from design separation, search engine optimization etc etc, as I believe that all of these can be achieved just as good not adhering to web standards, and that the areas have been dicussed for 5+ years. I would like to focus on things that not so many people talk about when discussing standards; How it affects revenues and the actual organization running a website.

The Business Perspective

Building a new Website / Redesigning a existing one
If you are building a new website, there are few reasons not following standards for css, script and markup. From a technical point of view, there are probably no arguments that are valid for not adhering to standards, but from business point-of-view, there may be some arguments that are valid. These arguments may be:

- Legacy non-standard CMS Software enabling quick time-to-market
- More time efficient development given the teams core comptence
- Alternative Cost, how much do we gain (in money, short and long term) from adhering to standards comparing to not have it as a business requirement.

Running an existing non-standards compliant website

This is where reality hit hard on standard advocates. Converting an existing non-standard-compliant website to a standard-compliant website can be a really daunting job. But it all boils down to technical solutions and a lot of hard work. The real problem is to find the argument, money-wise, to do it. As a businessowner you must ask your self the question: “Why should we use X nr of resources for moving to standards, when we could use the same resources for making our product better?” This is where people who thinks standards are a matter of life and death have to sharpen their arguments. Below I have listed different aspects of a websites function and lifecycle where it is important to understand the conflict between reality and standards.

The Knowledge Perspective

Not all websites are built by people who are educated in web standards. I think that a very common problem with web standards, are the fact that a lot of web-frontends are built by someone who knows their standards and run and maintained by people who do not care or have the knowledge needed to adhere to the standards that the site should support. The big question is again money. How much do we gain, educating people in standards compared to keep the speed up with the current knowledge?

The Web as API Perspective

This is where standards becomes important, in order to expose your web as an API, enabling mashups, this could be done using micro-formats, your own XHTML-schemes or just letting external users grab your content easily and mash it up on their side. Of course a valid XHTML-page will be easier to parse and load as an API, but on the other hand, screenreaders, search engines and other page parsers have been able to grab info even from non-standard supporting websites for a long time, there are even numerous of libraries that lets you do just that. When it comes to the web as API, I believe it is important to focus more on building a website that is API-ified when it comes to url-structure and parameters for responseTypes and locales etc. From this perspective, adhering to standards is of course important, but not adhering to standards is not the same as not being able to expose your web as an API. The only thing you do if you run a website that do not follow standards is making it a tad more difficult for your integrators to mashup your website.

The Accessability Perspective

Accessability and Usability, how do they relate to web standards? There is one argument that everyone is talking about all the time, screen readers. OK, this is close to the above argument. My belief when it comes to this is that a screenreader that can not read non-standard pages, will not be a big success, since a lot of websites, as stated above, do not adhere to standards. Of course a semantic web is easier to understand by machines, and will increase accessability and findability enabling better SEO. As the machines reading the web will become more sophisticated, issues like this is probably a smaller issue in the future, than it is now

The Maintenance Perspective

Some people say that standard based front-ends are easier to maintain. From one perspective I am obliged to agree, web standards fronts are more often separated semantically, css doing design, script behaviour and markup for content. But the separation has nothing to do with standards. One argument could be that if we use standards we do not have to maintain “hacks” in css, script and markup, but as long as you are using components and frameworks you should not have to worry about these things. If everything is a mess with no separation and no standards followed, there may be reasons to change this, if we can find a business argument for it: The cost for moving the web to standards and separation of markup, design and behaviour must be lower than the gains from maintaining a standards compliant product compared to the old solution.

The Code Quality Perspective

Another argument is that standards are better from a quality perspective, that is just noncence. You can build crap with cheap and expensive tools, as well as you can build crap websites with standards and non-standards. You can even build great websites with non-standard solutions.

Conclusion

Standards serve a purpose, they get developers to start thinking how they build things, and slowly they adapt to new patterns and processess building webpages, creating better semantics and separation of design, content and behaviour. Standards are good. But not following them is not the same as doing wrong. There are a number of arguments that may force us to build or keep maintaining products that do not follow standards, often the reason are economical. I believe that in order to be business-oriented all developers have to understand that sometimes the “best” technical solution is not good enough from a business perspective.

Resources

  • http://dev.opera.com/articles/view/mama-markup-validation-report/
  • http://www.sitepoint.com/blogs/2008/10/17/opera-just-413-of-webs-code-is-valid
  • http://dev.opera.com/articles/view/mama/
  • http://dev.opera.com/articles/view/mama-key-findings/
  • http://dev.opera.com/articles/view/mama-the-url-set/


Must read for all front-end people

Peter Svensson at Script Uncle has written a very good article on what to expect and how to define a front-end developer.  I have myself worked as interface developer, front-end developer, gui developer, front-end architect, web developer etc etc and I am willing to agree with Peters view on the topic. Today working as a front-end X could be anything, it all depends on what the people hiring you have in mind for today. I really appreciate Peters view on what the expectations are on front-end people when you look in the ads:

Looking at the skill set that the front-end developer should have we find that he or she must be a veteran of all major US armed conflicts since WWII, be able to design, build and fly a commercial airliner, have discovered at least three different cures for cancer (of which at least should have received the nobel price in either of Medicine, Physics or Chemistry) and also be the founder of two or more major schools of painting, including cubism.

It is important the the front-end gets its focus in large projects, and that we do not generalize to much thinking that person A can carry the role of the designer, coder, developer, architect and usability specialist and still do a good job. But on the other hand, front-end stuff is for people who do not understand the complexity of things happening in the back-end of a system. We only do this because we hope that one day we also may write generic server side solutions with xml configuration for creating value objects independent of data source.


jQuery Support in Zend Framework 1.7

In Zend Framework 1.7 there will offer native jQuery UI support.

The link above offers good documenation on different potential use-cases for jQuery UI plugins as helpers and how they will be implemented in Zend Framework. There is also a link to some examples and some comments on how the implementation may look like. Interesting. I made a list 1,5 year ago on why jQuery will win the race as the standard JavaScript library and it looks like number 9 in that list is the thing that will make sure that John and jQuery sets the standards for how You are going to work with JavaScript solutions in the future.

There are more interesting things in the 1.7 Preview Release, though not feature complete. See list below and download the Preview Release from http://framework.zend.com/download/latest

While 1.7PR is not a feature complete release in the 1.7 series, it
nevertheless contains some very important features scheduled for the 1.7
production release:

* New Zend_AMF component
* Dojo Toolkit 1.2.0
* New ZendX_JQuery component
* Support for dijit editor
* Metadata API in Zend_Cache
* Google book search API
* Performance enhancements
* Application-wide locale with other i18n enhancements
* File upload form element enhancements


Contact

You are more than welcome to contact us if you would like to discuss anything regarding the blog.

About

Front-End Book is run and primarily written by Mattias Hising, an experienced Lead Developer from Uppsala, Sweden. I try to focus my efforts on Front-End related issues, as I find the problems to solve are more complex and interesting than the ones in traditional back-end development.

Twitter | GitHub | FriendFeed | LinkedIn | StumbleUpon | Facebook | Delicious