Posts

Gravitational Slingshots

Tuesday, Jan 31, 2017 | 3 min read
Categories: Physics,
Tags: Gravity, Classical Mechanics,
Note: This article was originally published on astroibrahim on Apr 10, 2013. I always wondered why doesn’t the sun slow space probes down when they are leaving the Earth for outer planets. Isn’t there a risk that the probe might change its trajectory and fall into the sun? There is. You see, the more distant the space probe gets from the Sun, the more potential energy it gains. However, energy must be conserved at all costs.

Testing code with sensitive data

Tuesday, Sep 6, 2016 | 2 min read
Categories: Developer,
Tags: Git, Powershell, Testing,

I recently renewed work on my first ever github project. Over the course of a whole year when that project was dormant, I’d learned some new tricks. I now try to focus on writing tests for my projects. It is immensely convenient when I add features here  and there and need to check the whole code for errors.

Anyways, my project requires API keys to imgur.com. However I do not want to hard-code them into my test.py file. But I also do not want to manually provide keys every time I run tests. So what do I do?

A case study in choosing algorithms

Sunday, Aug 14, 2016 | 3 min read
Categories: Engineering, Physics,
Tags: Algorithms,

This past year, I have been crunching data from dark matter simulations. Data size can get pretty large when it comes to scientific computing. As I write this post, I have a script running on 3.8 TB (that’s right – 3,700 gigabytes) of cosmic particles. At these levels one starts thinking about parallelizing computations. And therein lay my dilemma and a soon to be learned lesson.

Markov Chains – Random Text Generation

Friday, Apr 29, 2016 | 3 min read
Categories: Machine Learning,
Tags: C++, Hpc, Markov,

This semester I am taking a course in High Performance Computing where I get to work with multi-core systems like computing clusters and graphics cards. For my final project I decided to develop a random text generator and see if I could speed it up.

A popular method of generating random text (that is grammatically correct) is using Markov chains.

Starting Android Development

Saturday, Mar 5, 2016 | 2 min read
Categories: Personal,
Tags: Android, Mobile-Dev,

I have always been fascinated with mobile app development. Over the last couple of years in college, I made a few attempts to get started with Android applications. I watched tutorial series, reading blogs, attending introductory workshops. Nope. Nothing seemed to stick. What was wrong?

Developing with C/C++ on console

Saturday, Jan 30, 2016 | 1 min read
Categories: Developer,
Tags: Bash, C/C++, Linux,

I am taking a High Performance Computing course this semester. For that we have to ssh into the university’s computing cluster. The interface is entirely console based. Now that might seem awesome at first: typing away commands like a “hacker”. And it is awesome. But after a while it gets tiring, particularly when I am writing code.

Talking With Satellites

Wednesday, Oct 14, 2015 | 1 min read
Categories: Engineering, Personal,
This year I am leading a senior design team in developing a software defined radio that can talk with a satellite that Vanderbilt just launched. Compared to a normal radio, an SDR has most of the signal processing functions implemented virtually. This means that it can change its operation on the fly. An interesting application of SDRs is cognitive radio: that is, radios communicating with other radios in their vicinity and adjusting their frequencies to maximize their use of the bandwidth.

Making a simple web app blindfolded, and with both arms tied…

Monday, Sep 21, 2015 | 1 min read
Categories: Developer,
Tags: Javascript, Web App, Web Development,

Over the last weekend, I was looking to brush up my web-dev skills (what little I had learned on the side). I decided to make a simple web app for my residents to use (I am a Resident Advisor).

Objective: Display tips, event news, free food notifications provided regularly by RAs and faculty to residents on a website.

Parsing websites on a budget

Thursday, Jul 23, 2015 | 2 min read
Categories: Developer,
Tags: Javascript, Web App, Web Development, Web Scraping, YQL,

Say you are an up and coming web developer. You want to make a web app that can access content on other sites. Perhaps you want to make a word cloud from a news article on BBC. Or you want to see what videos a site has embedded within itself. You could achieve that by doing some server side voodoo. The ‘standard’ way to go about it would be to download the site to your server and then serve its contents to your webpage.  But that would require two things: