Archive for the ‘Programming’ Category

A Eulogy for Google Buzz

Posted: December 23, 2011 by manklu in Programming, RVCE, RVCE CSE, Short Stories
Tags: , , ,

A social networking service quite obscure in the WWW world where a bigwig like Facebook ruled the roost, but, Google Buzz, you had been there with us, for us.

You had been there when the voice of our peers were raised. You were there when the creative writing of some of the minds of RVCE CSE had to be shared. When a spirited Kannada conversation had to be launched, you gave us the platform where the like-minded could emphatically discuss, bitch around, and do whatever the realms of a sane language would permit.

You were there, when there was an idea, of such grandiose, of such novelty, of such brilliance that would shake the entire peer group of ours – had to be shared and discussed about. You were not visible directly to an overlooking eye, but you were there -you were there where your fans and followers were. You were there for them who were loyal to you.

For movie trivia, for a geek talk, for an academic activity, for a nonsensical  gossip, for a random quirk which would make perfect sense, you were there.

I remember one particular post from a guy asking for suggestions on good movies to watch during the holidays in June. Replies to that post brought to the fore the best movies mankind has ever produced! Replies kept coming, and that post had been getting comments until you bade us goodbye. If you were still there, we would have discovered many more amazing movies to watch – not skimming through pages and pages of IMDB, but instead, just following comments in that post!

Google Buzz, you might be gone forever. But, rest assured you’ll stay in our hearts forever. You’ll stay with all the sweet memories that wouldn’t have been possible if it were not you who supported them. Though you were a blip in the web-o-sphere, you were certainly special for us and we were lucky enough in our lives to have met you and shared a bond with you.

Google Buzz, May Your Soul Rest In Peace.

Amen!

Written by The Happy-Happy Boy

(Published on Jinkchak by The 21st Century Me…yeah ME! Production Company)

A message from Me…yeah ME! : Jinkchak owes its existence in some part to Google Buzz – The place where the name “Me…yeah ME!” was coined.


http://www.mediafire.com/?53ribr9sffmm1c5
– Black Mamba v3.0 can be downloaded from here.

Back in August, 2011 AD, the development of a recursive solution to a problem was begun and a program was written in C++. This problem was related to a different sort of maze – A maze with colours. A month later, Super Mario suggested that this program be converted into a game for Human Beings. And thus, Black Mamba was born…well, not quite, for, you see, it wasn’t called “Black Mamba” then. It was called “The Worm Game” in its first iteration. Quite a dull name, ain’t it?

Well, in its second iteration, the name was modified to “Snake 54@/\/\ – The Python Expert”, but this name was rejected by the person whose name is a substring of this title. A few days later, drawing inspiration from one of the members of RVCE CSE (the department), the name “Black Mamba” was suggested by Mr. You…yeah YOU! And thus, in its third iteration, this product came to be fondly known as “Black Mamba v3.0”.

The graphics of the game were implemented with Java using the ACM Package (which Stanford introduced me…yeah ME to) that can be found here: http://jtf.acm.org/ . The pseudo-combination of the C++ and Java executables was accomplished with the help of Batch Files. And finally, all files of the project were put together in an installer using InnoSetup, @ http://www.jrsoftware.org/isinfo.php .

The product wasn’t quite finished yet. We needed to put together some documentation, and we didn’t want a text file. Using suggestions from Mr. you…yeah YOU, Super Mario and Talking Tom, a different kind of ReadMe file was made – A video. Using Facial and 2D animation software (Crazy Talk 6 – www.reallusion.com/crazytalk/ )developed by Reallusion, Corel Video Studio (http://www.corel.com/servlet/Satellite/us/en/Product/1175714228541 ) and a TTS Engine with Microsoft Anna’s beautiful voice(?!), a tutorial was put together.

This game consists of 5 different levels. In each level, there is a grid with a Black Mamba on the left side. The Black Mamba has 3 circular parts – one for the head, one for the body and the last for the tail. The head contains two movable eyes. These eyes follow the movement of the cursor on the screen. The player is allowed to control this Mamba with the left mouse button.

The main objective of this game is to get all parts of the mamba to the rightmost column of the coloured grid. Sounds easy? Maybe…maybe not! I didn’t tell you the catch yet. The catch is: At any given point in time, the Mamba should cover 3 squares of different colours. For instance, if the head and tail both cover red squares, it is an invalid move. Don’t worry! If you’re about to make an invalid move, a part of the Black Mamba will turn red with anger.

If you give up at any point of time, you can ask the Artificial Intelligence to solve the problem for you. But be warned! By doing this, you’ll be admitting that AI is smarter than you…It’s your choice and there’s no turning back!

And now, it is with great pleasure that The 21st Century Me…yeah ME! Production Company in association with Code Kshetra Inc. presents to you – BLACK MAMBA v3.0.@ http://www.mediafire.com/?53ribr9sffmm1c5

And Happy Diwali, folks!

Greetings from Code Kshetra Inc. and The 21st Century Me…yeah ME! Production Company

There are times when you’re sitting at your Computer, and you’re called away for any number of reasons – a friend could call you out to play; you might have to run an errand for your mom; you might be absent-minded and just leave your computer on and go out for a very long walk, or go out to catch a bite.

And how many times, during these ventures, have you suddenly remembered that you’ve left your PC on, and wished that you could teleport to your PC and Shut It Down? Sure! You could depend on the Power-Saving features bundled with the OS, but I bet many of you would have turned them off by now!

How many times have you said, “Damn?! If only I could Teleport like Nightcrawler to Shut Down my PC and come back!”?

Well, buddy! You can say Sayonara to your problems. Ok! A part of them anyway. Teleportation, if this page http://www.research.ibm.com/quantuminfo/teleportation/ is to be trusted, won’t be a reality, at least in the foreseeable future. So that problem hasn’t been solved…yet.

But don’t lose hope, pal! All is not lost, thanks to Shut It Down – A Free, Windows-based Remote-Shutdown Software written in Java, developed and published by Boondi Productions Public Unlimited. All you require is:

  • A Permanent, working Internet Connection to your PC.
  • Any GPRS phone or another computer connected to the Internet or a phone that supports Short Message Service (SMS).
  • Last, but not least, the Shut It Down application that can be downloaded from www.shutitdown.co.cc

The best part is it’s absolutely free! No strings attached!

You can use this application in other ways too.

  • Shut It Down supports other operations too – Log Off, Restart, Hibernate, Sleep, and Lock
  • If you have a number of PCs, Netbooks, Laptops, etc., in your house and all of them run on Microsoft Windows (support for other Operating Systems will be included some time soon) and are connected to a network and you’re too lazy to go around shutting down each one of them. No problem! All of us are turning into couch potatoes these days! Just fire up Shut It Down and watch it perform its magic! Shut It Down
  • Say you’re sick and tired of clicking the same old Start Menu to shut down your PC. You need a refreshing new way to shut it down – say, Shut it down from your Browser! You can do that too!  Use Shut It Down. The new age of shutting down through web-browsers has arrived, and the future looks pretty! Shut It Down
  • Suppose you want to play a prank on your friend. Install Shut It Down on his/her PC, and the next time you’re friend’s computer automatically shuts down, your friend might just think the apocalypse is nearing and Machines are taking over the world – Terminator style! Shut It Down

How you use this application is left to your imagination!

And Remember. Always Shut It Down @ http://shutitdown.co.cc/

This review was brought to you by The 21st Century Me…yeah ME! Production Company in association with Boondi Productions Public Unlimited, Code Kshetra Inc. and http://nanu-nanna-nenapu.blogspot.com/ based on inputs from various sources.

No Wrongs Unreserved. These are the views of the author and The 21st Century Me…yeah ME! Production Company cannot be held responsible for any misunderstanding.

Note: The developer of Shut It Down also goes by other names like Akon, Morpheus, etc.

So, kids! You know, life is very mysterious. I stumbled upon the “CS106A” YouTube channel, quite by accident (and I’ll leave that story for another time). I wonder how I would have felt about Java if I hadn’t – I shudder at the thought. It was the lectures in this channel, and particularly, the marvelous way in which Professor Mehran Sahami taught them that really made me discover things I hadn’t seen earlier.

I was first introduced to Karel The Robot, and that was how I met that Java package…Just kidding. This is not that package. Hypothetical Hi-Five! Awesome!

Anyway, Karel is a programming language, named after Karel Capek, a Czech writer who coined the word “robot”. With just a few, clearly defined instructions, Karel can be programmed to perform simple tasks in a world comprised of grids. The entire documentation on Karel is available @ http://www.stanford.edu/class/cs106a/book/karel-the-robot-learns-java.pdf .

You'll understand this once you start using Karel

But the story doesn’t end here. To understand what happens in the not too distant future, let’s go back a few days. I had just reached this website – http://www.stanford.edu/class/cs106a/WWW-winter/index.html . I was wondering what to do here, until I began reading http://www.stanford.edu/class/cs106a/WWW-winter/index.html . I came across the link to Stanford Eclipse @ http://www.stanford.edu/class/cs106a/software/eclipse-helios-pc.zip. I installed it, and was clearly impressed with the new Stanford Menu that had been incorporated in Eclipse, to extend its functionality.

Then, I read this – http://www.stanford.edu/class/cs106a/WWW-winter/handouts/06-karel-in-eclipse.pdf, and downloaded http://www.stanford.edu/class/cs106a/WWW-winter/assignments/Assignment1.zip .

The Assignment came with the “karel” package. All I had to do now, was import this assignment using the Stanford Menu in Eclipse, and voila! I could begin playing around with Karel. And I had a marvelous time. A few months down the line, the good folks of Stanford introduced Karel in JavaScript, which is available here – http://stanfordkarel.appspot.com/ . With that, Karel can now be directly programmed in any web browser. If you want to see how, just copy and paste the code available @ http://www.pastie.org/pastes/2036764/text in that box @ : http://stanfordkarel.appspot.com/

A few days after I played around with the robot, I saw a few more lectures, and it was then that I found out about the mysterious “acm.jar” file. At first, I passed it off as just another lame package. I thought to myself, “There are so many packages in Java. Why do I need some more?” – How wrong I was! I was too lazy to download the blank project from the CS106A website @ http://www.stanford.edu/class/cs106a/materials/BlankProject.zip , because of my silly internals and because my college was getting on my nerves. Instead, I continued working with “standard” Java. Fast forward to a few days later, and you’d find that I did download that project. How did I reach that situation? Well, you see, kids, I was reading a book authored by Patrick Naughton, and the guy had me totally confused by the time I reached the chapter on Applets. Why was I reading that book? It had been recommended by my college. On top of that, what really gave me the creeps was the fact that the book discussed only old, deprecated methods.

So, one day, I decided I had had enough of this nonsense. And in this state of fury, I watched http://www.youtube.com/watch?v=NPzPnycCFuE&feature=BFa&list=SP84A56BC7F4A1F852&index=5 . Seeing the benefits of this package, I downloaded http://www.stanford.edu/class/cs106a/materials/BlankProject.zip, imported it into Stanford Eclipse using the Stanford Menu and learned how to use the “ACM” package from http://www.youtube.com/playlist?p=PL84A56BC7F4A1F852 , and that, kids, was how I met that Java package. I suddenly realized how easy Java was, and how beautiful object-oriented programming really is, and since then, life has never been the same again.

With that package, I could choose whether my program needed a graphical interface or a command-line interface, by importing acm.graphics.*; or acm.program.*; respectively, or I could combine both if I wanted. This package had been made by the Java Task Force, and I learned from http://jtf.acm.org/ that the ACM JTF had been convened “To review the Java language, APIs, and tools from the perspective of introductory computing education and to develop a stable collection of pedagogical resources that will make it easier to teach Java to first-year computing students without having those students overwhelmed by its complexity”, with Eric Roberts of Stanford University as its chairman. To understand what this package is capable of, visit http://www.stanford.edu/class/cs106a/WWW-winter/handouts/

A few weeks later, I had learned enough to re-create the “Breakout” game, first developed by Atari, in 1976. I’m sure you are terribly familiar with this game and if you’re not, here’s something that will refresh your memory – http://en.wikipedia.org/wiki/Breakout_%28video_game%29 . I know it’s not great or anything, but I just want to show you what you can do with this awesome package. So don’t say I didn’t warn you!

To play the game, visit https://www.filesanywhere.com/fs/v.aspx?v=8a6c65895e5e73a66ca0

Looking on the bright side, I’ll show you how to create it by giving you the source code too @ http://pastie.org/2036162 . There’s also a way to run these programs within your browser (after all, the GraphicsProgram Class just extends the functionality of the Applet Class). What this means is – you don’t have to use the line “java –cp .;acm.jar Breakout” to run the program using the command prompt.  All you need to do is click on “Display.html”, and everything else will be done for you. Use the mouse as the control device.

When the game starts, along with some background Music, you’ll see 100 bricks on the top, a ball in the center, and a block (called a paddle) at the bottom. The paddle can be moved only in the horizontal direction using the Mouse. To start playing, just click the left mouse button. The ball moves off with random velocity, and as you progress further, the speed of the ball increases. On contact with a brick, the ball gets deflected after it destroys it. Depending on which part of the paddle the ball comes in contact with, the ball gets deflected by an appropriate angle. During all this, you’ll find that every object  (except for the image) keeps changing colours randomly. Why? For some reason, the changing colours give me a sense of tension! The main objective of the game is to destroy all the bricks without allowing the ball touch the bottom, and you’re allowed to lose twice, before you fail completely, and the theme music of Alfred Hitchcock’s “Psycho” starts playing in the background.

Visit https://www.filesanywhere.com/fs/v.aspx?v=8a6c65895e5e73a66ca0

Unfortunately, I don’t know how to bypass the security of Java in order to make this game playable using a web server. I uploaded this game to some free web-hosting servers, and tried running the applet from there. Since the program reads image and audio files such as .jpg, .au, etc., from the disk, it wasn’t allowed to run. The console told me that this was just a precaution to ensure security – Applets aren’t allowed to read and write to a client’s disk, unless the applet is being run offline, which would be the case when you download and run the program from https://www.filesanywhere.com/fs/v.aspx?v=8a6c65895e5e73a66ca0 .  I would be grateful if anyone could tell me if there’s a way to overcome this.

..And that, kids, was how I met that Java package. It was legen…wait for it…dary. LEGENDARY!

So, kids, I’m sorry that this article wasn’t extremely long, and sorry I couldn’t make you all sit down for 6 seasons (and more to come)… 😛