Reminder: Debian

It’s been a while I’ve contributed to Debian. And when I get bug
reports or mails from people asking on how to use the packages, it
serves as a nice reminder that I should step-up my Debian activity.

So much to do, so less time…

Makefile: Missing separator

Okay, a technical blog post after a long time. I got this error today, so am sharing the solution. I’ll try to keep these coming.

Summary: if you see this error, it mostly means that a line in Makefile is split in multiple lines. Or when the ‘action’ line doesn’t start with a tab character.

If you’re new to Makefiles, here’s a short intro:
Makefiles ease compilations of projects. Generally. But you can use it for any purpose where you need to specify some dependency and an action. Like commit code into a cvs tree. Or delete stale files from a directory if newer files exist.

The syntax of a Makefile goes like this:

target:<space> dep <space> …
<tab> action

Okay, so if you want to achieve target, deps are the dependencies which must be fulfilled before the action is carried out to get the desired result. deps can themselves be targets, or they can be files on disk.

The advantage of using Makefiles is that if target already exists, the action isn’t carried out. Unless the deps are newer than the target.

So if you use this to compile a program and mention a header (.h) file as on of the dependencies, the .c file will be compiled even if the .c wasn’t changed (since it depends on the .h).

This is a very simplistic intro to make and Makefiles. For more information, refer to the info pages or the GNU make manual.

I have used a tool (either standalone or from within emacs) to create Makefiles. Can’t recollect. Will update later when I do.

Inconsistent GMail interface

GMail has recently made a few changes to their ‘standard interface’.
They were pretty annoying at first, as I was used to the older interface. Some against which I have the biggest grudge are renaming of ‘move to trash’ option to ‘delete’. This happened may be a month back. Now they’ve removed the ‘delete’ option from the drop-down list and made it a button instead.

So consider this:

Earlier: Go for the drop-down list and select the 3rd or 4th option in the list that starts with the letter ‘M’.

About a month back: Go for the drop-down list — and there’s no option starting with ‘M’. Suddenly, we see a ‘Delete’ option. Use that.

Now: Go for the drop-down list, don’t find either of the two options
there, then you realize there’s a button sitting next to the drop-down list marked ‘Delete’. Hit it.

And there’s more: I’m using a (pretty) old version of konqueror these days that isn’t supported by the GMail interface. So I get what they call a ‘basic interface’. This interface still has the same option in the drop-down list. To make matters worse, it is still called ‘Move to Trash’. Isn’t that great?

And there’s more. In the ‘basic interface’, they say we won’t have some functionalities. Notably missing from the list are:

– Ability to compose messages in HTML (which this post could’ve benefitted from)

– Auto-saving of drafts

They probably don’t want to implement these features, but please, document them!

Ah, I do like to work on the kernel, but sometimes I feel I can be a better UI person than the ones currently out there. Probably that’s the reason I tried addressing several issues I was facing with software a while back. Now that I (finally) have a (working) computer at home, I hope to get back to AudioLink development.

Broadband service in Bangalore

I’ve been using Tata Indicom (VSNL) Broadband service in Bangalore for the past few months. And I’m really happy with it. I have the Explore Plus 1000 plan, where I get 512kbps speed and 1 GB download limit per month. The speed’s good (I usually get that much download rate).

The best thing about them is the customer service. Any problem I’ve had till now, they’ve followed it up well and rectified the problem within a day in most cases. They also give a call once they’ve rectified the problem.

The downside: they spray cables all over your locality. The DSL cable that comes to my home jumps over trees and electric poles. One of the poles was removed recently, and the Electricity guys (BESCOM) just clipped the cable. (Needless to say, the Tata guys responded within a very short time to get the thing up). However, this just is not good management of the cables. There also is some 30 feet of cable lying wound up on the terrace (for future expansion?). Ah, just hope they get that bit of detail sorted out..

On Debates, Quotes and Good Workflow Management

“Just because you can’t think how it can be done doesn’t mean it’s impossible to do” – Amit Shah.

Happens each time I get into a debate. People, with their limited knowledge, can’t think of ways a particular thing can be done by a particular way.

Slightly off-topic: I’ve finished reading “I Sing the Body Electronic” a few weeks back (review pending). It talks about one of the projects that Microsoft took up. The developers don’t have patience to explain the nitty-gritties of their work to designers. Similarly, designers would have a tough time goading developers to create a “simple” widget that looks like an ellipse instead of a standard circle.

So how do you really explain stuff to people? They don’t open up their minds. They’re just not ready to accept that things could happen in a different way. They just go by what they’ve learnt till now and what their brains are capable of extrapolating.

Seemingly bright people stay in their own nutshells. They impress their colleagues / managers by talking at length about what they know and how things could get done. But hold on, cowboy… Don’t you think it’ll be better if we did things this way? Uh-oh.. how’s that possible? I don’t think it can be done. <Does some research on the ‘net. Finds one or two sentences which of course don’t talk about specifics. Comes back with them as proof. I think we’re over the episode and I’ve made my point. But hey, now we’ll have to start an email debate. Great!>

Engineers are meant to doubt everything they hear and see. I used to do that. But I’ve realized over time that to be communicative, you have to be receptive as well. If you just go around flouting everything that seems impossible to you, hold back. Think about it. No doubt, challenge it. But also give it some credence and consider it could be possible. Will make your life easier because the people involved (at the other end of the argument) will be willing to share more with you just because you’re more receptive.

If you don’t agree to something, people might not tell you things, which means you won’t get to learn new things and you’re out of loop on possibly very important new developments (happening in your own group, perhaps). What’s better is to just nail it down in a second meeting. First meeting, carry points home. Research. Send mail. Research more if there are replies. Second meeting, things are automatically sorted out.

Yeah, get out of the notion that you’ll always be right. And that you’re the first person in the world to think of a particular solution. There are bright minds everywhere. Beside you, in the next building, in next city, the next country, the next continent and so on.. Take credit for what you’ve said. But don’t expect others to not have said / thought of the same thing.

Andrew Morton’s NOT coming to India!

It seems there’ve been a lot of calls that people are getting that are claiming Andrew Morton and Theodore Ts’o are coming to India to deliver talks on the kernel. Sponsors seem to be Novell, NetApp and some other companies.

Well, I confirmed with Andrew that this is a hoax. He’s not touring India, definitely not on the 24th of July, when these presentations are supposed to happen.

Things that made me skeptical of these: no talk anywhere on any of the forums, news sites. The caller couldn’t pronounce Theodore, Robert Love and Nat, Miguel aren’t on the talkers list even though Novell is sponsoring, she kept pestering for any friends that might be interested / in the same industry as I am in, and she kept asking me repeatedly how much industry experience I have.

Turns out, I was talking to Atul in Pune, and he received similar calls. Same agenda, same speakers, same date, just the location was Pune instead of Bangalore. Nice trick these people have come with to lure people into giving out phone numbers.

Rahul‘s suggested one nice solution to dealing with these people: sound very interested in whatever they’re offering, ask them to hold for 5 mins citing “someone’s at the door”, get back, sound very interested again, repeat.

Cool idea, give me a call, someone! I’m looking for low loan interest rates!