Yesterday, I was watching a video on World's Most Powerful person in the world. So I thought why not let me decide who's the actual tech guru of all time. I'll firstly list three most eminent personalities as the nominees : Steve Jobs (Apple Inc), Bill Gates (Microsoft Inc) and Larry Page and Sergey Brin (Google Inc). So I'll describe their achievements one by one and will discuss why they should be the tech guru of all times.
Starting with Bill Gates, born in Oct, 1955 is the chairman of Microsoft. I won't go much in detail which one could find anywhere, but would go straight to the point where he established Microsoft. It was the launch of Intel 8080 micorprocessor, which was the cheapest microprocessor in market which could run BASIC to be used for a PC. So at that moment he founded Microsoft with Paul Allen. Second faming moment was when they cracked a deal with IBM and delivered them the PC-DOS (which was a customised Q-DOS) and retained the rights of later known as MS-DOS. These two things laid the base for the software giant Microsoft, which is today known for its Windows operating system, whose base was obviously DOS.
Next we have Steve Jobs, chairman of Apple Inc (formerly known as Apple Computers) though has not been dedicated to one company throughout his whole life, but has been really successful. His ideas has changed the world. Apple was one of the companies that brought in the idea of commercial mouse-driven UIs. I have also always been a fan of Apple's designs and GUIs for example its Leapord's and iphone's UI. When Steve Jobs had to leave Apple Computers, he acquired and expanded Pixar Animation Studios. Later he joined back Apple as the CEO, he has never looked back since then. His works has always shown enormous creativity and forward thinking approach whether it may be Apple's Mac OS X, iPhone or Pixar's Finding Nemo, Cars, Monsters Inc, Incredibles.
Then we have Larry Page and Sergey Brin founders of Google Inc the search engine giant which revolutionised the internet. The Google's story is very famous and known to everyone, I won't discuss all the things here. The PhD scholars started the search engine(code named Backrub) as their PhD project, and tried to sell it to a few companies, disheartened started their own company. And finally they were lucky enough to get enough funds to run their business successfully. What I like bout the company is their new approach to solve problems by providing very friendly environment to the employees and their 20% projects to bring out the innovation.
So finally is the decision time, so what do you think should be crowned the tech guru of all times. Well I guess the tech guru position can not be assigned straight forward. Rather I would say that we can divide it in two parts: the Innovator and the Developers. The Innovator should be Steve Jobs, who through his creativity, innovation and forward thinking, has changed the world and will keep on doing in the years to come. Then we have the developers Guru who should be Larry Page and Sergey Brin or being the central attraction for the developers world wide and for providing such a platform for them.
Also last but not the least Bill Gates, the chairman of Microsoft is not among the tech guru but for me he's the biggest of the Entrepreneur in the software world. making such good decisions in the whole life has made him the richest man for over a decade. He has helped bring out PC with its Windows which still runs on more than half of the world's personal computers and has also provided many large software products for people of every domain.
Sunday, April 27, 2008
Sunday, April 6, 2008
Browser Based Games
The browser based games is a very interesting and still fairly unknown topic in the development world today. I have been recently involved in developing a lot of browser based games with a lot of graphics and flash-like looks and feel. Though I know the idea was not wholely mine, it was of one of the projects that I received. It was to develop a browser based game that could work on the safari browser on an iPhone. Probably it was one of the initial games developed for iPhones, coz i started the development in the second week of the launch of the iPhone. Since then, I have developed over 6 decent iPhone games.
Back to the topic, Browser Based Games. These games can be categorised in two: Text based games(usually multiplayer online games) and Graphics based games (usually single player online/offline games). The text based games maybe Role Playing Games(RPG) which are sometimes graphics based also ( a few examples can be sited at heavygames.com, rpggames4free.com) or Multiplayer online games(MPOG) like themafiaboss.com or mobsterlords.com(I have even worked for this game). The Graphics based games are quite different from these games in the context that they are usually single player and are usually Javascript based client side games and include board games, card games and sports games. The games that I have developed are also Javascript based, so I'll focusing on development of these games only.
The essence of developing these graphics lies in using javascript efficiently and effectively. As most of you might be knowing javascript is a client side language which is though very simple but has a vast potential. To develop these browser based games, usually we follow the following steps:
Back to the topic, Browser Based Games. These games can be categorised in two: Text based games(usually multiplayer online games) and Graphics based games (usually single player online/offline games). The text based games maybe Role Playing Games(RPG) which are sometimes graphics based also ( a few examples can be sited at heavygames.com, rpggames4free.com) or Multiplayer online games(MPOG) like themafiaboss.com or mobsterlords.com(I have even worked for this game). The Graphics based games are quite different from these games in the context that they are usually single player and are usually Javascript based client side games and include board games, card games and sports games. The games that I have developed are also Javascript based, so I'll focusing on development of these games only.
The essence of developing these graphics lies in using javascript efficiently and effectively. As most of you might be knowing javascript is a client side language which is though very simple but has a vast potential. To develop these browser based games, usually we follow the following steps:
- Firstly, we design all the graphics of the games in parts, i.e., if we are developing a card game, we would first design all the cards, table, buttons separately (jpgs or gifs) so that they could be used as objects and can move around (animate) of required.
- Next we design the the basic layout of the game in HTML. This layout includes different screens and the proper placement of the respective objects on the screen. Usually there are around3-4 screens, for instance the games I develop have atleast 4 screens: The Loading screen(where I show the loading bar while all the images are loaded), The Menu Screen (where all the buttons to navigate around the game lies), The interstitial screen (can be an advertisement or a instructions of playing the game) and the Main Gaming screen. I align these screens widthwise(left to right) such that I hide all other screens by inserting these screens inside a DIV tag of size of one screen with a style attribute : overflow:hidden which hides all the other layers. Then during game play, I animate the screens around to fit in that DIV to be visible.
- Preloading of all the images to be used in a game is very important to give a good visual appeal to the game. If the images are loaded at the time of game play, it appears to provide jerkiness to the game. Script for preloading the images and preloading bar can be found on a lot of javascript reference sites. So I'll skip that part.
- Next comes the event triggered motion part. Usually all the buttons work in the same way, to trigger a javascript function from the button image or an anchor tag, we can use the following code:
<img src="http://www.blogger.com/images/button.gif" onclick="JSfunctionName()" />
<a onclick="JSfunctionName()">Click Here</a>
- Alright that goes for the most of the work. The only main thing left now is the animation is displaying results and scores. Both of the things are accomplished by using the DOM structure of Javascript. To select a DIV or an IMG we can use the code:
ele=document.getElementById("IdOfTheTag")
This element class can then be used to insert text in it by using ele.innerHTML or can be moved around by using ele.style.left, ele.style.top . One thing to note is that to animate the elements we need to define the position first by using ele.style.position="relative" or "absolute" - For animating the objects we call a function at regular intervals which move the objects a few pixels everytime. We can use
timer=setInterval("fnname()",timeinMilliSeconds)
timer-setTimeout("fnname()",timeinMilliSeconds)
- And these timers can be reset by using
clearInterval(timer)I guess thats it for now, you can atleast start developing some games with these things in mind. I'll discuss some more facts and tweaks for getting hands on advanced graphics games development later. Till then try developing your own games and remember the first game which you develop would be the hardest, but once you start getting into the groove, you will really love developing these games.
clearTimeout(timer)
Friday, February 8, 2008
Happenings of a not so Happening day
"The Day" turned out to be a day asking for a lot of patience from our side. A day which I was expecting to be "THE DAY", is about to end in 20 mins from now (maybe its over by the time I finish this), and has brought another week of sleepless nights.
Today, my dream company Google was supposed to visit our college to recruit students of our batch. So the day began with a lot of excitement (atleast for me, don't know bout others). I knew that there's not gonna be any interview today, but students will be shortlisted on the basis of their CVs and would be interviewed later. So here's how it all began::
Feb 8th 2008
0100 : I realised its a bit late, coz i hav to get up early in the morning so I went to bed
0400 : I checked out the time (oh its 4, and I am still awake)
0700 : mom came to my room and tried to wake me up. Usually this procedure takes approx 40-50 mins, but I think I never slept well the whole night. So I woke up instantly.
0800 : Though there was no electricity, still I managed to get ready, was getting restless. Read the newspaper, had breakfast
0845 : Left my place for college (I go via metro)
0945 : Reached college to notice nobody was there. Went to hostel to leave my luggage ( I am to shift back in hostel on Monday, when college reopens)
1000 : Went to TnP department with my frnd (who's also the coordinator there). A few ppl were already there.
1030 : The guy from Google appeared(named Nanjappa, i guess i spelled him right) in a very casual manner, he had a chat for about 15 mins in the office and then we went for the ppt.
1050 : After cracking a couple of jokes about his name, the ppt started. Went very regularly, the usual stuff we always read around about Google. Work benefits, salary package, Innovation at Work, History of Google, to name a few.
1200 : The ppt was over, without much interference.
After that he said that we need to submit our resume to TnP department and they'll forward it to Google for scrutinizing and results will be declared in a few days (these few days were not defined). The process which I thought would be completed in an hour there itself is now postponed for some appreciable amount of time. Lets see what's in the bag for me. All I can do right now is wait and spend some more sleepless nights. Looks like there's a little bit more time for my dream to get true.
You might be wondering I missed out the schedule of my rest of the 12 hrs. Well nothing much actually happened in next 12 hrs.
1215 : went to talk to a prof bout our major project
1300 : I had a chat with all my classmates who were present there today.
1430 : Back at home
1500 : Trying to make up for the sleepless night
1730 : Woke up and was really hungry, scanned for something in kitchen... had a little success there
1800 : watched tv (only scrolled channels actually)
1900 : wandered aimlessly
2000 : Chkd mails
2200 : dinner
2340 : started writing this post while chatting with 4 ppl
And the day is over. Infact its 0040 hrs here. Signing off for now..
Today, my dream company Google was supposed to visit our college to recruit students of our batch. So the day began with a lot of excitement (atleast for me, don't know bout others). I knew that there's not gonna be any interview today, but students will be shortlisted on the basis of their CVs and would be interviewed later. So here's how it all began::
Feb 8th 2008
0100 : I realised its a bit late, coz i hav to get up early in the morning so I went to bed
0400 : I checked out the time (oh its 4, and I am still awake)
0700 : mom came to my room and tried to wake me up. Usually this procedure takes approx 40-50 mins, but I think I never slept well the whole night. So I woke up instantly.
0800 : Though there was no electricity, still I managed to get ready, was getting restless. Read the newspaper, had breakfast
0845 : Left my place for college (I go via metro)
0945 : Reached college to notice nobody was there. Went to hostel to leave my luggage ( I am to shift back in hostel on Monday, when college reopens)
1000 : Went to TnP department with my frnd (who's also the coordinator there). A few ppl were already there.
1030 : The guy from Google appeared(named Nanjappa, i guess i spelled him right) in a very casual manner, he had a chat for about 15 mins in the office and then we went for the ppt.
1050 : After cracking a couple of jokes about his name, the ppt started. Went very regularly, the usual stuff we always read around about Google. Work benefits, salary package, Innovation at Work, History of Google, to name a few.
1200 : The ppt was over, without much interference.
After that he said that we need to submit our resume to TnP department and they'll forward it to Google for scrutinizing and results will be declared in a few days (these few days were not defined). The process which I thought would be completed in an hour there itself is now postponed for some appreciable amount of time. Lets see what's in the bag for me. All I can do right now is wait and spend some more sleepless nights. Looks like there's a little bit more time for my dream to get true.
You might be wondering I missed out the schedule of my rest of the 12 hrs. Well nothing much actually happened in next 12 hrs.
1215 : went to talk to a prof bout our major project
1300 : I had a chat with all my classmates who were present there today.
1430 : Back at home
1500 : Trying to make up for the sleepless night
1730 : Woke up and was really hungry, scanned for something in kitchen... had a little success there
1800 : watched tv (only scrolled channels actually)
1900 : wandered aimlessly
2000 : Chkd mails
2200 : dinner
2340 : started writing this post while chatting with 4 ppl
And the day is over. Infact its 0040 hrs here. Signing off for now..
Friday, January 25, 2008
B Tech Project
From past few days me and my friends have been discussing about what to be done as a part of our B Tech Project. Though we get a degree of Bachelor of Engineering (BE), I don't know why our final year project is known as "B Tech Project". So about the final year project: its probably the most important aspect of our four years course. Also its been given the maximum weightage in all our subjects so far. So we had to be a little serious regarding it.
So here's what we(me and two of my frnds) have planned as our final year project. Its a web based platform for applications development and compiling. We will provide a complete toolkit for online storage, development, sharing and running a project online. The actual things to develop are still under consideration, but this project will be supporting : PHP, Javascript, HTML, CSS , C and C++. This is inspired by the idea of sourceforge.net to host projects + dreamweaver to design and develop pages.
I'll keep you posted of the updates and final drafting of this project. I hope we work it out well. Lets see how it goes.
So here's what we(me and two of my frnds) have planned as our final year project. Its a web based platform for applications development and compiling. We will provide a complete toolkit for online storage, development, sharing and running a project online. The actual things to develop are still under consideration, but this project will be supporting : PHP, Javascript, HTML, CSS , C and C++. This is inspired by the idea of sourceforge.net to host projects + dreamweaver to design and develop pages.
I'll keep you posted of the updates and final drafting of this project. I hope we work it out well. Lets see how it goes.
Tuesday, January 8, 2008
Prodigy Volume 2
Well its over a month I am sitting in my home doing almost nothing. So I talked to one of my friends to get our prodigy idea started all over again, by ourselves, who knows we might end up with developing the next most famous application on the web ;) Anyways, I convinced them to start working on it. And we planned to meet one day.
Yes 29th of December 2007, this was the day of our first official meet to discuss about the prodigy work. Ya actually that's what the code name of our project now is "Prodigy". So our first official meet took place at Barista, CP. As usual I came on time, and the other two fellows (those who shall not be named, well I'll call them Prodigy1 and Prodigy2 ;) ). So we started the discussion. Much as expected I started off again with the idea and explained them what exactly we had planned (Gosh I think aliens did erase their memory of those times when discussed with them during Prodigy Challenge).
We again finalised another structure (though very much similar to the previous one), but then our discussion fell into a vicious circle. A proper conflict between feasibility and advantages of the application emerged(If we'd try to make a better application from the user end we got stuck with its feasibility and vice versa). Finally we tried to implement a very common application's structure - P2P( Yes this is the first thing that I have revealed about our Prodigy work). our application theoritically works more or less like how a P2P application works. But due to my conflicted discussions with Prodigy1 and Prodigy2 about some networking protocols, we never came to a intermediate solution satisfying all three of us.
Finally the meeting ended on a sad note and the outcome of the meeting was that we have to do a lot more homework before we start the actual work. Though I really want this application to be developed, but no serious discussion about it has been done since then and its been over a week from that discussions. Though I keep on Googling to find solutions to the problems related to it. I just hope that we atleast launch the Beta phase of this application before moving out of the college.
Yes 29th of December 2007, this was the day of our first official meet to discuss about the prodigy work. Ya actually that's what the code name of our project now is "Prodigy". So our first official meet took place at Barista, CP. As usual I came on time, and the other two fellows (those who shall not be named, well I'll call them Prodigy1 and Prodigy2 ;) ). So we started the discussion. Much as expected I started off again with the idea and explained them what exactly we had planned (Gosh I think aliens did erase their memory of those times when discussed with them during Prodigy Challenge).
We again finalised another structure (though very much similar to the previous one), but then our discussion fell into a vicious circle. A proper conflict between feasibility and advantages of the application emerged(If we'd try to make a better application from the user end we got stuck with its feasibility and vice versa). Finally we tried to implement a very common application's structure - P2P( Yes this is the first thing that I have revealed about our Prodigy work). our application theoritically works more or less like how a P2P application works. But due to my conflicted discussions with Prodigy1 and Prodigy2 about some networking protocols, we never came to a intermediate solution satisfying all three of us.
Finally the meeting ended on a sad note and the outcome of the meeting was that we have to do a lot more homework before we start the actual work. Though I really want this application to be developed, but no serious discussion about it has been done since then and its been over a week from that discussions. Though I keep on Googling to find solutions to the problems related to it. I just hope that we atleast launch the Beta phase of this application before moving out of the college.
Wednesday, December 26, 2007
MS or not?
Well I have discussed with a lot of my friends, and can still discuss with anybody who's interested to go for MS, why does one want to go for MS abroad. I mean why does one want to waste 2 years of his/her precious life and go for MS and still be at the same place.
Imagine taking a break from your routine life (leaving current job) spending around 20 lcs going for MS, coming back and joining the job again. Though i know that the new job would definitely be better and more reliable but at what expense.. spending a lot of money, and 2 yrs of life. Instead why don't people prefer going for a good job, gain some work experience and then look for promotion or hop jobs. I guess i we try hard, we can land at similar or even at a better place than that in case of MS.
Hey, I am not talking about the people interested in Research field. Hats off to those people, and I know that MS is definitely made for them. its not that I am completely against anyone going for MS, but what I really emphasize is you should be very cautious while investing your 2 yrs of your life, coz that's a big thing.. 2 yrs are the most that are required to change your life completely.
Though a lot of my friends have countered me by saying that once you do MS from US via GRE, you enter a better life and work at a US firm. But my point is why does one want to go for a job at US. Is a job at US confirms you a healthy and better life? I don't think so, I don't feel that just by going to US, you have a warrant to a successful life. I somewhere feel that we can have a better life and better prospects while living in India, where no one would ever look down on you or hate you because you are an alien to their place.
So when you are going abroad for a MS or PhD, think again, maybe another better opportunity is waiting for you somewhere!
Imagine taking a break from your routine life (leaving current job) spending around 20 lcs going for MS, coming back and joining the job again. Though i know that the new job would definitely be better and more reliable but at what expense.. spending a lot of money, and 2 yrs of life. Instead why don't people prefer going for a good job, gain some work experience and then look for promotion or hop jobs. I guess i we try hard, we can land at similar or even at a better place than that in case of MS.
Hey, I am not talking about the people interested in Research field. Hats off to those people, and I know that MS is definitely made for them. its not that I am completely against anyone going for MS, but what I really emphasize is you should be very cautious while investing your 2 yrs of your life, coz that's a big thing.. 2 yrs are the most that are required to change your life completely.
Though a lot of my friends have countered me by saying that once you do MS from US via GRE, you enter a better life and work at a US firm. But my point is why does one want to go for a job at US. Is a job at US confirms you a healthy and better life? I don't think so, I don't feel that just by going to US, you have a warrant to a successful life. I somewhere feel that we can have a better life and better prospects while living in India, where no one would ever look down on you or hate you because you are an alien to their place.
So when you are going abroad for a MS or PhD, think again, maybe another better opportunity is waiting for you somewhere!
Tuesday, December 4, 2007
Standstill
Well my exams are over, though left with a couple of pracs on next week, but I am trying to plan something for the vacations. It looks like I am at a standstill, I mean I have over 2months vacations ahead and I have almost nothing planned and no work to do.
Well the only thing I could do this winter is to go for some freelancing, i mean I could try out some decent projects and earn out my pocket money and other expenses. I might go for the guy who's offered me to do some iphone game for him, or try out some websites for projects. Lets see how far does it go.
As far as the learning new technologies is concerned, firstly i never trust the coaching institutes to teach us something. Coz all they do is to get u cram up the tutorials book of their institute, and no practical experience ( i mean realtime projects). Instead I prefer going for Googling the stuff and get some ebooks to help me out. But for now I can't even think of doing anything, learning new technology or practicing any new framework.
Or on the other hand I can get my funda's of c/c++ clear and prepare for some interviews (if I even sit in another company :) ) Ok so I have a few options, but I am still not sure where am I heading, specially when I have over a 2 months break ahead !
Well the only thing I could do this winter is to go for some freelancing, i mean I could try out some decent projects and earn out my pocket money and other expenses. I might go for the guy who's offered me to do some iphone game for him, or try out some websites for projects. Lets see how far does it go.
As far as the learning new technologies is concerned, firstly i never trust the coaching institutes to teach us something. Coz all they do is to get u cram up the tutorials book of their institute, and no practical experience ( i mean realtime projects). Instead I prefer going for Googling the stuff and get some ebooks to help me out. But for now I can't even think of doing anything, learning new technology or practicing any new framework.
Or on the other hand I can get my funda's of c/c++ clear and prepare for some interviews (if I even sit in another company :) ) Ok so I have a few options, but I am still not sure where am I heading, specially when I have over a 2 months break ahead !
Subscribe to:
Posts (Atom)