Sunday, 18 January 2015

A Quick Introduction to JazzyListView

Here's an awesome open-source library that lets you add cool animations to your Android app's ListView. I'm loving it because it can seamlessly replace any ListView instance with a JazzyListView. At the time of this writing, this library has 15 animations. Go ahead, try it out, and make your apps a little more lively.

Sunday, 31 August 2014

Are leaks really leaks?

Yet another iPhone
I think it is time to stop using the word leak and simply say press release instead. With so many technology blogs that thrive on leaks, and with so many leaks, it is becoming glaringly obvious that either all these companies with leaks are either quite incompetent, or simply have extremely competent PR folks.

The iPhone 6 seems to hold the record, with the highest number of leaks and rumours. In fact, these days, some blogs are actually writing round-ups of all the leaks about the iPhone 6. With its release coming up in the near future, you get to read some leaked information about it every other day. I am sure this does more good than harm; there is always a buzz about the product on the Internet, and more and more people get to know about it. Thus, by the time the product is actually launched, everyone is swooning over it. If this is not unintentional, it is definitely a nice strategy.

Of course, the word leak is appealing to the readers; after all, who doesn't like to know a secret? Therefore, most technology blogs won't hesitate to use it. It is really a win-win-win situation; the readers get their spicy news, the blogs get their views, and the product gets some free advertising.

This is all good and acceptable if leaks are rare, and the leaked information is meaningful. When there are too many of them, the word leak loses its charm and importance. Readers won't care much. One must also realize that a blurry photo or two can arouse interest only once in a while.

Wednesday, 14 May 2014

The typical American programmer

Typical American symbolism
The other day a young friend asked me what programming language she should learn, to get a high paying job as soon as possible. I asked her to concentrate on data-structures, algorithms and problem-solving skills in general, instead of focussing on learning one programming language.

But the question still seemed important. I wanted to know what the typical American programmer programs in? How much does she earn? Where is the best place for her to live in?

So, I did my own little 'research' using Google and other websites. Here is what I found. Note that all this data is based the past 12 months (May 2013 to May 2014).

I am focussing on 5 very popular programming languages: Java, Python, Ruby, C# and PHP.

I am also focussing on the following 5 states: Florida, North Carolina, California, New York and Maryland.

1. What is the most preferred programming language?
American interest in programming languages
So, that is what Americans want to learn. Java is clearly the winner here, followed rather closely by Python. All the other languages are far behind them. I am sure one of the main reasons for this is Android. You can't be an Android developer without knowing Java. Moreover, a lot of enterprise systems are still written in JEE. However, a lot of developers from third world countries are Java programmers, and they sure are cheap, so I am assuming the salary of a typical Java programmer won't be very high. We will know if that is actually the case next.

2. What is the average salary of programmers in these languages in the US?

The salaries shown here are the national averages, for that exact designation. So, seniors and associate programmers are bound to get higher or lower salaries. As expected Java developers are paid the least. Now, I am talking about just Java developers (not Android or JEE specialists.) Python and C# seem to be the languages to learn, if you are interested in high salaries.

3. What is the average salary of programmers in these locations?

Here, I am considering the average salary of a "Web Developer". This designation is likely to include most of the languages that I mentioned. So, Florida is the state with the lowest salary, and New York is the one with the highest. This is expected, based on the cost of living in those states.

Based on these, I have come to the conclusion that my young friend should learn Python, and move to New York. The chances of her finding a good job seem to be the best there. But hey, we all should only do what we are interested in doing, and live only where we want to live! So these were merely suggestions.

But I had more questions. What are the salaries in other countries like, compared to the US. Surprisingly, much of the world earns far less than what Americans earn. Here is what I found.
Very interesting indeed. But what are the salaries like in the third world countries, you ask?
Note that those are the yearly salaries of people there. It is more than obvious why companies prefer to outsource projects now.

I have gathered all data from online sources only, so you can always look it up. Some numbers have been rounded off to the nearest 100. That is all for now. Please do leave comments and share.