Vishal Telangre

Rationalist. Programmer.

Read this first

Inevitable Fact About Programmers

Quoting from an article featured on HN:

…with good programmers, the language doesn’t matter: they’ll choose the best one, or follow the advice of more experienced colleagues, and quickly take advantage of any extra power the novel environment has to offer.

Yes, that’s the fact!

It’s been almost a year, since when I started my professional career as a Ruby developer. Now, I feel very much comfortable with the dynamic/imperative behavioral programming paradigm.

Recently, I switched over Emacs24 from SublimeText (experience ain’t that much painful, as I had thought before) – and, I felt in love with the Lisp while managing configurations for Emacs, which need to write in Emacs Lisp language, which is a one of popular dialect of Lisp language. There are notable and popular, and undoubtedly interesting to learn dialects of Lisp avaialable, such as...

Continue reading →


Releasing `term-colorizer` v0.2.1

FYI, term-colorizer is a Ruby gem that I’ve made for just fun, a month ago.

Let me tell you my experience. Term::Colorizer is my first-ever Ruby gem that I’ve had created and published. Even if it was a first time, I wanted to create something generic. On Rails apps, we see logs, run bunch of rake tasks and execute some command-line scripts, usually everyday! Well, I found an idea to get started then. Provide something easy and handy enough to print the colorized & fancy logs or output on terminal (console) – it was my idea, simple one!

This gem’s current version is 0.2.1, and is a stable one. In earlier versions, this gem had ability to provide only certain methods for printing colorized strings. Now, as you can see in changelog, I’ve added a lot of extra methods for colors, bright colors, backgrounds colors, adding underline and strikethrough...

Continue reading →


Overriding ‘method_missing’

These days, I am trying myself to get familiar with powerful metaprogramming stuff of Ruby. By making use of, I am feeling quite comfortable with send and define_method now.

I was digging into source code of some of the popular Ruby libraries/gems, and got fascinated by how people override the method_missing and respond_to? methods out there.

So, let’s talk about method_missing.

If we try to call a method which is not defined yet, then interpreter raises an error. However, we can override such method dynamically, which is not implemented yet. Here it comes method_missing; this takes basically two arguments – method which is the symbol for the method called, and args are any arguments that were passed to it.

Let me show you, how I played with it as follows:

def method_missing(method, *args) method = method.to_s.downcase if !!(method =~ /^handle_.*$/)...

Continue reading →


Last Day at RubyConfIndia 2013

If you’re landed up here directly, then you might be interested in reading First Day at RubyConfIndia 2013 before this post.

Great! So here are the short highlights of RubyConfIndia 2013 at second (and which was last) day, with my very own perspectives.

I feel really sorry about not participating in the #ruby5Krun. I just couldn’t able to woke up at so early in the morning so I can travel 25Kms from my staying place to hotel Hyatt Regency and run there at morning 6'o clock! I really apologize for that. But yeah, so many people participated in it (except me), and I would like to congrats and share my thanks to ‘em.

Arron Patterson (@tenderlove) at RubyConfIndia 2013 with his cat slide!

Okay, at 10:30 am, our @tenderlove come up, and started his most awaited keynote talk of this conference. He shared his experiences as an Open Source Software developer, and illuminated the curve of his professional life, while becoming a full-time...

Continue reading →


First Day at RubyConfIndia 2013

Awesome day it was!

While leaving off for day first at RubyConfIndia 2013 held at Hotel Hyatt Regency, Pune – you believe it or not, but I got this (weird) photograph with Aaron Patterson (@tenderlove):

Photograph of me with Aaron Patterson (@tenderlove)

Great, can’t believe it!

In the morning’s opening keynote, Jim Weirich (@jimweirich) shown really nice TDD approaches! That was a easily understandable example of NumeralToRoman and RomanToArabic conversion he shown us by continuously writing test scenarios which might fail, and writing logic after it to pass those test cases! Aha, enjoyed it! Will be learning those approaches. TDD, yea!

Later talks that I liked most:

  • Ruby loves Unix: Applying beautiful Unix idioms to build a Ruby prefork server by Sahil Muthoo – _ Terrific guy, I say! He covered these fork, kill, etc. idioms, and how the master-worker processes work actually in Unicorn and also discussed his...

Continue reading →


[comic] How Much?

Today, I got to know Bitstrips app on Facebook. I must say that it’s pretty cool. I have created my avatar using it (check my fb profile).

Loved it.

They provide such a plenty of toolboxes, so folks like me can also create humorous comics like below:

:D

How much?

Continue reading →


The Start

So here it is, a minimal weblog as I always wanted to have.

Few months ago, I was a consistent blogger. I have wrote posts on a variety of subjects, viz. related to technology, life experiences, psychology, etc. Then, because of so many reasons I was unable to continue that habit. In the interim, I have been busy for pursuing my first ever job, and developing the 2zerozero.com web application. I had just no time to look at my hobbies anyhow.

Now, it looks like everything is stabilized. I have a good job here in the Pune city, and the 2 Zero Zero application which I have been developing with Dipak (co-creator), is now released with second major version. Great achievement!

Well, I am thinking about continuing this habit. Good fortune actually, isn’t it?

:)

Continue reading →