Thursday, December 31, 2009

Good Bye 2009, Hello 2010 !

What a year it was ! 2009 was awesome, Did some achievements in career / and in my skills (Specially in programming ;) ) which i can carry forward rest of my life. :)

Excellent year 2009 was some recaps / achievements ,

  • Managed to learn the art of programming for fun (Big YaY). Thanks for the people who screwed me in the name of performance appraisal.
  • Full time Twitterer. Thanks to the awesome people I follow.
  • The day i used Bloom Filter to increase the number of transaction per second in our application from 150 transactions to 1500 transactions. That day brought so much of confidence into me.
  • My tricky code using Annotation to fix a big portability issue in using a IoC container in our application. I am sure it saved a lot of dollars to my customer.
  • A project on the clouds close to my heart.
  • Munnar Trip as part of JP marriage.
  • The walks which i had with @peerless from VPN to Thirumangalam and the dinner we had after such walks.
Things which i willing to do in 2010
  • Learn one JVM languages preferably java next next aka Scala
  • Learn one LISP Dialect. Hmm Clojure? (That makes 3 languages on the JVM ;) )
  • Language which embrace failure, say it as Erlang.
  • Read more about Distributed computing and stay away from people who thinks Master-salve as Distributed system (for God sake please)
  • Finish reading the damn algorithm book.
  • Be a Thoughtworker soon. Build the laid foundation even stronger.
  • Get a Trekkers bag. ;)
  • Lay platform for Geek Nights with KNBLites.
  • *Kidnap a kid.
  • *Start writing a book on "Rapidly Kidnapping kids for Dummies" with @peerless

Funny thing about this decade is Im right in the middle, Last Decade i was a kid going school, next decade my kid will goto school ;) there by stopping all my kidnapping.

I am seeing it 2010 is gonna be a awesome + BiGGG year to me and all the KNBLites. Every one is upto something big. I am sure every one will achieve the chasing dream.

Wish you a Happy New year ahead.



*unlikely

Wednesday, July 29, 2009

O is the new 0


Oh yeah I am renewing my blogging habit. Perhaps a redemption attempt. Why i stopped blogging? Well there is lot of reason behind it.First its not just because of im being so busy but i was into a serious cycles of depression lately in the year, mainly due to performance appraisals.Which bogged my mind always, trust me blogging wont be good unless you really have a fresh mind. Though few of my pals including peerless , the Knbl guys and few others helped me to get rid of it. But still i couldnt continue my blogging. Sole reason is Twitter. It occupied much of my time lately. Thanks Ev, Biz , Jack for such a wonderful tool.

Now i started to blog again. When performance appraisal are out. I m analyzing, looking back my own past one year, what i did, whats my growth. Here we Go !.

What the heck is performance appraisals?

A collaborative definition from wiki,Performance appraisal, also known as employee appraisal, is a method by which the job performance of an employee is evaluated (generally in terms of quality, quantity, cost and time).
Now into serious questions?

I am a programmer how do they evaluate my performance ?Do they count my LOC as my productivity ? Well Gates said once, ""Measuring software productivity by lines of code is like measuring progress on an airplane by how much it weighs it's a bad idea.

How about performance related to ROI? Hey I m a programmer, at my level i can only help my customer feel better because of/ through my code. I cant directly control ROI. The Business people need to do it and not me.


How about delivery time and code metrics ? Well this things are all subjective, and any one can bet on it. But so far my delivery been perfect and i have followed good metrics in the project comparatively. Well I read both the Java bible and programmer bible.


How about the issue solving / bug fixing capability? Well who will include the complexity of issue? I can solve thousands of simple useless issues can you rate meas a good performer?


Ok this is a never ending discussion, i didn't find any experts including Joel, Atwood commenting on how to reward programmer performance. If you find any good articles just mail me and give me the link !!!!


There is nothing serious about the metrics or reward. Each rewarding system is therefore subjective and commendable.
Then why the heck you or I need to take care of such system? But i did as i didn't know it fully but not anymore. I found this post will help some one who came through just like me. There are always n number of engineers joining and undergoing such system.


During the last year appraisal i expected a best rating in the system. Its O. As i have critically helped and put all my efforts up-to my fullest potential to the project, and performed in critical releases. In fact I used to stay more than 11 hours at office working out a issue or planing out what should be done next so that i can get a good name / impress my superiors.

Dont get me wrong. Every one wants to impress some one. The whole world works as a rating system be it school, college or even at work. When i asked, i got a nice reply from paul "attention is a scarce resource with alternate uses, cf. "Basic Economics, 3rd. ed." "Rating" == "Price" in this context. ".
So here s the deal. When i was doing all my effort and not getting the result i expected, there is a disappointment. I felt there is no inspiration or motivation for what i did and there is a depression cycle.
Though it didn't lasted for too many days, but it did occupied my time. Few of my pals helped and made me to understand this not a big deal.This was the time i learned hard lessons .

Badly i need a change. Looking back, I did changed. How ? Here it is !

Programming for fun
I learned the art of programming for fun. I am fascinated my programming , by software's right from my school days. I passionate about technology and always wanted to work on cutting edge.

But sadly programming for money, food deals with some legacy, 80's technology. The world is just not end. Ever thought why there is so much open source communities out there? Ex Apache, Linux ? All are programming for fun. I learned it when i started to twitter. Linus wrote kernel for fun. Charlie, Tom implemented JRuby as fun project. Ola is doing Ioke for fun.


Time and Learning's are the best investment.

I never stayed back at office more than 9 hours for the past one year. My bad performance results did made me so perfect.With the name of scrum and agile i never worked more than 9 hours now days. I understand agile and practice it rather than just speaking hey we are agile and staying out in office for more than 12 hours.Hey I did finish the task in given time, in fact much less than the given time, started to learn the art of programming for fun.

This is the time i started to read research papers, flirting with open source product which i found fascinating.Thrift,Cassandra,Hadoop, Hazlecast,Asm, CGlib, Guice And so many.


Did any of this learning's helped ? Yes it indeed.I did suggest and brought so many good practices into my code, (Guice method chaining, Fluent Interfaces, DSLs )into my work.We had a requirement of 3000rps per second. My knowledge on Bloom Filter helped to reduce database look ups, and use of JSON with it did helped to achieve almost 2500rps.


Never Ever involve in technical fame/political wars.

I remember this XKCD article. Never involve in such situation. It ll always waste your precious investments (both time and leanings). Be pragmatic, instead of involving flame wars, just implement the dumb idea will save time. Ouch be pragmatic dont implement dumbest idea on the planet. In case you got into such situation read next one.


Communicate with code.

In case you want to make/suggest a solution communicate it withyour code. Dont involve in flame wars. There is always gonna be a group flaming like vim vs emacs, linus vs windows, ie vs firefox, rest vs ws *. So many ideas i proposed to for my current not just accepted on the first instance. There is/was a situation of fame wars, but i hesitated not to involved. I am not good at speaking or convincing people, communicating with code did worked like magic. When you got a working implementation, in a flame war situation its speaks more than your words.


Be dumb to dumb peoples. In a NNPP environment its good to be a dumb to dumb peoples. Being so smart or trying to be smart will always increase the NNPP and hurt your time aka your investments, and project as well.

Working in a dumb project is good. In such environment You can always learn about anti patterns. And how not to do it instead of how to do it. You can learn how not to screw up.

Ideas wont help. Go implement it.A bad implementation is worth than thousand good ideas. So implement it, will always helps to be pragmatic.


Knowledge is your portfolio.Dont hesitate to learn a new piece of technology / good practices. Its a connecting dot.


Looking back at my personal growth, Im extremely happy, and in fact with twitter i felt its almost doubled. I always connected with a passinated group of peoples.I learned a lot of practices by looking on Crazybob's code. Programming for fun is just fascinating !


This year the rating is out and i got the best rating. Even though i don't feel anything happy and Im not in cloud nine.

I just learned, Inspiration wont come from others, Motivation wont come from others, you have to do it, the best inspiration to you is none other than you. Both your success and failure should be a motivation to you. Wrote a good code for a less priority bug ? Go treat yourself for the good code. Read a research paper which gives a satisfaction ? don't just stop celebrate it with a choco

I m gonna follow this principles and like to continue the way I am.

In short O is the new 0.

In chris style, This part of my life is called, this little part right here is "Staying foolish, Staying hungry"
My pals knew what is O is about. For outsiders, O is the highest rating system, we have.

Tuesday, September 16, 2008

My First Android App..!

Ever since Google announced its mobile platform Android , I became a fan of it for two reasons.

  • Its from Google
  • I can still stay with Java , eclipse to write most effective Mobile Application
How ever it was all not that romantic. Due to project overheads , unable to configure their plug in for eclipse when they released their SDK i left out my plans on developing application in android.

But today just got my time and interest back again to try my hands on Android. I planned at least to write a Hello world. Now i suceeded the result one more category Android added to my blog posts.

Heres the screen shot from the emulator.... !


you can except few more good Apps from me ! :)

Monday, August 25, 2008

The Last Lecture

My random surfing wont always let me down , Today i discovered (Yes its discovery!) a guy named Dr.Randy Pausch a professor from one of the finest university for studying software Engg.

So many people talked about dream,and even told only dreams will make one to achieve big. Here ,this guy talks about dream actually about Really Achieving Your Childhood Dreams. And Its important to have specific dreams .

This is a talk given as part of Last Lecture.Looks like the university encourages to people to talk on a topics Which tries to find answers for this question ,

what wisdom would you try to impart to the world if you knew it was your last chance ?


Perhaps a question each of one us should ask ourselves.So many people / professor can talk on this topic, thinking its their last chance.But it's not the case with randy.It was his Last Lecture indeed !

At this time of speech he knew he will not survive more than 3-6 months.He was infected with pancreatic cancer.well wiki will explain more than me.Check it out.

Here is The Last Lecture from him here he talks about lessons learned and giving advice to students on how to achieve their own career and personal goals. watch this one out. He knew he gonna die he knew he have got few more days in his pocket , but look at the humor , his charmless in delivering the talk.. Wow inspiring guy...



and one more thing ...




To my surprise i found his last lecture is available as book..! So I ordered my copy at Landmark.

I always want to earn a degree in Carnegie Mellon when i heard about SEI and CMMI models from my sister. Hope one day i am able to achieve this dream. :)

One more guy to my league of inspiring individuals. He may be no more but his thoughts will remain in my heart...

Tuesday, August 12, 2008

Time to Rewrite the code !

After appreciating rupee and slow down in worlds biggest economy the Indian IT companies are facing toughest time to keep up their growth rate , profit margins etc.After depending about more than 80% work on one country now they tends to move towards APAC , European , African countries.

Depending too much on US hurts them now once it was considered to be the safest place. Those magic 40% YoY growth tends to be come down.And Their quarters results hardly excites the markets now.

Is market is really saturated or our IT companies not able to handle the situation well? Since the size of the industry is so big i meant the man power the revenue should also be high right?.Is how they evaluate their revenues. Making more people working ie technically billing via liable to a customer is a key to get more revenues.

But it's no where working now ! How ? I have some interesting data's Based on Revenue per Employee and being an insider i tried to analyze what they can do at least now.

Revenue Per Employee What it is?
Revenue per employee measures the average revenue generated by each employee of a company. It can be calculated by dividing a firm's revenues by its total number of workers.

Revenues
---------------------
Number of Employees

So taking the members of "SWITCH" the RPE is


Satyam 49,200 2.1 bn$ 42682$
Wipro 79,832 5.0 bn$ 62631$
Infy 94,379 4.0 bn$ 42382$
TCS 116,308 5.7 bn$ 49007$
CTS 59,201 2.1 bn$ 36080$
HCL 52,000 1.7 bn$ 32692$
in the order of company, total number of workforce , revenue , revenue per employee

Where as the Global giants have this as ,

Big Blue 391719 47.4 bn$ 1,21,005$
Accenture 178,000 22.39 bn$ 1,25,786$
EDS 136,000 22.1 bn$ 1,62,500$
in the order of company ,total number of workforce , revenue , revenue per employee



All the data's are took from Wiki. Why wiki ? since i believed open collaboration is more powerful.If any of this data is wrong don't blame either me or wiki. Its your fault of not fixing it.

I think this comparison of revenue per employee is generally most meaningful among companies within the same industry.So its a fair one.

The average RPE of Indian IT companies is around 47227$ (CTS not included in this average)

Where as the Global giants is around 136430$ which almost 3 times greater than what the "SWITCH" generating!

How does they able to generate more revenues than "SWITCH"?

  • Well what they are doing are more than the ADM (Application Development Maintenance).
  • They are actually doing High End Services , including consulting when compared with the Indian IT Companies.
  • They are good in End - End Delivery
  • Deep Domain Expertise
  • Good Global Delivery Network How ? They able to beat Indian companies even in domestic deals.Idea, Airtel Reliance are very good examples.Everything went to Big blue.Its combined value close to 2bn dollars. They dont have offshore model as like "SWITCH"
  • They are learning fast , keeps innovating themselves.
  • They able to attract talents.

For the past 6 months ,I couldn't able to think of Indian IT companies signing a big deal which they call as a "transformational deal" or "multi million dollar deal" .Those deals are valued more than 50mn$.

What SWITCH can think of at least now ?

Think of Values and say no more to Volumes

Enough hype have achieved over the growth of the IT companies in India.They are now at better position from the past.Plain old garage startups are now sky touching glass buildings.Its time to gear up to make some real values.Get out of driving the growth by speculation.Its no where needed if company X is hiring then you should do the same thing. Still with this man power you can do wonders.When Google yahoo adobe sun and most of the MNCs taking the values form Indian youngsters why not you ? They have learned well really well from the younger peers like you ,which made them to keep on setting more offshore centers in India.

Big Blue has its largest development center outside US, most of the MNCs have R&D outside US only here in INDIA.This does means Indians can actually deliver value at low cost and can capable of doing more in computing.This is not the question of whether they are capable of doing it or not so SWITCH needs to understand this.

Lets Chicken hatch eggs and not Elephants.

Having a cohesive unit of knowledge is what all the major vendors lags.They tend to target on specific clients instead of targeting on specific domain and build knowledge.

To be more elaborate on this ,Suppose two clients from different sector having a common task , say a banking giant and telecoms giant want to do user management apart from their core business.Now currently it works in this way the telecom team will be asked to do this for telecom client and banking team will asked to take care of banking client.The same things repeats over again for different customer thus they keep reinventing wheels always missing the concept of re usability.Theres another possibility since Telecom team may not have knowledge in developing such application they tend to hire.Thus making unwanted hires.

Instead of this let the banking and telecoms be more cohesive.Let them do one thing yes one thing really well.If a banking client needs some telecoms work handle them to the experts to do it.By this way reusable components can be made easily.

By this way large amount of duplicates hires , reinventing wheels again and again can be stopped.

Eat your own Dog Food !
Yes eat your own dog food.Its one of the way to build quality and control over the services you deliver.Its the one way to build confidence in the market.It never failed.Its one way to learn your mistakes. so Eat your own dog food whenever you get a chance of eating.

Computing,Services means more Not just ADM !

Remember this INDIA is not destined to be a place for low end works! Ramp up to deliver high end works.Indian IT can be divided into two eras pre Y2K and post Y2K. During pre y2k the Indian IT companies filled the shortage of workforce in US to fix the bug. This is the time they tried to 'impress' , tried to build 'trust' with them. Post Y2K is all about the establishment of trust. Sadly the trust established is all because of the cost advantage. The result the work asked to do was ADM.(Application, Development ,Maintenance). Though the Indian companies seems to be delivering value to them in this space the revenues they able to generate by providing this kind of services is too low.

The trust is made.But now is the time to rethink and start to establish a trust with their employees.Only by having this trust they can move to deliver high end work.And create more values rather than being depend on volumes.

To deliver high end works including consulting and high end designing they keeps to follow inorganic growth.Which is nothing but buying a specialized company in particular domain say for example consulting.The problem is the adaption to this route is too slow to catch up with growth of the giants.Even after acquisitions of such companies they tend to be slower to adapt or learn the core values of the domain.They need to learn fast, they need to learn quickly about the domains.

What Google has done is just a service or a solution to search problem.What Facebook has done is a solution to social collaboration.Its not a rule that you should neaver follow this path.How fast you adapt to learn is the key here.

Though India is Fourth in purchasing power theres is no concentration of Indian vendors on domestic markets.Its where you can deliver your high end services before implementing to the rest of the world.

Let the R&D be real R&D
Invest heavily in R&D not just the damn R&D which targets a specific customer , but target on specific problem.Try to get a solution learn the art of doing patents.Hire best talents and encourage people to focus on innovation.Its not about the wage hikes or cost cutting affects the profits margin.Its about the efficient way in doing things which cuts cost.so stop the innovation in cost cutting.Start innovation and investment in R&D.


Our Finance minister said once "IBM is Legacy , Infosys is Future".The problem is we are not there yet.To make it happen the "SWITCH" needs to think, that they need to seriously rewrite the code.

Thursday, June 5, 2008

My Blog worths $1,129.08 ...!!!!!!!

My Blog worths $1,129.08 .. WoW ! Any way i am not in situation to sell this :)
Here is the report ..,

Your blog, ashokjjr.blogspot.com, is worth $1,129.08

Here's a button you can put on your blog: (the HTML is below)


My blog is worth $1,129.08.
How much is your blog worth?


How much is your blog worth ? check it here

Thursday, May 29, 2008

Pain with Mobile Chargers..!

Well this entry is all about the pain in using mobile chargers.This includes all types of mobiles. Whether its Nokia , SonyEricssion the one i own , Motorola ,Samsung, LGs and others.

Whats the pain in using them?
You can plug them straight away and start charging your battery you can argue , well If i don't experience pain then theres no reason to write this blog entry !

Are you able to plug your Nokia Mobile with Sony Ericsson Charger or with any other mobile Charger ? No is the default answer . Dont that seems to be a pain ? Its a pain for me !

Well you will see the pain , when you are in travel or gone some place ,expecting an important call, forget to carry the mobile charger with you at that time your display will blink stating your battery is down .Since you own a Mobile from a brand which have least market share you cant find people/place having a mobile charger of your brand. you cant charge your mobile now !

There is another probability occurs where Even if they carry same brand of yours, since you own a different model you cant use the charger of your same brand !! Tell me now is this is a pain or not? This is a Great pain ..


This happened to me , I am Sony Ericsson's user , since Nokia is leader in market share in India ,Usually i cant find a place/people having Sony Ericsson charger even if i find one it wont suits mine since i own w550i model.

Don't say to me , you can carry the charger always to get rid out of this pain.

Technology which are invented which are to be invented is for consumer like me to enjoy.If consumer sees any pain in using them then it needs a change.And its a crap!

I am able to connect my MP3 player , Thumb Drive of any brands to my PC , why my mobile not able to connect with any other brand mobile chargers ? If PC has a universal connector USB for every devices to connect with PC why not Mobile holds a similar kind of this for battery charging?

Every Battery in mobile will use only two terminals(positive , negative terminals) why these mobile manufacturer designs tons of mobile chargers with varying sizes which wont fit for other mobiles even in their own brand of different model ?

Some thing got to be done to make this happen.Imagine a world where theres no pain in carrying this kind of stupid chargers , everything is universal, embedded as just as another plug or switch in Home , Bus , Train you traveling.. Wouldn't that be great?

come on Mobile Manufactures you got to do some thing on this ! You are open to softwares but we need Open alliance for Hardware !