Monday, January 30, 2012

Andrzej on Software: DCI and Rails

@nick - I don't honestly know of a language that allows you to extend a parent class and then have a parent class call on an extended class method like that. Usually you would then instantiate the child (as I'm sure you know). There have been a few suggestions here as to how to get around that, however :)

Friday, February 16, 2007

The Future Is Now

AJAX is a coined term that neatly wraps up the cumulation of several web technologies in order to provide users with a faster, richer and more effective web experience. Web developers themselves are starting to see this group of technologies as the next step forward in website evolution - and they would be right.

The future of the web lies in the hands of developers who aren't afraid to embrace the ability to deliver websites to end-users in a fresh, funky and exciting way. AJAX (Asynchronous Javascript and XML) allows the developer to update sections of a web page without refreshing it. This is very handy in delivering content faster and more effectively. Only a small amount of data needs to be retrieved, rather than a whole page. Think: How many times have you gone to a website, read the news and clicked a news article? How long did that page take to load? With AJAX, content can be retrieved much faster than the classic approach.

Many of the larger companies are starting to utilise this turn in the industry. Big players like Google, Yahoo and Microsoft are all implementing this concept in order to provide their users with the fastest content possible. Seen Google Maps? They utilise AJAX in order to provide users with sections of the map. If you move around you can see the area you're looking at is broken up into tiles. The application itself requests only a small area - when you move, instead of refreshing the page, it makes another request to the Google Maps servers for the images you need to view. Impressive.

The Google Maps example is a fairly extravagant one but demonstrates in full what AJAX is capable of. On a more modest scale AJAX can be used to validate form data as its entered, or you could provide users with suggestions for what they might be searching for as they type it in. This makes for a much more friendly and intuitive user experience and allows users to avoid the frustrations with things like email registrations. In a classic sense, if a user's desired username or email is in use, they wait for the page to refresh - only to find out that their wish is not available! AJAX allows users to find out instantly whether they can use the information they've entered or not. However, despite its rather obvious benefits - AJAX has some nasty pitfalls.

Users who don't have Javascript enabled, or do not have Javascript capabilities in their browser for example, are not able to utilise AJAX. Hence, Google Maps would not work and our great data validation script for the user registration would fail. Also, development for heavy AJAX applications can be rather time-consuming as it requires development on two fronts: Javascript that handles the requests for the browser and server-side scripting which handles the calls from the Javascript framework.

Wednesday, February 14, 2007

The Art of Communication

The number of web design and/or development firms in Australia that can get all aspects of a website correct can be counted on both hands. From conception and design to implementation and delivery, quite a lot of firms do not properly communicate the intention of a website to the end users - you. This results in a lot of finished websites failing to meet their intended goals.

Considering that websites are a communication medium, it would be safe to assume that web firms and their designers would focus their attention towards developing websites that can communicate in a way that maximises efficient navigation, thereby getting the information a user seeks more easily.

For a client, more often than not the aim of a website is to make money. Whether this is through data collection or the selling of products, the rules are the same - the finished product needs to allow for great communication, so that the intended goal is reached. For a user, the more easily their eyes can follow the navigation to find what they want, or what the client requests, the more effective the website will be.

The last few years have opened my eyes quite substantially, indicating that there is a huge hole in the web development industry - one that only a handful of web firms try to fill. These firms are some of today's leading web development companies and they have an impressive client portfolio to prove their worth. Their success however, is not built on flashy graphics or trying to woo their clients with the latest technologies. Their success comes from good, solid and successful communication across their clients' websites, from page content and layout to navigation and site hierarchy.