Category: software

  • the future of work has arrived

    A hotel is not just a place where travellers sleep, but a United Nations in miniature.

    ~ Theodore Zeldin’s muse on The Future Of Work

    I’ve found the same applies to a software company as well, and I’ve found it more in my own company nowadays – this happens to be one of the key reasons why I’ve enjoyed working here for over 5 years so far. I’ve been able to actually put the above into practice to a reasonable extent, as a lead for a global project where I interact with different people around the world every day. Of course there are some tough exchanges as well when things don’t go well. I’ve found that honesty and openness go a long way in establishing trust and relationships both in professional and home life.

    Not sure if what I’m saying sounds over-idealistic, but to highlight that it actually can happen, here’s an example… (name obliterated for privacy reasons)

    discussion

    The above analogy for a waiter in a hotel could apply to an engineer as well, an engineer could be a peace missionary, promoting global happiness –
    how cool is that!! 😎

    The future of work has arrived, is now here! 🙂

  • software architecture revisited

    This is a very old writeup from a few years ago from my older website, which I came across recently again, and am reposting here… Now I have a lot more to say about this topic… but just putting in the old one for now…

    Once in a way, I feel software might be a career just to make money while the opportunity is there and then retire and do something else. Especially when we consider the well known related problems such as RSI, eye strain, back injuries, etc. not to mention the vast environmental pollution (plastic CDs, DVDs… esp now with rewriteable use and throw ones).

    After all, its sometimes hard to answer the question: how is this helping anybody or improving anybody’s quality of life? How does it make it matter to be involved in this application to keep track of a warranty of some printer that some customer had bought whom I personally dont even have a clue about. Surely there must be more worthwhile investments of time than this? Especially when you compare this with something like for example the medical profession, where doctors cure people’s diseases – or physicists who study about the our universe itself, or come up with something tangible that people actually do something with rather than sit glued to a computer monitor all day…

    In “Black Holes and Baby Universes and Other Essays” by Prof. Stephen Hawkings (reknowned scientist and author of A Brief History of Time), he says after a disease and a surgery he was paralyzed, speechless and completely immobile. He still wanted to continue his research.

    His communication was reduced to a person flipping through alphabets, and he would raise his eyebrows for the required one. He would write sentences this way – very very slowly.

    Then a software programmer sent him a device which would act similarly, and he could use his finger to indicate when the letter was reached.

    This was such a breakthrough that its evolution was inevitable… a laptop was replaced by a PC embedded into his wheelchair making him mobile. A screen was eventually replaced by a voice synthesiser – allowing him to speak again!

    This man written off by medical science, has been able to go on giving countless speeches all over the world!

    Ultimately it does come down to people who actually using whatever we are working on, who could be adversely affected at some other point in time and space in a manner in which we simply cannot imagine now, if we treat what we are doing right now even with the slightest negligience or indifference. But we get so bogged down with the technical details or stress or distractions or so on, that this very key aspect often gets totally forgotten.

    Incidents like the one related by Hawkings was a kind of a reminder to me on why I joined this industry in the first place… a belief that software, like everything else, does have its own place in the great scheme of things! 🙂

    ——————————————————————————–

    Some links… (with thanks to those who sent these)

    The Software Pyramid

    Its interesting what it says about Architects : “A few thousand visionaries sketch out entire systems to handle complex jobs.”

    Anyway on a different note… this is a beautiful relevant article … a MUST read for anyone with technical aspirations 🙂

    .NET Brings the Architect to the Fore
    As .NET helps advance Microsoft technologies in the enterprise, the role of the software architect becomes increasingly important.
    by Eric Lynn

    Other links…

    This article from Deccan Herald I particularly liked :

    Upgrade yourself from the world of coding
    How does one build a successful technical career? SUBROTO BAGCHI gives nine key factors.

    Passion at work by Prof. Arindam Chaudari

    The following I’ve meant to read but havent actually really read till now 😉 But have gone through them, they look quite promising, maybe worth bookmarking…

    Thoughts and experiences from an enterprise software architect – Jorgen Thelin

    Microsoft Architects Journal

    Independent analysis of Microsoft

    It all comes down to 1s and 0s

  • agile development links

    Having worked mostly in the waterfall software development cycle and just venturing into the agile world – these were quite interesting links…

    Refactoring database

    Agile Model Driven Development (AMDD): The Key to Scaling Agile Software Development

  • develop debugging skills playing Mastermind

    This was one of the really cool tips from Steven’s presentation. I used to play this game in my childhood when my cousin sister had gifted us this from the US. Now I am sometimes apalled when I see developer’s struggling to find simple problems in any code, and was wondering how I could help them improve this skill.

    As Steven (SQL training program) highlighted, this game really develops one’s debugging skills, and he strongly advocated this for every developer to play even at company time 😉

    You can give it a try – it’s simple, and I could find a nice one online.

    Below are the rules from google…

    —–

    Object of the Game
    The computer picks a sequence of 4 pegs, each one being one of any of six colors.
    The object of the game is to guess the exact positions of the colors in the computer’s sequence in as few guesses as possible. After each guess, the computer gives you a score of exact and partial matches.

    Rules
    1. The sequence can contain pegs of colors: red, yellow, green, blue, white, black
    2. A color can be used any number of times in the sequence.
    3. All four pegs of the secret sequence will contain a color – no blanks/empties are allowed.
    4. Each guess must consist of 4 peg colors – no blanks.
    5. You have 8 guesses to find the secret sequence.

    Scoring

    For each of the pegs in your guess that is the correct color and in the correct position, the computer will give you one small black peg to the right of that move. If you score 4 small black pegs on a guess, you have guessed the secret sequence.

    For each of the pegs in your guess that is a correct color in an incorrect position, the computer will give you one small white peg to the right of that move. Together, there will be no more than four small black and white pegs for each move.

    If none of the pegs in your guess is of a correct color, you will see no small pegs to the right of that move.

    Sample scoring:

    If the secret
    sequence is…
    And
    your guess is…
    Your score
    would be…
     
     
       

    Some detailed instructions if you like:

    http://www.pressmantoy.com/instructions/instruct_mastermind.html

  • Steven Feurstein's PL/SQL resources

    Steven may not have been a rock star but his presentation on PL/SQL Best Practices definitely ROCKED! Its been the most entertaining, informative and positively INSPIRING tech talk I’ve ever attended (and believe me, with 10+ years in the IT industry I’ve attended quite a few and given some of my own as well) 🙂

    I really really wanted his slide set to convey all those high quality ideas to my team mates in office, and was delighted to see he’s so generously put them on the net: SQL Training and presentations (Unfortunately I had some trouble downloading a couple of them) Though I took down a lot of notes, I just cant wait to get my hands… er mouse… on the main thing! 🙂

    His presentation really changed my perspective of PL/SQL programming, and the best part of it was packed with so many invaluable insights beyond the core topic!

    What really impressed me was the huge contribution he was making to the industry in terms of books, open source tools, presentations and other material which he’s made freely available on his website – enriching the quality of his own life as well as everybody else’s. At dinner time I asked him for an autograph, and he wrote me some very nice words “Dear Sanjay, May your code bring peace and satisfaction” 😎

    —-

    Also see: His younger sons art website: Chris Silva and don’t miss the artistic statement – just to appreciate the quality of life that’s possible.