Showing posts from 2013

My Experiments with the PICAXE 08M2+

I generally prefer to do things the hard way. For example, you can either microwave a frozen dinner or cook from scratch. The microwave option is a good backup plan, but cooking from scratch has far too many advantages, as I outlined in a recent blog post on the do-it-yourself way of life.

In the electronics and robotics world, the analogy of cooking from scratch is to build circuits using a bare bones micro-controller chip (e.g. the PICAXE) rather than a fancy board (e.g. the Arduino). Therefore, once I get a circuit working with the packaged Arduino approach (e.g. this robot I built recently), I usually try to replicate the circuit using more basic components like the PICAXE.

My decision to consider the PICAXE was influenced by Charles Platt's coverage of it in his awesome book Make: Electronics. But essentially, I am a minimalist and I want to see how much I can get done with a bare bones chip rather than a bulky board-based micro-controller like the Arduino. My current favori…

Adriano, the Arduino Robot | Step 1 (Basic Operation)

I started this series of projects to teach my kids (Ria and Ronak) about programming, electronics, mechanics and robotics. Although this design has been informed by numerous books, videos and articles (see references below), the final design is my own (not kit-based, except for the chassis, or copied verbatim from anywhere) and I will have to take responsibility for any flaws and imperfections. However, as you can see from this video I uploaded to YouTube, it does work reasonably well for its intended goal.

Component List

Arduino Uno. I plan to switch to the smaller Arduino Nano to see whether the Uno is overkill for this project. Subsequently, I also plan to see how far I can get with the ATtiny85V, PICaxe 08M2 and any other smaller micro-controllers worth trying.Breadboard. I know how to solder (and you should, too), but it's not much fun at all and risks burning out components. Breadboards are great for prototyping, making modifications on the fly, and building projects incremen…

Learning to Fly: Peanut Butter, Sardines, and Turbans

During my most recent visit to New Delhi my cousin's wife re-introduced me to an old classmate, of whom I had only vague recollections. She was able to convince me that we had been classmates. She recalled that I used to bring peanut butter and honey sandwiches to school for recess. Of course, I had purged that little detail of my school days, along with all of the other embarrassments that caused me not to blend in. Nobody else brought peanut butter sandwiches to school for lunch. This was New Delhi, not Canada (the land of Winnie the Pooh), where I was born and raised for the first three years of my life and where I undoubtedly developed a taste for peanut butter sandwiches.

The school I attended was Modern School (initially the Humayun Road branch and later the Vasant Vihar branch, aka MSVV). This is a rather Westernized and hip private school. And yet no one except me brought peanut butter sandwiches to school. To add to my inability to blend in, unlike Guru Harkrishan Public S…

Sikhs as a Firewall for Hate Crime

By the time this reaches you, you would likely already have heard about the heinous hate crime attack on a Sikh professor from Columbia University in New York. All too predictably, the attackers referred to the victim as "Osama" and "terrorist".

In building construction, a firewall is built as a barrier to prevent a fire in one part of the building from spreading through the rest of the building.

Building on the analogy (no pun), in Web or Internet technology, which is where I earn my living, a firewall is used as a first line of defense to block unauthorized access from sources that wish to perpetuate attacks of various kinds on a Web site.

I have borrowed the term "firewall" to describe the role Sikhs have played, from their origin leading up to current times.

The Sikh religion was formed, in some part, due to the dire need to protect India's predominant Hindus against unrelenting attacks from Muslim invaders from Mongolia, Persia, and beyond.

Fast …

Learning to Fly: Learning to Swim

(This is the first of a series of posts I intend to write in order to document my life. The series is called "Learning to Fly". This post is called "Learning to Swim". The posts in this series will be chronologically random, a stream of consciousness, if you will -- typically, thoughts triggered by an event.)

I can't recall the last time I had to work on a Saturday. But taking the kids to swim is not work. It's a joy to see kids learn, and grow. I remember learning to swim at the swimming pool at IIT Delhi (India). My father, who was a professor at IIT, used to stress that it was an "Olympics size" pool. I have no reason to doubt that it was. IITD had awesome facilities. And I am lucky to have grown up on campus.

I remember my father doing length-wise laps in the pool. He was a good swimmer. (My mother's strokes were a bit more labored. She could only manage breadth-wise laps.) My father used to tell us that a good swimmer causes little or no…

Are JSP tag libraries still relevant?

Dump JSP tag libraries and switch to JSON.

I often see development teams using JSP tag libraries when they shouldn't be. I wrote this post to explain why it's best to view JSP tag libraries as relics of the past.

Most non-trivial web applications store data in a database on the server side. These applications need mechanisms that allow the clients (web browsers) and servers (e.g. Java application servers) to exchange data. Typically, either a) data needs to be displayed for the user (so, the client sends the look up criteria to the server and the server responds with the relevant data) or b) the user changes data in the browser and the client needs to submit the data modification to the server for processing and/or permanent storage.

Until recently, most Java web applications have used JSP tag libraries as a client-side mechanism to extract data out of Java objects (JavaBeans) passed back and forth between clients (web browsers) and servers as part of the JSP/servlet paradigm off…

Ode To The Handyman

I recently posted a list of DIY projects on Facebook and a friend responded to suggest that I hire a handyman. So, I wrote this response to explain why I prefer the DIY route.

Understand. I like to understand how things work. Fixing things is a great way of achieving an appreciation for how things work, what causes them to stop working, and how to build them better and use them the right way so that they last longer. (While growing up, one of my father's books The Way Things Work was among my favorites. Hard to believe, but this 1967 classic is apparently still in print!)

Delegate With Competence. I like to know how something is done before I delegate it. That way I can provide competent supervision and am less likely to be taken for a ride.

Reduce Waste. Once you develop a handyman mentality, you tend to fix things rather than throw them away. We have become a throwaway society that creates far too much trash. So, I am always looking for ways to reduce my garbage footprint.

Save Tim…

How to Select and Install Shelves

The kitchen in my house has a closeted area for laundry, where the washer and dryer take up the floor space. But there's 50 square feet (5' wide x 4' high x 2.5' deep) of space above the washer and dryer that was going unused. So, I started researching shelving systems. I began online at Home Depot, Lowe's, etc. But this isn't something you can do online unless you've worked with that exact system previously and know exactly what to order. After speaking with someone at the local Home Depot, I ended up going with a ClosetMaid ShelfTrack system that has several parts that all need to be coordinated carefully to get a working system. That is the system I will describe in detail in this post. But I'll also allude to other options.

First, note that this is a system especially suited for situations like mine where you're working exclusively within the top half of the space between the ceiling and the floor. Here is the component list for the ClosetMaid S…

Understanding Indian Classical Music

I've recently developed a deeper interest in appreciating and understanding Indian classical music, of which there are two major forms -- South Indian (Carnatic) and North Indian (Hindustani). A brief exploration is sufficient to realize that this is a very complex discipline indeed, which explains why ustads (maestros) aren't made overnight but are the result of a lifelong pursuit of classical music as a passion and career.

By the way, the masters whom I admire most are the ones who leverage their classical foundation to deliver successful popular music. There a many examples, but the ones I am most familiar with include Jagjit Singh, Daler Mehndi, Sonu Nigam, and Shankar Mahadevan (of Shankar-Ehsaan-Loy).

In this blog post I merely hope to document the major concepts and bookmark the links to which I hope to return when the next wave of inspiration strikes me to develop my amateurish understanding to the next level.

I would ask serious students to consider the Shankar Mahad…