Home | Techie Talk | Story Time | About | Contact

Thursday, October 28, 2010

about choosing the right programming language for a software startup...

"Which is the right programming language for a software startup???"

This is not a simple question to give the right answer in one word. The argument about choosing the right programming language for a software startup can go on for ever and ever, because every language will have its own advantages and disadvantages when compared with the other programming languages.

Here are some of my random thoughts about choosing a programming language for a software startup:

# Do not blindly follow the trend - i,e don't choose a programming language just because there are many software startups using that particular language. Though such languages are better options, there are lot more factors to make the final decision.

# Product Requirement is the king, hence choose a programming language that best suits and can easily accomplish your product's requirements.

# Check for the availability of frameworks and other useful libraries for your product requirement in the programming language you want to choose. Frameworks are very important for startups to keep up their pace.

# Give more preference to the programming language which the team members are familiar with - provided the programming language they knew, could easily accomplish your product requirement. Expertise in a programming language is always directly proportional to the productivity, which will surely be an added advantage for startups.

# Have an eye on the availability and cost of hiring a programmer in the language you choose.

# Don't worry about a tomorrow's problem. Do not avoid a language you already knew, just because it cannot scale for millions of users in the future. Providing quick deliveries are more important for software startups than to worry about problems that might arise in the future - hence choose a language which gives more productivity than something which will solve a future problem.

You pick up any programming language available today - I am sure there will be atleast one hugely successful company built in that technology.

# Mixing of 2 or more langugages is no more a rocket science, today. Google is doing this, Facebook is doing this and so even your startup can do this - when you feel only some other programming language could better handle a problem in your software.

# A startup is not about the language, it's all about the people. It is the Great Developers - not the programming languages - that build great software. Hence follow a agile and the best people-friendly methodologies for any language you choose.

# and finally, don't worry too much, just startup!!! - because this is what matters the most :-)

Please feel free to add your suggestions or feedback in the comments section

Labels: , ,

Wednesday, October 27, 2010

The Road Not Taken - Robert Frost

This poem by Robert Frost will forever be close to many people's life..

The Road Not Taken

Two roads diverged in a yellow wood,
And sorry I could not travel both
And be one traveler, long I stood
And looked down one as far as I could
To where it bent in the undergrowth;

Then took the other, as just as fair,
And having perhaps the better claim
Because it was grassy and wanted wear;
Though as for that, the passing there
Had worn them really about the same,

And both that morning equally lay
In leaves no step had trodden black.
Oh, I marked the first for another day!
Yet knowing how way leads on to way
I doubted if I should ever come back.

I shall be telling this with a sigh
Somewhere ages and ages hence:
Two roads diverged in a wood, and I,
I took the one less traveled by,
And that has made all the difference.

Labels: , , ,

Tuesday, October 12, 2010

History of the To-Do Lists

Today, the most widely used and suggested tip for efficient time management is - to maintain a perfect To-Do list. Few people seriously follow this and the few, like me, prefer to have a To-Do list something like this :-)

well jokes apart, here is an interesting story about how these To-Do lists started off:

Once, almost an hundred years ago, an industrialist called Charles M Schwab, who was the President of the Bethlehem Steel company in USA felt that things aren't going that smoothly for him and the company. So in order to improve his own efficiency and of the management team at the steel company, he sought the help of Ivy Lee, who was a famous efficiency expert then.

Mr. Lee agreed to improve the people's efficiency and when he was asked about the cost, Ivy said, "Nothing, unless this works. After 3 months you can send me any amount for whatever you feel it is worth to your company" .

Ivy Lee spent about 15 minutes with each member of the management team and asked them to follow the below instructions:
  1. At the end of each day, write down the six most important tasks to be done on the next day
  2. Prioritize the list.
  3. Next day, start working on the first task and when that task gets completed, start working on the second task and so on.
  4. At the end of the day again, create the list for the next day, adding the unfinished tasks for that day to the top of the list.
  5. Do this for the next 3 months and check the results.
At first, all executives were surprised with this but interestingly, this idea, which looked very simple did wonders in the steel company and after 3 months, it is said that Mr. Charles Schwab sent Lee, a check for $25000!!!!!!

$25000 in those 1900s is indeed an huge amount - what an idea sir ji !!!

Labels: , , ,

Saturday, October 09, 2010

Attritions and small software teams

Personally, I feel this "Attrition" is the toughest challenge for any software team - especially when the team size is very small. Attritions aren't something new in the software industry. It keeps happening everywhere and the rate becomes high during the IT market booms. People change jobs for better pays, for better positions and sometimes even to escape from the current bad managers.

The after-effects, when a team member leaves depends upon how prepared the team was. If seen from top, 20 members leaving a 1000 people organization, might appear less effective, but a single person leaving a three member team will have its own big impact.

So how to handle this situation in a small software team??

When an important resource from a small software team leaves, it really becomes very hard to find an immediate replacement and to keep the momentum going. Finding a right replacement isn't a easy task - it might take few weeks and in worst cases it might even take few months. Hence for small software teams, prevention and being prepared are the only ways to handle an attrition.

# Keep the team members happy : ensure they get correct rewards for their good work and ensure they knew about the stronger career paths available. Still pay checks alone will not retain a good employee - hence also make sure the workplace has more fun working.

# Be a good people friendly manager - its ok if people leave for better pay/positions, but a team member leaving because of a bad manager, isn't really good for the team and the manager himself.

# Work as a team. Make everyone realize and get involved in the team's goals. This is always good for the team.

# Be watchful - one need not keep watching someone for 24x7. Any degradation in work/behavior can be easily felt in a small team. If you suspect something to happen, sit down, analyze well, try to avoid it or get prepared for the challenge.

# Always have an extra person in the team. If 4 members can manage all the works in a team, then have 5 members in the team.

Labels: , , ,