I Started programming in last of year 2007, when i finished my Associate diploma in Electronics Technology and started my internship on Hallroad lahore, Pakistan as electronic kits assembler. There i practically seen the micro controller first time and have came to know what programming is. I really got exited to explore how easy it is to program a micro controller and make an electronics circuit to function entirely different from what it was made earlier and with almost no hardware change effort and cost. From that day, i actually fall in love with micro controller.
I took a course of micro controller programming in Assembly language and my teacher was user of windows operating system thus i also became the window user, before that i have heard about Ubuntu earlier releases and also heard the name of LINUX and UNIX but frankly speaking never got any idea what these are and how they are different from windows. Like all other people around me i also called every operating system the WINDOW. Like all other window user i also faced the virus problems and data corruption problem and like most of new programmers i am also not much pay attention toward my data backup and in such case have lost most of my value able software lost many many times and have to re-code them tens of times from scratch again.
I spend most of my time in programming assembly and i also ported lot of my software’s in C/C++ for 8bit 8051 and PIC micro-controllers and feel my life very comfortable in programming C language. I never thought about any higher level language until i got crushed in my market with various releases of 16 and 32 bit micro-controllers from microchip.com and atmel.com And from that day i start thinking about higher level languages and higher level controllers but in Pakistan it is not easy to access such controllers and i really was not willing to invest so much in these controllers as i found no direct course and guideline from local academic or professional groups. So i start Programming in C# for couple of my computer linked projects and just got wet my hands with flavor of .Net technology.
The Applications to interface micro-controller with computers was very small in implementation and Microsoft was rapidly updating its visual Studio and .Net frameworks. These updates required higher system also. Even if i stay with the same old program and system PC, yet i was not able to explore full power of C# and was not able to make any market in higher level programming. I was totally frustrated and really not loving this environment where every thing was just on some other peoples hands and they are just making us to dance according to their updates and laziness of not optimizations which results on bulky releases day by day.
Then one day my younger brother shares his problem of window crash day by day due to viruses, and asks me to suggest some smartest antivirus. I thought a little bit and suddenly realized my old day Ubuntu CD. I have lot more information about linux now and yet not thought seriously about it. I suggested him to install linux and offer him to use my CDs of Ubuntu distributions. I installed Ubuntu on his PC and start searching on the web about more and more about it so that i can guide him more, and with the help of those studies i seriously start thinking about Linux.
Here are some quick points that catches my attention in Linux
- It hardly got crashed
- No need to worry about virus
- Very powerful Linux Shell
- Uses computer resources very Efficiently and very intelligently
- Major reason, It is open Source. So if i would not be loving or got problem with any feature it offering i would be in state to change it.
- Many many flavors are available
- A large number of developers around the world sporting it
- Its Embedded versions, ( I am studying more and more on this and this is my main focus of this blog)
- Android uses it. And as modern days are of Mobiles and also Ubuntu and firefox has started building their mobile flavors. I think it would be the smartest choice to get familiar as soon as possible with this exiting technology