Archive for: April, 2009

The myth of career growth

Apr 27 2009 Published by Niyaz PK under Startup

Conventional corporate hierarchies make sure that there are only a handful of managers for every hundred employees. So your chances of becoming a manager are very small. This is the same reason why only a small percentage of employees in any organization get promotions.

This means that the odds of you failing to get a promotion in the job and the odds of your startup failing to get traction are almost the same. Besides, a startup is more exciting to work on and in the long run it promises more rewards for the same amount of effort put in.

I wonder why you selected the less exciting path then.

No responses yet

Take the walk

Apr 18 2009 Published by Niyaz PK under Startup

You’ve heard the stories.

Some years ago, a group of people at NASA sent a man to moon.

They sent a vehicle carrying a man thousands of miles into the space and managed to land exactly on the surface of the moon! Can you comprehend the complexity of the operation?

Then there is this guy called Edison, whose invention of the electric bulb touched virtually every single human being on the face of the earth. As if that were not enough, he invented 1093 other stuff that weren’t thought of before.

And there is Columbus who set out to discover the new world and came back with a whole new continent!

And then there is this group of doctors who eradicated Smallpox, arguably the most deadly disease in human history.

Then there is this person named Tim John Berners-Lee who invented the Internet.

And then there is you.

If people can send men to moon, if a single man’s work can light up the whole world, if so many people have done things that were previously thought impossible, what are you waiting for? What is holding you back? Now that you know people like you and me can set out and change the world, what are you going to do about it?

For all these years, you have been reaping the benefits of the work done by other people. Think about the stuff you are using, the gadgets you own and the tools you work with. Every single thing has a story to tell – an exciting and intriguing story of passion and hard work and search for excellence. We have been using all these stuff invented and produced by others, and the only difference between us and them is that they somehow realized that getting things done is far more effective than finding reasons not to.

Now is the time to actually build something by your own.

What is remarkable in being a consumer for your whole life? For a change, try being a producer. Build something. For once, try giving back to humanity.

9 responses so far

Why you probably should not learn Java

Apr 17 2009 Published by Niyaz PK under Programming, Startup

There are a lot of programming languages out there and people are always confused about the programming language they should use to develop their applications. We see a lot of people asking the question “Which programming language should I use?“.

And there are many fresh graduates and new programmers who want to add another programming language to their resume and they too are confused about which one to learn.

There is something called the TIOBE Programming Community Index which lists programming languages based on their popularity. Here is how the list for April 2009 looks like:

programming-languages1

As you can see, Java leads the rankings. It has been at the top for some years now. Since Java is being used for a large number of applications in the corporate world, you can see that there are more requirements for Java programmers than say, Python programmers.

Many graduates and wannabe programmers see all those hiring ads for Java programmers and they come to the conclusion that Java is the programming language they should go for to get a better job because it is the hot thing now. They see all these statements from elsewhere which say something to the effect of “there will be 190,872,452 requirements for Java professionals in 5 years” and they decide that once you learn Java, your life will be changed forever, for good.

Wrong!

There are a couple of things that can go against you when you select Java as your programming language. First, more requirements means more competition. If there is a requirement for a million Java programmers (I am totally making up all these numbers) there is a chance that there are a million Java programmers. You have tighter competition. Comparatively, there are fewer requirements for Python programmers, and this means that there are less number of people using python, and this means that there are less number of people who know python, and this in turn means that you have less competition. So essentially, your chances of getting a job are the same regardless of the programming language you specialize in. You may even land up on a job in Ada or Pascal (There are many big corporations which refuse to move from legacy systems).

The second thing that can go against you is that since there are a lot of qualified Java programmers, the companies that hire you can afford to pay you less. If you don’t take the job, somebody else will, and he will be equally qualified as you. Compare this to a programmer working in Ruby. If you are a Ruby programmer, there are a not much awesome Ruby programmers and companies know this and they will pay you well.

Another problem with running with the crowd is that you will not get an exciting job in programming languages like Java. Most of the interesting startups and companies that work on interesting stuff have moved away from Java and they are using programming languages like Python or Ruby to build their cool products. You want to work in those companies that build something that people use, rather than work in the under-belly of a giant corporation that churns out software like a coke factory.

Paul Graham observes:

if a company chooses to write its software in a comparatively esoteric language, they’ll be able to hire better programmers, because they’ll attract only those who cared enough to learn it. And for programmers the paradox is even more pronounced: the language to learn, if you want to get a good job, is a language that people don’t learn merely to get a job.

If you want to stand out from the crowd, you have to do stuff that stands out from what the crowd does.

If you want to do something other than spoiling your life doing the same thing a million others are doing, do yourself a favour and learn an exciting new programming language that can change the way you think and write code. Learn Python. Learn Ruby.

I say, Learn Haskell.

25 responses so far

Innovation

Apr 14 2009 Published by Niyaz PK under Startup

What if when you search for a solution to one of your problems you find that there are no solutions listed anywhere in the web? What if there are no google results for your query?

This essentially means that there are no solutions to your problem anywhere. If it is not in google, it does not exist. If it is not in the web, it is nowhere else either.

Contrary to the popular belief, this does not make your problem any harder. This makes your problem easier to solve. There is no recorded way to solve your problem means that you can solve the problem any way you want.

This is a chance to innovate. Every innovation in the world started with a problem.

Once you build a fantastic product to solve the problem, your product becomes the search results in google for the problem. You become the micro-expert in the subject.

3 responses so far

Waiting

Apr 04 2009 Published by Niyaz PK under Startup

Today a friend told me: “I am waiting for the right time to start working on my startup”

Nobody ever achieved greatness by waiting. You may want to try preparing. Planning and preparing almost always yield better results than waiting and whining.

One response so far

Welcome the new player to the game

Apr 03 2009 Published by Niyaz PK under Internet, Microsoft

Yesterday while looking at the long tail referrers of my website, I found something peculiar. Can you spot it?

kumo

Let us all welcome the new player to the game!

2 responses so far

Broken windows theory & online communities

Apr 02 2009 Published by Niyaz PK under General, Internet

People reflect their surroundings very much in their actions, even more than what we think they do. They react to situations based on the ambiance of their surroundings rather than according to the behavioral traits they developed over time.

The broken window theory conveys this simple yet powerful idea:

Consider a building with a few broken windows. If the windows are not repaired, the tendency is for vandals to break a few more windows. Eventually, they may even break into the building, and if it’s unoccupied, perhaps become squatters or light fires inside.

Or consider a sidewalk. Some litter accumulates. Soon, more litter accumulates. Eventually, people even start leaving bags of trash from take-out restaurants there or breaking into cars.

In short, make the surroundings better and people start behaving better.

The same theory applies to online communities too. There are a lot of online communities which fostered by hosting high quality discussions and providing excellent services to the users. What happens when you start attracting a very large number of users? What happens when users start deciding what is best for them? What if their decisions are bad for the community as a whole?

Take the case of Reddit. Programming reddit used to be the place where smart programmers used to hang around and have quality discussions about the subject they care about the most, but the simple fact that reddit supported other kinds of news/content in the form of subreddits made the site a place for a lot of funny, worthless and snarky comments. Now people are more interested in taking sides in worthless arguments (about Joel Spolsky?) than serious productive discussions.

Remember that I am not ranting about the quality of the users of reddit, but what I am trying to say is that reddit as a community has become bloated. Of course reddit does have a lot of brilliant hackers as users, but the place is not like what it used to be. I doubt that there can be serious (programming) discussions in reddit anymore. Reddit is becoming more of a Digg than anything else.

Meanwhile Hacker News is trying very hard to prevent the same thing happeneing to them. It is a low-traffic news site for programmers that has very high quality content and committed contributors. A few days ago the site was mentioned in some social websites (including reddit) and a lot of traffic came in, and guess what they did? Here is what Paul Graham suggested:

We’ve had a huge spike in traffic lately, from roughly 24k daily uniques to 33k. This is a result of being mentioned on more mainstream sites. I hope this spike will subside, like past ones have. In the meantime I may temporarily hack a few things to make the site faster, like putting fewer results on threads pages.

You can help the spike subside by making HN look extra boring. For the next couple days it would be better to have posts about the innards of Erlang than women who create sites to get hired by Twitter.

That is a very bold step to take, and worth it if you take the quality of the content seriously.

It is not that the people using programming reddit and hacker news are different. Even if the same person visited both the sites, he will be more inclined to post funny remarks in reddit while he will give serious opinions in hacker news. Not that there is something bad in being humorous, but being too much funny is kinda annoying.

The next time you build your online community, build it right. Weed out the unwanted distractions. And the next time you notice a comment that adds no value to the discussion on your blog, delete it. Sometimes, deleting content build reputation faster than creating content.

Whatever you do, whatever you write, whatever you say, make it count, and the people around will give you back the same quality.

2 responses so far

Older posts »