Home

"Quotation, n: The act of repeating erroneously the words of another."

- Ambrose Bierce


Hi, and welcome to my corner of the Web. My name is Avishek Sen Gupta. Among other things, I am a software developer. Other interests include, but are not limited to, drawing (traditional and digital), writing (prose and poetry), machine intelligence and robotics. I'm currently employed by ThoughtWorks. This site provides a peep into the (hopefully interesting) stuff that I do.

Come in and make yourself at home. You're invited !


Latest News


A small tidbit...
Sat Jul 08 11:30:00 PDT 2006

The current system I‘m working with needs to export some data to a third-party system, which expects data in a table format. These files have a weird extension, but they are simple .dbf files and can be opened in Foxpro. Now, to isolate the core system from knowledge of all this export code, the team wrote an anti-corruption layer which transforms the business objects into record objects. These record objects are objects which are more suited to the domain of the third party application, and are then transformed out into ‘row objects‘. These row objects are simple objects with members corresponding to the columns of the .dbf file spec.

When we began unit testing these row objects, we did the simplest thing possible then: assert on the contents of the fields of these row objects.
In time, as specs became more complicated, the unit tests grew huge. For example, 16 rows with 32 columns each translated into 512 asserts.

Recently, we did away with all that. Instead of asserting separately, we read in the contents of the expected .dbf file (which the testers provide); since the column names of the file match exactly with the fields of the row objects, we do a bit of reflection to match them up and assert them correspondingly, instead of manually specifying columns. The result: we don‘t write those huge tests any more. Only the name of the expected .dbf file is specified; pretty nice, I‘d say.



Link


The diversions of a bored dude
Sun Jul 02 08:25:56 PDT 2006

Couldn't find a more imaginative title: hell, why'd even try to imagine one, this is LJ, for crying out loud. Anyway, I have woken up from a deep slumber after all these months in Vancouver; nothing new really, even my muscles sympathised. And I realised that I *was* bored. So, what to do?

* Swordfighting: They have classes on Richards Street, and I'm currently learning duelling using the rapier. They teach longswords, staves and wrestling too, and after the first day, I couldn't feel my arms and legs. It's gotten easier, more fun, and it gives me an excuse to practise at home with my lightsaber :-D

* Rollerblading: Classes under the SkyTrain tracks, on the cool morning grass near Sceience World. I wobbled horribly, but it's steadier now, and all I need is practice. And of course, practice is *everything* :-)

*Indoor wall climbing: Have the first class scheduled this coming Tuesday and it should rule. Yay, Spiderman, Spiderman...

Other than that, work goes on pretty well, I'm thinking of taking Kendo classes, but the chief consideration is fitting them in this suddenly busy schedule I've created for myself.

Good.

Link


My head...ooof!
Sun May 28 02:55:40 PDT 2006

I've never really drawn buildings - which is to say that I never paid any attention to them in my drawings. It was, at best, a placeholder. I lavished more attention on faces and characters.
I decided to draw the interior of the Chartres Cathedral tonight. Googled for the elevation plan of the cathedral nave and used the engineering drawing as a guide.
And now, my head *hurts*. Aaargh. My jaw hurts, I don't know why. It requires tons of patience than drawing a face like this from imagination. But maybe that's because I practise faces more. Anyway, here's the result. It's not very good, and I wasn't even aiming to be accurate, but I think I'll practise buildings a bit more. The results seem rewarding. Now, about that headache...

Link