Showing posts from December, 2016

On airports and electric vehicles.

Before we even start, let me digress a little. I think there are two kinds of passengers at the airport - either you stand in line at the boarding counter of the gate or you don't, either you stand up as soon as the flight stops or you happily wait for the rest to deplane.

Using electric vehicles in the airport, for official purposes

Now, coming back to the point, I was flying to Delhi from Pune yesterday and noticed that there are a lot of vehicles running around, helping with the day-to-day operations of the airport. For example, small airports have tracktors which I presume are being used to move luggage between the airplane and the terminal. Bigger airports have buses to shuttle people from the airplane to the terminal. There are oil tankers carrying air fuel. There also seem to be a few private 4 seater vehicles, which I presume are used to shuttle the cabin crew to and from the airplane.

Now, coming to the point, what is the carbon footprint of a terminal/airport? I will nee…

On software engineering ethics

This post/video is, IMO, a sister post of the previous one - The video, embedded below, talks about ethics in software design and the IT sector in general.

All of us have seen these so called Dark Patterns on the internet/websites. Watch the video and you'll probably recognize a number of them. Better yet, visit the website : and you'll find more examples which couldn't be covered in the talk. Just watch the talk, I'm not going to give you a summary.

What I want to talk about is the topic of Ethics in the Software Engineering world. Engineering Ethics is a course every student sits through in college. For most it is a formality. And given that now-a-days most college graduates end up working with and actively developing software, it is important to understand and lookout for ethical boundaries that we might be crossing while developing software.

There is another beautiful/haunting a…

On bias at work.

Watching this talk reminded me of the Engineering Ethics course that I had taken back in college (at IIT Madras). And I'm surprised that we weren't taught about bias at the work place.

And all of us are biased. Whether we do it unintentionally doesn't absolve us of wrongdoing. Everyone should make effort to learn about how they might be biased and act on their biases and double check the decisions that are taken, especially when a diverse group of people are involved.

I remember another talk on how Software Engineering ethics. In this day and age when software is integral to everyone's day-to-day life and is integral at our workplace, great scrutiny should be placed on the it, to make sure that it doesn't discriminate or target certain peoples. I'll link that talk at a later time. Until then ...

Radio astronomy on the high seas

What is the best location to place a telescope?

The first answer that comes to people's minds is a mountain top. Ask them why and they might not know but they just might know that most telescopes are on mountain tops, so there must be a good reason there.

Well, in fact there is a reason. Telescopes work better when placed on mountain tops because there's less atmosphere for the telescope to look through, less atmosphere that can smear the images being taken leading to better science.

Actually. There's a small correction. Optical and sub-mm telescopes are best placed on mountain tops. Radio telescopes on the other hand can work just as well when placed at sea level.

Now. Following up to the first question,
What is the best location to place a radio telescope?

Because altitude doesn't matter, the main problem is radio interference. Man-made radio interference is the biggest source of noise to radio telescopes. This is the reason why the JVLA in NA is a designated radio …

On VR gaming

For those of you who don't know, VR stands for Virtual Reality.

VR Gaming is slowly picking up traction, among game developers and aficionados. But. I still think it has a long way to go before it becomes widely adopted as the norm. Also, Gaming/Entertainment isn't where I wished VR was heading but that's where the market seems to be driving it.

Moving on, one of the reasons why I don't see VR gaming pick up anytime soon is because of the complex nature of the setup - there needs to be a large enough space for the person immersed in VR to not come across physical obstacles that would distract the virtual gameplay. The VR headsets themselves are fairly costly.

What I propose is this - a combination of Google Cardboard, a decent phone and bluetooth/wired joysticks.

If you don't know what Google Cardboard is, go here - It's a contraption to convert your phone into a VR device. Xiaomi is coming out with a similar product, which ca…

On programmers.

I just watched this brilliant keynote today. It's a commentary on Programmers and the software development industry/ecosystem as a whole.

I am not going to give you a tl;dr version of the talk because it is a talk that I believe everyone should watch, that everyone should learn from. Instead, I am going to give my own parallel-ish views on programmers and programming.
As pointed out in the talk, there are mythical creatures in the software development industry who are revered as gods. Guido Van Rossum, the creator of Python, was given the title Benevolent Dictator For Life (BDFL). People flock around the creators of popular languages or libraries. They are god-like to most programmers and are treated like gods. By which, I mean to say, we assume they don't have flaws. That they are infallible. That they are perfect.
And alongside this belief in the infallibility of these Gods, we believe that they were born programmers. That programming is something that people are born wit…

Another talk at the local PythonPune meetup

I rehashed the workshop I conducted at SciPy last weekend into a 20-ish minute talk today at the local Python meetup group. I've been following their activities for well over 4 months now and every time it so happens that I'm traveling when they organize the meetup. Every month for the last 4 months. And finally. Finally. Today, there were no conflicts.

It couldn't have happened at a better time either. I already had all of the material because I used the same slides as those I used during the workshop. Ohh, if you don't know, the workshop I conducted was on `Automated Testing using Python`. I talked about the unittest module and the mock module and I briefly mentioned the pytest and nose test runners in passing.

Overall, the talk was well received. A few people came up to ask me about follow up questions, about how mock can actually help with testing a large code base and I tried my best to give them examples. I also talked to a few of the regulars and the organizers…

Scipy India 2016

SciPy India happened during 10-11 Dec 2016 and it was my first SciPy
It was especially fun because after 2 years, I got back in front of people to talk for long-ish periods of time. I guided two workshops, the first on "Automated Testing in Python" and the second on "An introduction to Git and GitHub". I also gave an impromptu lightning talk, on the Trains side-project that I have been working on for sometime now.

The two workshops needed a couple of days of work from my side, as I played around with the overall outline of the workshops and made the specific slides I needed. In the end, both of the workshops were well received, from what the audience said to me in person. A few expected both of the talks to be more advanced but I guess I can't make everyone happy.

Personally, it does make sense for me to modify the content and make multiple versions, which would speak to students with varied levels of expertise. Add few slides here. Remove a few slides there. It w…

It's been a while

It's been a while since I last posted something. Life got a little busier over the last couple of months. Rather, I've gotten worse at managing my time. Weekends were spent traveling or with friends. Weekdays were spent hunched over and typing, mostly words that made sense to a computer but a few that make sense to most people. While I have been working on a few things on the side, I haven't written about the progress I'm making.

A weird kind of truth has been dawning on me. I had set a high bar for myself and prevented myself from posting a draft I didn't consider to be finished. Or if it didn't convey anything new or exciting. Mostly because I was asking my self the question "Why would anyone want to read what I write?". And I've come to an interesting answer. Most people don't want to read my blog. The few who have read something I wrote wouldn't want to read the rest of the things I have written. And the fraction of those few who'd …