Eleven of us went trekking to Tadiyandamol. We ended up trekking more than 25 km on day 1, literally walking in the clouds, pitching our own tents, and braving the winds during the night. All in all, a beautiful place, awesome company and a memorable sunrise made it a great weekend.

img_0071
img_0081

(more…)

I quickly (read as “hastily”) put together this short presentation for a discussion session at the upcoming Barcamp. The question is “With the advent of cloud computing, cloud databases, RIAs, APIs, etc., are web developers and their frameworks evolving and keeping up with the times?”

If you are interested in this discussion, please click the “I Want to Attend” button on this session’s page at the BarCamp Bangalore website.

If there is not sufficient interest, I will drop this session because there seem to be 88 sessions registered already, I have no idea how so many sessions are going to fit into just 2 days.

For more background material on this topic, see my Website Making Howto wiki page.

Continuing the “Ideas are Cheap” series, here’s another simple idea that I would personally find very useful but would be difficult to execute in terms of content.

These days I’m finding it hard to read Kannada newspapers because my vocabulary is clearly lacking, and consequently I would probably never get to read novels by Kannada novelists like Shivaram Karanth and other respected writers.

On the other side, there has been an influx of a lot of people from outside Karnataka into Bengaluru in the past few years. Since you can easily get by in Bengaluru with English or Hindi, most of them don’t learn Kannada even though many of them would like to.

What if there were word lists for Kannada just like GRE/TOEFL to improve people’s vocabulary? But in a more fun setting on the lines of what DailyLit is doing – they email you 1-2 pages of a book each day, so if you read your email each day, you’ll end up reading a book as well.

It can also be done similar to what @rajeshlalwani has done with his hindi word of the day series on twitter.

If there is already a service like this, please let me know, I’ll sign up.

The ABIDe, i.e. Agenda for Bengaluru Infrastructure and Development Task Force (setup by the current government) is working on a roadmap for development of Bengaluru along with deadlines and regular 100-day monitoring, etc.

The comprehensive reports are available in PDF format on a public website with even discussion forums (although the forums have poor participation).

Comments and suggestions should be sent to abide@abidebengaluru.in .

I’m surprised by the level of openness and invitation for public participation. I’ve heard that all these developments have started due to the initiative of Mr. Rajeev Chandrasekhar, a Rajya Sabha MP. If so, kudos to him!

On the other side, hopefully all those people who spend a significant time everyday cursing the infrastructure and traffic will spend a few minutes to review these reports and contribute suggestions and comments, to get rid of the very same problems.

And the process has already started. The government is launching Kendra Sarige AC buses today, which I think, is to influence people who can afford it to make using these buses more appealing than using their cars:

The Kendra Sarige is a bus service, also called the Hop on Hop off (HOHO) bus service, will run in the central business district only. The route covers the whole area from the Police Housing Corporation, Hosmat Hospital to Trinity Circle.

Almost 20 bus stops in the anti-clockwise manner and around 13 clockwise are planned. Nine air-conditioned Volvo buses will run clockwise and anti-clockwise in this circle itself. The longest trip on this route will take a maximum of 20 minutes.

There will be nine buses running every hour on the route. Bus frequency at the stops varies from three to seven minutes.

 picture by Pradeep B V
The Orange Line Kendriya Sarige bus picture by Pradeep B V

And another announcement is the “Big-10 buses” which connect 10 major roads in Bangalore to the outer ring roads, and these buses are going to be on trial for a week to see if it eases congestion.

BIG10 buses picture by Pradeep B V
BIG10 bus. Observe kannada and english in the same logo picture by Pradeep B V

To sum it up, they are making plans together with reputed citizens in the committee, actively asking for feedback from the public, they are conducting trials and making data-based decisions, and actively launching services. Isn’t this what we all want? If we can dismiss the cynics in us for five minutes, I think we can see all this as very positive steps.


Note on the Kendriya Sarige buses: To see the routes these buses will take, just visit the Bangalore Traffic Information System website.

Note on the Bangalore Traffic Information System / MapUnity : If you have some ideas on how IT / computers can really help traffic, then why you can send these ideas to the MapUnity folks who are doing a kick-ass job. And start/join a carpool while you’re at it – there are just 1676 carpoolers for an IT city of > 50 lakhs! That reminds me of the car vs. bus vs. bicycle photo

In one of my previous thoughts, I had mentioned about a website called “Stack Overflow” in passing.

I’m surprised that many people do not know or use this resource and community. Just a brief search over there would answer so many questions that programmers have.

For example, there is a suggestion on my skribit page:

“how to give back to the open source community”?

And this question has 20 votes!

I wonder why this question to me, then I remembered this suggestion popped up soon after I wrote “Why use Creative Commons license?” where I had written “The book was intended to be a contribution back to the open source community. We constantly keep taking and taking – whether it is using Linux, Vim, Firefox, or countless other software, so it felt great to be useful to the community in return.”

I guess I had it coming.

First of all, I would say that the best place to actually learn such a topic would be another book (I bet you saw that one coming!) called Producing Open Source Software by Karl Fogel (which is itself an open source book) to understand how an open source project works right from the technical infrastructure to the social and political infrastructure, how to communicate, and so on. And finally, the chapter on Volunteers explains the different kinds of volunteers that are helpful to an open source project which indirectly means that those who are interested can participate in the projects in one of those roles => You’re giving back to the open source community!

But perhaps there are better suggestions in this discussion on Stack Overflow when somebody asked, duh, How to get involved in an open source project?

Someone also posted another skribit suggestion asking:

hi, can u give me a link on examples with python or projects in python book i am a beginner

Guess what? I already answered that in a discussion at Stack Overflow.

The answer is that there are two projects – the “Programming Language Examples Alike Cookbook” project and the Rosetta Code project which lists vast numbers of example programs in multiple programming languages.

Again, the person could have found this answer already by a simple search on the Stack Overflow website.

For some of the programming queries I had, I didn’t know whom to ask. There used to be an internal algorithms-discuss mailing list when I was at Yahoo!, but whom do I turn to now? The answer again was “Stack Overflow” (which at that time was yet to be launched, so I was waiting in anticipation):

How to convert floats to human-readable fractions?

Let’s say we have 0.33, we need to output “1/3”.
If we have “0.4”, we need to output “2/5”.

The idea is to make it human-readable to make the user understand “x parts out of y” as a better way of understanding data.

I know that percentages is a good substitute but I was wondering if there was a simple way to do this?

And someone nicknamed “Epsilon” pointed to me to a brilliantly simple algorithm by David Eppstein which exactly answers this question.

# Usage: ./frap <fraction> <maximum denominator>

$ ./frap 0.33 10
1/3, error = -3.333333e-03
3/10, error = 3.000000e-02

$ ./frap 0.2342 100
11/47, error = 1.574468e-04
15/64, error = -1.750000e-04

Isn’t that amazing? Both the algorithm and the community at Stack Overflow.

If you want to know why Stack Overflow works so well, there is a discussion on that, at Stack Overflow you might want to read :-)

A big question that keeps coming up for an attention-deficit person like me is “How do you get into the flow?”

There are two things that work for me and I find them at loggerheads against each other. The problem is that it has been difficult to stick to either of them.

One is called being a night-owl, the other is called the MIT factor.

I love to work late nights. Life is completely undisturbed, you’re not going to get phone calls, there are no noises, nobody’s expecting email replies from you, nobody around to disturb you. All good.

But being nocturnal ain’t easy. Your whole life is thrown off-balance as well as your body’s natural cycle. Yet some of the best hackers I know are night-owls. They hack away their code and leave the rest to management. I’m not sure that’s a viable option for us in a startup where we do everything including working with many partner companies. Besides, I don’t wish it to go to such depths of imbalance, for example, I want to maintain my regular running but it is not possible when you wake up late. And running in the evenings on Bengaluru roads is defined as insanity. The struggle is productivity/flow vs. life balance.

The second is called “The MIT Factor.” Do the Most Important Task first thing in the morning. It’s that simple. Don’t think about what’s ahead in the day, don’t think about what bills are pending, don’t think about planning to reach office on time (just have a fixed deadline when you have to start getting ready and think no more about it). Just switch on your computer or take out your pen and paper as soon as you wake up and start working on it. The important thing is Don’t think. Just start working on it.

The problem with the second option is that if you don’t wake up early, you again end up in the daily grind where you may not get focus. And you need to have the discipline to immediately start working. Whatever you do at the start of the day sets the mood for the rest of the day. For example, you check email first thing in the morning? You’ll tend to do the same activity for the rest of the day.

The bottom line is I think there is a psychological concept where you have to load the entire problem, the entire domain on what you’re working on into your head and that takes time, say 15-20 minutes and then you suddenly start solving problems. But if you subconsciously know that you’ll get disturbed any time in those 15-20 minutes, the brain almost gives up and doesn’t think it’s worth putting in that investment to get into the flow if it is going to ultimately get disturbed. Is this true? I have no idea, just a theory that I’m beginning to believe (I can’t remember if I read this somewhere or just an opinion I’m forming for myself).

I wonder how other people approach this concept of “getting into the zone.”

Further reading: