15 Sep

Agile Web Development

Alec, a young sprog in Firm A, hits upon a brilliant concept that could revolutionize the way his firm handles clients. The idea needs extensive web solutions to make sure it takes off and succeeds. He approaches his seniors and gets the nod to go look for a professional firm that’ll give them what they want.

Before leaving, Alec is mildly apprehensive about the idea. Although it looks grand, its details are foggy. “I’d better find someone good who know their craft”, he muses.

Scenario 1:

Firm Acme, well established and reputed in web solutions, accept Alec’s project and promise to deliver within a time-line of 4 months. Acme prides itself on its methodical, no nonsense or deviation approach to completing projects. And they have their stellar record of their past to back them up. So Acme proceeds with the project overflowing with self assurance , convinced it has understood Alec’s concept better than he could ever do himself. Alec is hesitant about voicing his concerns. “They’ve not earned a good name for nothing. Maybe they can grasp the unsaid as well”. “You’ll hear from us in 3 months, Sir” is all he is told.

Weeks later, with the project very close to completion, Alex and his boss are called for a demonstration. Acme wasn’t keen on this, knowing they were good with their work. But company policies stipulated it so they had to.

The demonstration proceeds and progresses well, until Alec’s boss comes up with an innocuous query. Innocuous to him, that is. Acme professionals look flabbergasted. “ Why would you want to do that?” they retort. “Why not ?” goes Alec’s boss. “Well if that’s what it is, you should have told us about this before !” Alec squirms in his seat, uneasiness dripping from his face. “You never even let us talk to you about the project while it was being drafted. You guys were so smug about your abilities you didn’t think it would be advisable to keep us in the loop!” was all he manages, afraid those were the last words he’d get to speak for his firm before being thrown out.

The whole debacle inflicts major financial losses on everyone, and a blow on the head for Acme’s tested work ethics.

Scenario 2:

Alec approaches a relatively inexperienced firm, The Upstarts, a young group of web solution experts. What draws him to them is their willingness to listen to him pour his heart out, allowing him to understand and define his idea even better.

“We’ll see it through in a month , Sir, and we’d like you to be in constant touch with us till we have it ready”. “Okay, that sounds fine” says Alec. “Infact I like it”.

Work at The Upstarts proceeds with gusto, with their small team of developers, designers, managers, technical writers and testers working simultaneously. What Alec notices surprises him. Instead of going for the whole idea at once, The Upstarts fragment his brainchild into small chunks. “We like it small”, they wink. They all sit together, with Alec in the middle, each one voicing his opinions and ideas, until everyone present knows precisely what is wanted and which way the spurt of action is to be directed.

This goes on everyday, with the testers rounding up each day’s produce with a thumbs up or a thumbs down. Thumbs up, they hit the next chunk. Thumbs down, The Upstarts dash back to the drawing board. Finally, with a lot of re-working and intuitive improvisation, the whole project is pieced together, chunk by perfected chunk falling into place. On D-Day, exactly one-month from the start, the project is complete and comes out sparkling. It works flawlessly.

Alec comes up to his boss smelling like roses. Firm A has got its money’s worth (and how !), and hits industry folklore for revolutionizing client management. Needless to say, Alec does not remain a sprog in the firm for much longer.

For all you lesser mortals who haven’t already figured out what made The Upstarts beat Acme, it’s a dynamic web development approach called Agile Web Development.

What makes Agile web development successful is the way it goes about a project. Here are the aspects:

1) Manageable chunks: Agile web development breaks a project into fragments, each small but essential, and works on its every aspect, from designing to development to de-bugging to documentation, until it is fail safe and ready to be a part of the big picture.

2) Multiple Iterations: Each fragment is taken through multiple test sequences to make sure it is fault free. Every time a fault is encountered, it is re-worked, its guidelines altered, and its process of development re-visited to make sure it is improved upon.

3) Constant Interaction with the source: Having the originator of the idea in the loop at all times enables the developers to make sure their progress meets his approval and is headed in the way he’d want it to. This eliminates any last minute surprises and blame gaming, which could potentially cripple a project at the very last stage and ruin weeks of effort.

4) Extreme Flexibility: Rather than walking along a fixed path of pre-agreed steps, the key to Agile Web Development is its constant leeway to improvisation as and when needed. This effectively takes into account any sudden changes that might have to be incorporated into the scheme of things. Without this, crippling setbacks are an ever present threat.

Having arrived on the scenes almost a decade ago in the mid 1990s, Agile web Development has had its fair share of followers who swear by its practicality and resilience. Some of the well known Agile Software Development methods are :

i) Adaptive Software Development (ASD)
ii) Feature Driven Development (FDD)
iii) Agile Unified Process (AUP)
iv) Extreme Programming (XP)
v) Scrum

Criticism about Agile:

Puritans have nonetheless greeted Agile gruffly. Agile for them is equivalent to “Cowboy Coding”, signifying a lack of discipline, and the absence of a systematic, well defined approach to possibly complex assignments. Many argue Agile to be unsuitable for large projects, calling its methodology too shaky to encompass all the aspects of a complex task on the go.

Also, Agile’s minimal documentation, made so by constant actual contact with the client, has also drawn flak.

Conclusion:

Whether arguments put up by skeptics are valid remains to be proved or proved otherwise. But for now, web development solutions have a radical tool to help them along. So as long as Agile delivers, the only complaining will be from the ones who don’t get the contracts.

by parvesh | Web |  3 Comments continue reading

5 Sep

Web 3.0: The Web 2.0 Descendent

Even though it would be prudent to define Web 3.0 in concise terms that exclude uncertainty, it is not possible as yet. Precisely because Web 3.0 is not a definite product or service, or even a spectrum that has structured guidelines.

However, what Web 3.0 essentially is, is the next step in the evolution of the World Wide Web from a mere depository of information on interconnected networks, to the point where that vast repository makes sense to the primary agents that access it, viz., software agents.

Comparison with previous versions:

The World Wide Web when first launched, was just an interface to access data stored on standalone terminals or servers. Web 2.0 (a term whose validity is often debated by industry faithfuls) came out as a phoenix out of the dot com bubble burst. It was purported to be the re-birth of the Internet. However, it only added upon established underlying principles of the World Wide Web (eg: HTML as a base and use of AJAX over and above that).

Even so, Web 2.0’s contribution to the World Wide Web is a slew of services aimed at facilitating collaboration and sharing between users. Most notable in that direction was the advent of social networking sites, blogs, audio/video posts, podcasts, wikis, IMs etc.

It has also seen the rise of powerful search engines that can rip into the guts of a page and extract relevant data. Except that there is a catch to it. Even the most powerful search tool needs the brains and thought process of a human to guide it to the right page, or load it with a generous dose of keywords to empower it to come up with the intended results.

Web 3.0, on the other hand, aims to transfer that thought process directly to a search engine’s/software agent’s mode of operation. It aims at a World Wide Web where all data will be easily understandable by machines, like we humans presently do, thus ushering in the age of Intelligent Computing, and as an extension, Semantic Computing.

Benefits:

1) With Semantic computing as its soul and guiding light, Web 3.0 will open up the astronomical amount of data on the web to intelligent analysis.

E.g.: Let’s suppose that Eric, 22, wants to touch base with an old friend of his, Tracy. The problem is, they were both 8 years old when Tracy left their hometown of Auckland for Geneva. Having lost contact with her after that, Eric is not even sure if she is still there or if she has moved to another country. All he now knows is her age, her last name and the name of her mother, the name of the school they both went to and the year she left for Geneva.

A contemporary search engine employed for the task of looking up Tracy would probably draw a nil if Tarcy’s present information is not explicitly mentioned. Not because it does not have enough data to search with, but because it does not have the inherent capability of putting all of that data to intelligent use. However with Web 3.0, a search tool would co-relate all the data it digs up from school records, family names, immigration records and national/international travel logs, analyze and sift through the promising ones, and hit upon the one trail that will lead it to Tracy, through a maze of seemingly unrelated web content.

2) The second benefit, derived from the first, would be the possibility of delegation of the responsibilities of data searching and collating and analysis to computers themselves. This would leave humans to focus on the big picture, while the data and its logistics will be silently controlled by machines under constant interaction with each other.

3) It would also enable machines operating on and from different databases and platforms to successfully exchange information with one another, primarily because of the underlying artificial intelligence now possible with Web 3.0

4) Automation, as we know it today, is really a series of planned codes that machines are programmed to follow. But with semantical computing, computers will actually be able to take most simple decisions for themselves, and even complex ones if so possible, making commonplace human intervention redundant.

Limitations:

Industry watchers however, are skeptical. Their prime areas of skepticism are based on the following:

1) It is argued that it would be time -consuming for content to be published in two formats: one for humans and the second for machines. Unless a method is devised to automatically generate machine-friendly data formats, this concern is valid and critical.

2) Invasion of privacy and censorship : With an artificially intelligent Web, data creation/modification could easily be traced back to the originator(eg. : tracing of bloggers and webmasters). This could potentially violate individual privacy and may even lead to forced censorship.

3) Although Web 3.0 sounds great and one would expect it to go mainstream soon, how realistic it would really be to expect intelligent behavior from machines, particularly considering the whims and fancies of human expectations, is doubtful, if not entirely impractical.

Conclusion:

With Web 3.0 a real possibility in the evolution of the World Wide Web, one can look forward to a new array of web services, characterized essentially by a degree of artificial intelligence. The fact that the mammoth data archive of the web would be open to analysis across various platforms, would make online services much more resourceful. What does that mean to the common netizen? Lesser exercising of his own intellect in data mining, collation and decision making. In other words, a much faster, intuitive and productive web experience.

by parvesh | Web |  2 Comments continue reading

21 Jun

Web 2.0 – Digging Deeper

Web 2.0 outlines the latest version of World Wide Web – dynamic, highly scalable and organic in growth. The rampant popularity enjoyed by Web 2.0 design patterns has resulted into companies blindly including the buzzword among their highlight features. Following are the state-of-the-art web design and development patterns that may be looked up in full or in part to determine a Web 2.0 company:

(a) Harnesses the potency of small sites that form the majority of the web content. Web 2.0 reaches out to the masses wide and across Internet, generally utilizing algorithmic data management. For example, Googles AdSense indulges in dynamic content generation by placing least disturbing, context-sensitive and consumer friendly text ads across exhaustive Web Pages possible. Likewise, eBay acts as an automatic intermediary between even highly small-scale single individuals dealing in few dollars. BitTorrent renders every client a server that empowers its network to provide both bandwidth and data. As a result, files that are more popular take relatively less time to download.

(b) Sports forte in handling a specialized and distinctive database. Be it Google or Yahoo or Amazon, all offer specialized database services that lends them an unbeatable niche. Web 2.0 applications are not merely collection of software tools, but applications collecting and managing unique and large-scale data.

(c) Encourages user participation to add value. The highlight of Web 2.0 design is that it is empowered by collective brainpower. For example, Google PageRank is based on the number of links (outsider votes) garnered by a website. Amazon outdoes competition by inviting extensive user participation in various ways, including reviews and ratings. Wikipedia grows organically as it allows any web user to add content to be collectively edited and proofread. Open source software projects may be found on certain sites that let users copy/ add code for mutual advantage.

(d) Builds vital database using a natural architecture of participation. Web 2.0 architecture enhances intuitive networking by aiding selfish motives of the target users. It recommends setting inclusive defaults for assembling data gathered by day-to-day use of the application. Like, Napster by design serves earlier downloaded music that helps user activity and builds valuable database naturally. Open source software projects like Linux, Apache, Perl, etc. also sport well-defined extension mechanism that empowers network growth in outer layers akin to onion.

(e) Keeps fewer restrictions in licenses. Web 2.0 design chooses in favor of least restrictive Intellectual property protection limits to harness benefits of collective adoption. In fact, it recommends scope for hackability and remixability.

(f) Improves continuously. Negating scheduled releases, Web 2.0 recommends continual and consistent upgrading in real-time, without disturbing existing services. The Web 2.0 companies, like Google and Yahoo, may be often spotted sporting Beta logo to mark ongoing development process and real-time monitoring of user behavior by restrictive implementation. They refine the new feature consistently based on feedback received, before its actual pervasive implementation.

(g) Offers syndication and lightweight programming models. Composed of a network of co-operating data services, Web 2.0 applications encourage web services interfaces and content syndication. They favor lightweight programming models that allow loosely coupled systems to the extent of fragility.

(h) Develops device-independent applications. Keeping in mind the scope and access of Internet beyond a personal computer, Web 2.0 design enables seamless incorporation of its services across various platforms, including mobile handsets, PCs and Internet servers.

While DoubleClick, belonging to the Web 1.0 era, recently claims over two thousand successful implementations of its software, Google AdSense, the child of Web 2.0 purely, has already crossed hundreds of thousands implementations. The radical success and growth witnessed by the truly Web 2.0 web designs indeed reinforce the relevance and far-reaching prospects of Web 2.0 catchphrase.

by parvesh | Web |  1 Comment continue reading

Best, Smart &
Effective Solutions

Quest for continuous learning, enhancements and establishing long term work relation with our clients has been the mantra of our success.
connect