Wednesday, March 6, 2013

Best online reading, circa March 2013

Due to some problems with me not being able to focus on other idle things like TV and games and Rebol etc., I have decided to read around the internet. And to write a bit while I'm at it, in part because my friends Vineet Malhotra and Nitesh Goyal think its a good way to spend time. And what better way to write more than to rip off other people's content!

Here are some of the best websites or pages that I have had the chance to pass through until March, 2013. Listing them for personal reference, and (sometimes) to push in the face of other people. Not you. Other people. Not for any particular reason.

In case you decide to actually read all of this stuff, (1) you will find that I value intelligence, insight and humor, in the reverse order, and, (2) you are more idle than you probably should be. Btw, the order of the below listed posts does not matter. And it is not exhaustive by any means.

You might want to keep in mind that these are the things I liked from these people, and that their blogs/websites/whatevers are a lot broader than my perspective on them.

Fire and Motion, by Joel Spolsky.

 Joel has written a lot, but I were to select a single post, this would be it. Not only from a software point of view. I like drawing inter-disciplinary generalizations, and watching others do it. I wonder where I would be if I had read this 10 years before. Would love to simply copy-and-paste and quote the whole post here, but what the hell. (Also see the discussion)
When I was an Israeli paratrooper a general stopped by to give us a little speech about strategy. In infantry battles, he told us, there is only one strategy: Fire and Motion. You move towards the enemy while firing your weapon. The firing forces him to keep his head down so he can't fire at you. (That's what the soldiers mean when they shout "cover me." It means, "fire at our enemy so he has to duck and can't fire at me while I run across this street, here." It works.)  The motion allows you to conquer territory and get closer to your enemy, where your shots are much more likely to hit their target. If you're not moving, the enemy gets to decide what happens, which is not a good thing. If you're not firing, the enemy will fire at you, pinning you down.


Things I learnt as a kid, by Douglas Crockford

So you know he is the inventor of JavaScript and JSON, and mentioned Rebol as a good programming language a few times and as an inspiration for JSON, but what makes this post great is the honesty with which he shows the innocence of his childhood. Every idiot can remember the one special incident, but I guess (I can only guess), it takes some deep reflection to remember it all and to publish it online.
When a person is drowning, particularly a non-swimmer, they will come up to the surface exactly three times before they die. It is not uncommon for the victim to count to three on his fingers as he is drowning.

On the move, by Philip Guo

I have spent my childhood in different places within India. In fact, until I was 14, I had not stayed at a single place for more than 4 years, and not more than 3 years if you exclude one. Spending one's childhood at a single place, with a single set of friends is something I would want for everybody to have. Not that I am against broadening one's horizons, just that childhood should be simple in my opinion.

The following quote contains emotions that I had too had to face in 1993 (or 1994), 1997, 2000 and 2004 (we moved in 1990/91 but I was too young then), not for the same reason as Philip, but because my parents moved a lot due to my dad's job and because I spent four years at a boarding school. Funny thing is, I am again going to have to move somewhere else in a few months, but I have grown now. Another funny thing is that sometimes I feel pity for people (however young) who have spent their lives in a single place.
At the time, though, I was unhappy, but my parents did not give me a choice. When I told my friends that I was going to skip to fifth grade, they felt genuinely upset and betrayed that I was leaving them. Some of my friends pleaded me not to go, and I was touched by their sincere loyalty. It was the first time that I felt like I was abandoning people I had grown up with; this group of friends was the first that I had remained close to for more than two years, which was a long time by my childhood standards.

xkcd by Randall Monroe

I cannot possibly define what xkcd is, and the about page is a bit too big for such a small (per post), and funny website.  Gonna let a pic tell you all about it.


Travels with Samantha by Philip Greenspun

First of all, Samantha here is not a lady, or a human, or even a dog, for that matter. (thats how I rouse your curiosity). I love the way Philip writes about computer science, travel, photography, writing and many other things without any change in the intensity and comedy. Here is a very funny quote on writing, the funny part being that there is no funny thing in the quote and you will end up feeling mentally tortured.
"Never go off on tangents, which are lines that intersect a curve at only one point and were discovered by Euclid, who lived in the 3rd century B.C., which was the end of the Middle Formative Period in Meso-America, where many principal sites of settlement were in the area that we now know as Belize, a common destination for SCUBA-diving tourists." -- Mostly me (Philip) 

Teach Yourself Programming in 10 Years by Peter Norvig

Another one of literary resources I wished I had access to 10 years before today. Meant for programmers, and anyone who works in a field that requires any kind of skill, that is, all fields. A farm labourer might want to decrease his/her time and effort for maximum profit etc. I bet everyone can read it and learn a bit about being world class in their respective field. The quote that I am mentioning here is a not a programming related one, and it is a pity since the page literally is a treasure of intelligent things about getting better at programming.
So it may be that 10,000 hours, not 10 years, is the magic number. (Henri Cartier-Bresson (1908-2004) said "Your first 10,000 photographs are your worst," but he shot more than one an hour.) Samuel Johnson (1709-1784) thought it took even longer: "Excellence in any department can be attained only by the labor of a lifetime; it is not to be purchased at a lesser price." And Chaucer (1340-1400) complained "the lyf so short, the craft so long to lerne." Hippocrates (c. 400BC) is known for the excerpt "ars longa, vita brevis", which is part of the longer quotation "Ars longa, vita brevis, occasio praeceps, experimentum periculosum, iudicium difficile", which in English renders as "Life is short, [the] craft long, opportunity fleeting, experiment treacherous, judgment difficult." Although in Latin, ars can mean either art or craft, in the original Greek the word "techne" can only mean "skill", not "art".

The Tragedy of being 25+ in an Indian BSchool  by Siddhesh Agashe

This post was introduced to my by an email from my good and crazy friend Ankit Gupta sometime in late 2010. A great post, and an even greater blog. Comedy and making fun of MBA types, by an MBA student himself is something that will always make me feel funny. Again, selecting a single quote proved very difficult :-) But jokes apart, reading his blog and (a coworker from my first company) Arpit Rastogi's blog made me feel like I should write a blog myself.
99.99% of the 5% girls of your age would already be committed, married or engaged. The balance 0.01% are single because of a reason. (Use your own judgment to guess why. I refrain from making any racist/sexist/biased comments on my blog) 

Giant Robot Dinosaur (fakegrimlock)

I don't really know what to write about fakegrimlock. I follow him on twitter, and love the way he writes/speaks. His insistence on using all caps and (intentionally) disfigured grammar makes him irresistible  Quoting his "about" thing:

How to do what you Love by Paul Graham

From a blog about tech startups and analysis of the overall tech industry, here is a general post meant for children that I think is relevant for everyone. From reading his blog, all my future (personal) decisions will be scrutinized under the lens of the way Paul seems to think.
It was not till I was in college that the idea of work finally broke free from the idea of making a living. Then the important question became not how to make money, but what to work on. Ideally these coincided, but some spectacular boundary cases (like Einstein in the patent office) proved they weren't identical. 

The Anatomy of Determination by (again) Paul Graham

There is a lot of research on what makes people successful and all, but this is the simplest thing I have ever seen on the topic. Don't let the investor-startup-money-talent things fool you. This is universal. And did I not mention I just love triangular simplifications of things?
In most domains, talent is overrated compared to determination—partly because it makes a better story, partly because it gives onlookers an excuse for being lazy, and partly because after a while determination starts to look like talent.

The Secret Footballer

This one is an anonymous blog on the Guardian's website, and anyone who has had the desire to be a professional footballer in the big leagues someday would read it and thank themselves that they are just wannabes in that regard. At least I do so. But good time pass value for me :-)
Within most squads there are now two schools: those who feel they ought to have an iPhone and those who prefer the style and layout of a Blackberry. The two are easily defined by match-day etiquette – the ones who are more image conscious generally arrive at the players' entrance with hair made up, shoes sparkling, iPhone firmly fixed to their ear and designer wash bag under arm. Interestingly, most defenders seem to fall into the Blackberry category. But in this instance both devices perform the same task.


(Inspired by Brian "HostileFork" Dickens' Software Engineering Quotes)

Sunday, March 3, 2013

What Rebol means to me

This is not a programming related post. It is a programmer-related, people-related post, but not a programming related post.

Instead of a well thought post, this one is just a 10 minute memory dump. :-)

Just a few days back, I was fooling around the different chat rooms at stackoverflow chat. As anyone familiar with SO chat will tell you, there are (online) rooms where SO users can talk about programming and whatnot.

I saw a room named "Rebol-and-Red" and thought the name was funny. Like the names of two people who are having a room for themselves... in SO terms, room for Rebol and Red. Without any apparent reason, I entered the room and started reading what the people there were writing.

I kid you not, within about 20 seconds, someone said "Hi, @KK."

So, I responded. This person started telling me about Rebol and how it relates to other languages we use, like LISP and C etc. And since it is a very small language download, this person made me download it and walked me through simple commands on the interpreter. A few other people, frequents in the room, jumped in the discussion. I liked the attention that I was getting from better, older, better, mature, better  programmers.

Later in the evening that day, I again went to this room. Again the same. Then the next day. One more day. Another day.

Rebol is an odd programming language, but what made me stick to it was the great, ultra-friendly, noob-helping community. You did not get yelled at for asking a silly question, or for asking a silly question 2 times, or n times. :-)

Another thing I liked about it is the variety of people that I met in the Rebol room. Apparently, Brian "hostilefork" Dickens is a very cool person who will do anything in his power to help make Rebol a more accepted language. Graham Chiu is a doctor who treats Rebol like this motorcycle one maintains after work. Then there are the core implementors for Rebol: Christopher Ross-Gill (see his all-purpose utility scripts), BrianH, Andreas "earl" Bolka, Sunanda, Ladislav, and programmers all between the spectrum, like Adrian Sampaleanu, Jina, Randall "somekittens" Koutnik, MaxV, Benjamin Gruenbaum, Petr Krenzelok (pekr), Rebolek and a bot called Rebolbot, made by Dr. Chiu. Nenad Rakocevic, who goes by the name dockimbel works on a compiled Rebol-like language called Red. Peter WA Wood also hangs in the room sometimes, and he is one of the core implementors of Red.

I love chatting with these guys, and use a bit of rebol, only as a hobby. Lets see how long this affair with Rebol goes, but as long as I am with it, I love it.

I am indebted to these great people for their help and insights in making me get familiar to Rebol, and even more thankful for the jokes and other non-Rebol talk that we share in the Rebol room.

To anyone I did not mention or mentioned incorrectly, feel free to come to Mohali/Kharar, India and smack me in the head :-)