<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-15073176</id><updated>2011-06-07T23:21:43.956-07:00</updated><title type='text'>Code Monkeys</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://she-bang.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://she-bang.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Maverick</name><uri>http://www.blogger.com/profile/02064926606864784235</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-15073176.post-114045854625598938</id><published>2006-02-20T09:53:00.000-08:00</published><updated>2006-02-20T10:02:26.273-08:00</updated><title type='text'>Reverse Engineering</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Long time no post!&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Well, check out the article at code.box.sk Newsletter for a Reverse Engineering challenge. The answer is given on the site, but Ill try to crack it on my own, once I get back to Bombay. Ill post my solution here when and if I manage to do it. &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;Here is the link for the newsletter. See the "Code Challenge: CRACKME Application" on page 25.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div align="justify"&gt;&lt;a href="http://code.box.sk//redirect.php?http://code.box.sk/files/newsletter1.pdf"&gt;&lt;span style="font-family:verdana;"&gt;http://code.box.sk//redirect.php?http://code.box.sk/files/newsletter1.pdf&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:verdana;"&gt;If anyone reading is interested and can crack it, post your solution in the comments.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15073176-114045854625598938?l=she-bang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://she-bang.blogspot.com/feeds/114045854625598938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15073176&amp;postID=114045854625598938&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/114045854625598938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/114045854625598938'/><link rel='alternate' type='text/html' href='http://she-bang.blogspot.com/2006/02/reverse-engineering.html' title='Reverse Engineering'/><author><name>Maverick</name><uri>http://www.blogger.com/profile/02064926606864784235</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15073176.post-112888697649904683</id><published>2005-10-09T12:36:00.000-07:00</published><updated>2005-10-09T13:28:21.123-07:00</updated><title type='text'>Bout Google!</title><content type='html'>&lt;div style="text-align: justify;"&gt;This is part of a conversation Thite and I were having bout Google.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel - If you want to work in a big company, learn how to hack Blub on Windows - http://swapneel.no-ip.info says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;did u hear the news bout google goin to provide free wireless connectivity in san francisco?&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;pretty neat&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;beautiful example of wat joel spolsky was sayin in his microeconomics article&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh | Whoa! says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;yea&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;and there's more&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh  says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Google is buying fibre&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;loads of it&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;maybe they are making an alternate internet&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;one with better standards&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;huh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;waddya mean an alt internet?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;a network independent of the current internet&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;and...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;to allow for extremely insane speeds&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;they wanna replace the current standards?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;mostly for ur multimedia apps&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;very ambitious...doubtful whether itll succeed&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;hope it does&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;live vid streams n stuff&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;it'll prolly b free too&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;hmmm&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;interesting....&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;but i guess itll take easily 5-10 years at minimum, for it to become common like wat we have internet today&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;did u hear bout the google-sun alliance?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;think so, u mite as well remind&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;lets c how MS responds&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;basically, they're gonna promote each other...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;google will promote openoffice....ppl who dload jdk, will have an option of dloadin google deskbar, etc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;I don't really like SUN&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;“Initially, the agreement will involve Sun giving those downloading its Star Office and Open Office word processing, database and spreadsheet software the option of downloading the Google search toolbar as well. &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;In the long term, however, I'm sure it will be the other way round - Google becoming the primary distribution network for Sun's desktop applications, with Java at the centre of it all.”&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;y not?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;dunno, jlt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;it has a hidden propoganda&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;something in it does not feel good&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;bout the hidden propaganda...who doesnt? google? ms? cisco?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;but yea...i think ur opinion is based a lot due to java&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;i agree with java sucking big time....when compared to ruby, py, lisp, etc...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;right now, google hasn't done nething to fuck itself, or da industry&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;but the fact remains, for average ppl, java rules&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;actually it does not matter&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;fucking urself and hidden propaganda is diff na? or u tryin to mean something else?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;da problem with hidden propagandas is that eventually, u fuck and get fucked&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;unless ur M$&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cause dey are desensitised&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;lol...neutered u mean &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;hahaha&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;§ Hrishikesh says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;euphematically speaking, yea&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;but its classical game theory....imagine how huge ibm wouldve been, if they werent stupid enuff and bill gates wasnt smart enuff with the DOS deal&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;Swapneel says:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 102);"&gt;someone's gotta lose out&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lemme know what u guys think. Comments are welcome.&lt;br /&gt;&lt;br /&gt;PS: Joel Spolsky's article on &lt;a href="http://www.joelonsoftware.com/articles/StrategyLetterV.html"&gt;MicroEconomics&lt;/a&gt; is a MUST READ.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15073176-112888697649904683?l=she-bang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://she-bang.blogspot.com/feeds/112888697649904683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15073176&amp;postID=112888697649904683&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/112888697649904683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/112888697649904683'/><link rel='alternate' type='text/html' href='http://she-bang.blogspot.com/2005/10/bout-google.html' title='Bout Google!'/><author><name>Maverick</name><uri>http://www.blogger.com/profile/02064926606864784235</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15073176.post-112482204874572939</id><published>2005-08-23T11:02:00.000-07:00</published><updated>2005-08-23T11:45:13.973-07:00</updated><title type='text'>A Sample Ruby Code</title><content type='html'>A few people were asking for a sample Ruby code, so here goes!&lt;br /&gt;&lt;br /&gt;First the history - my Babylon Time Trial expired and I was looking for a good alternative with my GRE coming up. So I thought,  why not code it in Ruby? So basically what my code does is, it queries the &lt;a href="http://www.google.com"&gt;Google&lt;/a&gt; Search engine, uses the 'define' keyword and retrieves the page containing the definitions of the word entered at the command line. After retrieving, I use some Regular Expressions (here's where Ruby makes life sooo easy!!) to parse the page and remove the unnecessary html tags, etc and display just the definitions. The code follows ...&lt;br /&gt;&lt;br /&gt;require 'net/http'&lt;br /&gt;&lt;br /&gt;word = ''&lt;br /&gt;text = ''&lt;br /&gt;ARGV.each {|arg| word &lt;&lt; arg; word &lt;&lt;" "}&lt;br /&gt;&lt;br /&gt;res = Net::HTTP.get_response('www.google.co.in', '/search?hl=en&amp;q=define%3A'+word+'&amp;btnG=Google+Search&amp;meta=')&lt;br /&gt;&lt;br /&gt;arr = res.body.split(/&lt;\w+&gt;/)&lt;br /&gt;arr2 = []&lt;br /&gt;arr.each { |g| arr2.push(g) unless g =~ /&lt;.+&gt;/}&lt;br /&gt;arr2.delete("")&lt;br /&gt;arr2.delete_at(0)&lt;br /&gt;arr2.pop if arr2.last =~ /Display definitions/&lt;br /&gt;arr2.clear if arr2.last =~ /all words are spelled correctly/&lt;br /&gt;puts "\n#{arr2.length} Definition(s) of #{word.upcase}\n\n"&lt;br /&gt;arr2.each { |d| puts d+"\n\n"}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A brief explanation of the Code - &lt;br /&gt;The first line includes the net/http module. &lt;br /&gt;The third line take the word(s) entered at the command line and forms a string.&lt;br /&gt;The next line retrives the page using the 'define' keyword at google.&lt;br /&gt;The rest of the code is just parsing the page to remove tags etc.&lt;br /&gt;&lt;br /&gt;Here's a sample output&lt;br /&gt;&lt;br /&gt;C:\Ruby&gt;ruby google.rb behoove&lt;br /&gt;&lt;br /&gt;1 Definition(s) of BEHOOVE&lt;br /&gt;&lt;br /&gt;be appropriate or necessary; "IT behooves us to reflect on this matter"&lt;br /&gt;&lt;br /&gt;C:\Ruby&gt;ruby google.rb ruby programming language&lt;br /&gt;&lt;br /&gt;1 Definition(s) of RUBY PROGRAMMING LANGUAGE&lt;br /&gt;&lt;br /&gt;Ruby is an object-oriented programming language. It combines syntax inspired by Ada and Perl with Smalltalk-like object-oriented features, and also shares some features with Python, Lisp and CLU. Ruby is an interpreted language.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I think this code shows just some of the power of Ruby - in very few lines of code, we can achieve some AWESOME functionality! Till the next post ...&lt;br /&gt;&lt;br /&gt;P.S. Im running a server at my place, check it out at &lt;a href=http://swapneel.no-ip.info&gt;http://swapneel.no-ip.info&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Its got loads of Ruby and Java Code, and i have also deployed a Ruby on Rails application on it (thats gonna be the topic of my next post). No URLs for the former, good luck searching for it! &lt;br /&gt;The latter can be found at &lt;a href=http://swapneel.no-ip.info/code&gt;http://swapneel.no-ip.info/code&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15073176-112482204874572939?l=she-bang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://she-bang.blogspot.com/feeds/112482204874572939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15073176&amp;postID=112482204874572939&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/112482204874572939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/112482204874572939'/><link rel='alternate' type='text/html' href='http://she-bang.blogspot.com/2005/08/sample-ruby-code.html' title='A Sample Ruby Code'/><author><name>Maverick</name><uri>http://www.blogger.com/profile/02064926606864784235</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15073176.post-112325417546934681</id><published>2005-08-05T07:56:00.000-07:00</published><updated>2005-08-05T08:27:25.566-07:00</updated><title type='text'>Ruby: Programmer's Best Friend</title><content type='html'>&lt;div style="text-align: justify;"&gt;I still cant remember how i got initiated into Ruby, but it definitely was a perfect example of serendipity! I do remember though, downloading and reading &lt;a href="http://www.rubycentral.com/book/"&gt; Programming Ruby&lt;/a&gt; aka the "The PickAxe" by Dave Thomas et al, and i was BLOWN AWAY!&lt;br /&gt;&lt;br /&gt;Ruby is an Open Source Object Oriented programming/scripting language created by Yukihiro Matsumoto, a.k.a. “Matz” from Japan. In the foreward to the book, he writes -&lt;br /&gt;&lt;br /&gt;"Man is driven to create; I know I really love to create things. And while I’m not good at painting, drawing, or music, I can write software.&lt;br /&gt;&lt;br /&gt;Shortly after I was introduced to computers, I became interested in programming languages. I believed that an ideal programming languagemust be attainable, and I wanted to be the designer of it. Later, after gaining some experience, I realized that this kind of ideal, all-purpose language might be more difficult than I had thought. But I was still hoping to design a language that would work for most of the jobs I did everyday. That was my dream as a student.&lt;br /&gt;&lt;br /&gt;Years later I talked with colleagues about scripting languages, their power and possibility. As an object-oriented fan for more than fifteen years, it seemed to me that OO programming was very suitable for scripting too. I did some research on the ’net for a while, but the candidates I found, Perl and Python, were not exactly what I was looking for. I wanted a language more powerful than Perl and more object-oriented than Python.&lt;br /&gt;&lt;br /&gt;Then, I remembered my old dream and decided to design my own language. At first I was just toying around with it at work. But gradually it grew to be a tool good enough to replace Perl. I named it Ruby—after the precious red stone—and released it to the public in 1995.&lt;br /&gt;Since then a lot of people have become interested in Ruby. Believe it or not, Ruby is actually more popular than Python in Japan right now. I hope that eventually it will be just as well received all over the world.&lt;br /&gt;&lt;br /&gt;I believe that the purpose of life is, at least in part, to be happy. Based on this belief, Ruby is designed to make programming not only easy but also fun. It allows you to concentrate on the creative side of programming, with less stress. If you don’t believe me, read this book and try Ruby. I’m sure you’ll find out for yourself."&lt;br /&gt;&lt;br /&gt;Ruby does all that Matz said it would and more! n lil wonder then, that its more popular than Python in Japan. The only surprising thing is why it hasnt caught on all over the world...im pretty sure it will. Any good programmer needs to just work with Ruby for a few days and realise why its sooo much better than most of the other programming languages!&lt;br /&gt;&lt;br /&gt;I told Hrishikesh ("thite" as we more commonly call him) bout Ruby and he too was HOOKED. Gautam (aka "geek")  meawhile was learning Python.&lt;br /&gt;&lt;br /&gt;So what is it that makes Ruby so gr8? Dave Thomas, in the preface of the book says -&lt;br /&gt;&lt;br /&gt;"When Andy and I wrote the first edition, we had to explain the background and appeal of Ruby. Among other things, we wrote “When we discovered Ruby, we realized that we’d found what we’d been looking for. More than any other language with which we have worked, Ruby stays out of your way. You can concentrate on solving the problem at hand, instead of struggling with compiler and language issues. That’s how it can help you become a better programmer: by giving you the chance to spend your time creating solutions for your users, not for the compiler.”"&lt;br /&gt;&lt;br /&gt;Having used Ruby for quite some time now, i havta agree. Whenever im writing code in Ruby, most of the thinking has gone into how to solve the problem rather than being stuck with the deficiencies of the language and how to get around them!&lt;br /&gt;&lt;br /&gt;Ruby is a dynamically typed language (more on this in a later blog). Coming from a background of statically typed languages like C, C++, Java, etc. dynamic typing is soo beautiful, i wonder why ALL languages dont have it! Dave Thomas et al call it "Duck Typing" and say -&lt;br /&gt;&lt;br /&gt;"In Ruby, the class is never (OK, almost never) the type. Instead, the type of an object is defined more by what that object can do. In Ruby, we call this duck typing. If an object walks like a duck and talks like a duck, then the interpreter is happy to treat it as if it were a duck."&lt;br /&gt;&lt;br /&gt;Love that last line! :d&lt;br /&gt;&lt;br /&gt;Well, i found duck typing pretty awesome as besides other advantages, it really helps incremental code development.&lt;br /&gt;&lt;br /&gt;Another awesome resource for Ruby is &lt;a href="http://www.poignantguide.net/ruby/"&gt;Why's (Poignant) Guide to Ruby&lt;/a&gt;. Not only is it a fascinating read and a good source to learn Ruby, it also provides a unique take on Ruby. Read it to know more!&lt;br /&gt;&lt;br /&gt;I hope those of you who read this blog feel tempted to give Ruby a try! Trust me itll change the way you code! Various downloads, source code, documentation, etc is available at the &lt;a href="http://www.ruby-lang.org/"&gt;Ruby Home Page&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Well, i think i should wind up this blog now! Examples of Ruby code and solutions to the  &lt;a href="http://www.pythonchallenge.com/"&gt;Python Challenge&lt;/a&gt; in Ruby to follow shortly. Ill end by once again quoting  Matz -&lt;br /&gt;&lt;br /&gt;"The stone has started rolling. It will became a great mountain and fill the whole earth."&lt;br /&gt;Yukihiro Matsumoto, a.k.a. “Matz”&lt;br /&gt;Japan, August 2004&lt;br /&gt;Preface to the Second Edition of  "The PickAxe"&lt;span style="font-family:monospace;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15073176-112325417546934681?l=she-bang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://she-bang.blogspot.com/feeds/112325417546934681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15073176&amp;postID=112325417546934681&amp;isPopup=true' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/112325417546934681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15073176/posts/default/112325417546934681'/><link rel='alternate' type='text/html' href='http://she-bang.blogspot.com/2005/08/ruby-programmers-best-friend.html' title='Ruby: Programmer&apos;s Best Friend'/><author><name>Maverick</name><uri>http://www.blogger.com/profile/02064926606864784235</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry></feed>
