• Home
Pictures Archives Travel RSS

XP means “eXtremely Practical” Programming

10 June 2007 | Work | Suneth Mendis

I have been part of the Ephox Development team for a while now. One of the most interesting things about development in Ephox is their development model. Most of us know it as “XP programming” (eXtreme programming) but I like to call it “Extremely Practical” programming …simply because of its practicality within a team environment and its cost effectiveness. The source for this post is purely my first hand experience with XP for the past 10 months or so.

The XP methodology works well with in a team. In fact XP binds teams tighter than any other SDLC I’ve seen before. This is why XP is one of the best SDLC around. Software development is all about collaboration and communication with in and out of teams. I don’t intend to talk much about how XP fits in to the whole grand scheme of software development. But I would like to touch on 2 practices of XP which I think are pure genius.

  1. Pair Programming
    • The code written by 2 people is better in quality and most likely the optimum solution for the problem
    • The code is less prone to generate bugs
    • Enhances communication between members
    • Junior members in the team can get up to speed pretty quickly (It’s more like having a map and a tour guide so that you will never be lost!)
    • Senior members in the team can mentor new members
  2. The basic idea of “Pair Programming” is 2 people sharing one machine to write code. From a classical SDLC point of view, this would seem a total waste of time! (At least I thought so when I first heard about it) But if you just stop and consider, you will realize it’s a fantastic idea! Pair programming kills a whole bunch of birds with one stone.

    Remember how you learned driving? How your father or driving instructor first asked you to take that wheel and drive? Well pair programming is exactly that!

  3. Customer Centric

XP demands that the customer be present at the development site at all times. In fact the customer is part of the development team. Prior to Ephox, I worked on a project which involved a Japanese customer and an Indian subcontractor. The communication was very poor between the developers and the customer. In fact the development team only met the customer during integration testing stage and by then it was too late to improve the situation. The project eventually failed quite miserably! Customer centric approach of XP solves this problem brilliantly. It’s like having a navigation system in your car to direct you to the correct destination…constantly assessing and correcting the path. It’s a win-win situation for both parties! Developers can do what they do best (write smart code) and customers get exactly what they asked for (nothing more nothing less).

There is a lot more to XP than just these 2 practices. But what’s interesting is that all the practices XP brings to the table are very intuitive and simple. Basically it make sense. So the whole point is that XP removes all of the complications from writing quality code. Lets face it. Last thing a developer needs is a complicated process to stuck into!

Popularity: 20% [?]

Leave a Reply

«I have been Ztumped

Extract source attribute from IMG tags»

About Me

One life, Live it!

My name is Suneth Mendis. I'm a 29 year old Software Engineer. I live in Brisbane Australia and working for a very exciting company called Ephox.

  • Recent Posts

    • Ignorance is your loss
    • Auto coloring of child nodes using Prototype
    • iFrame dynamic resizing revisited
    • Using jQuery with Prototype - Sweet!!!
    • “Fun” with Prototype and IE7 and Tables
    • What serious lack of sleep can do to a developer…
    • iSurprise
    • Offline blog editor
    • What!?
    • Iframe dynamic resizing… SOLVED!
    • more...
  • Categories

    • Agile
    • Blogroll
    • Coding
    • Gadgets
    • Hobbies
    • Ideas
    • JavaScript
    • Life
    • Mac
    • Prototype
    • Travel
    • Work
    • WTF
  • Links

    • Planet Ephox

Copyright © Suneth Mendis 2008 · Designed by Suneth Mendis · Powered by WordPress