Tuesday, May 28, 2013

Ruby on Rails: Here I Come

Quick Update:

After going through a number of basic coding tutorials and taking breaks by working on pencil and paper design-mock-ups, I'm now beginning to go through the Ruby on Rails tutorial which will hopefully teach me enough that I can start building my product. I've just barely gotten through the basic setup - I'm contemplating installing Ubuntu in VirtualBox and coding there to avoid the frustrations that might come from programming in Windows while following an OSX/unix-centric tutorial. I'll make that call tomorrow - now it is finally time to sleep.

Sunday, May 26, 2013

Coding 101

Note: Potentially useful information towards the end - musings at the beginning

Well, here I go. It has been a long time since I have tried to code something. Way back when (about 2002 when I was in 7th grade, I think?) I made a pretty awesome website for Smash Adams, a band composed of  some of my friends in middle school. Anybody remember Macromedia Studio? Between Dreamweaver, Fireworks, and Flash, I was able to create something halfway decent, as my high school art teacher Mr. Rueckert would always say. I will never forget the checked background I made in fireworks (it had all sorts of fun gradients and stuff) or the 2.5 MB "picture gallery" I made in Flash that took an exceptionally long time to load even on the day's state of the art "faster than dsl" cable broadband connections (and let's just forget about 56k which still a veritable force back then). Really, when all was said and done I think I did a pretty good job for an 11 year old. I utilized frames effectively, built a cool navigational menu, and everything was fairly aesthetically pleasing for that time. While Dreamweaver made is so that I did not actually have to code the site, I did have to interface with the html fairly often when I dropped in plug-ins or borrowed free code for different functions so I did have some understanding of how coding worked.

So, where did I go from there? Well, I didn't build facebook. In fact, besides some straightforward websites that I made for later business ventures (some of which were fairly successful and others which were less so). I actually didn't learn much more at all about coding - I discovered automobiles and devoted my free time to wrenching on old cars that I bought/restored/repaired/re-sold. It was perhaps a shame in some ways given that it programmers seem to get paid, on average, much more than automobile mechanics. Still, I have no regrets and continue to love wrenching - I hope that some day I'll be to afford to have the free time to continue to pursue that interest as a hobby (maybe even open my own shop some day).

Fast forward to college in California and I developed a whole new set of interests. Silicon Valley was a potent influence even in sunny SoCal but I quite for the web/mobile startup bug. I think that I was a bit jaded, or perhaps, by the multitude of random and sometimes redundant "startups" that everyone seemed to have back in 2008. I've never been much of a conformist and doing what everyone else was doing was simply of little interest to me. Besides, the world of high finance was alluring. From investment banking to leveraged buyouts (pioneered by alumni of my alma mater), high finance was novel and intriguing to me given that I knew absolutely nil about it prior to college. My roommate of two years, Alex Berman (currently a Product Manager @ Intuit), made a dramatic switch from finance/NY to computer science/Silicon Valley but failed to string me along for the switch (I must give him a lot of credit for teaching me about finance and separately convincing me to overload my credits by taking the history class that drew me into my second college major and passion - history). To sum it all up, I did not take one computer science class and besides the occasional side projects that required a bit of programming (and of course learning LaTeX and stata for math/economics), I did not expand my coding knowledge much behind what I had acquired by age 12, which brings me to the present time.

Well, I now have to develop a product and don't really know how to code. Fortunately I learn fast and the internet has a wealth of information on how to code. I have been flying through lessons on codecademy (codecademy.com) and a trusted friend pointed me the way of codeschool's (codeschool.com) free weekend promo - look below, I knocked out about half of the HTML5 & CSS3 lesson in a little over an hour. So, I'm going to spend every waking hour of tomorrow on codeschool getting through as much as possible and a lot of time on codecademy filling in my basic knowledge gaps. Further, I'm going to push myself to marathon through railstutorial with the hope that by the end I'll be able to do much of the development for my product on my own. Wish me luck - I think I can do this.


P.S. I have been thinking about my UI design and I've been playing around with balsamiq for mock-ups but will also try easel.io before committing to one tool - I will update with my comparison of the two when I get a chance.


Saturday, May 25, 2013

Introduction

Dear Friends, Family, and whoever else may be reading this,

I am writing this blog for three reasons: firstly, I would like to keep people about the progress that I am making on a journey that I am about to undertake; secondly, my experiences with Teach for America have taught me the value of reflection and writing these posts will be a perfect opportunity to stop and breathe amidst what is sure to be a challenging endeavor; and lastly, I need to hold myself accountable for making progress and I think that the watchful eyes of those who believe in me will do just that.

So, by now you are probably wondering what all of this is really about. In about two and a half weeks time, I will have just finished my first year of teaching math at Bryan Adams High School in Dallas as a Teach for America corps member. I was drawn to Teach for America by a yearning for engaging in a form of public service and a strong desire to challenge myself in new ways; TFA has delivered on all counts. Prior to TFA and during and before college, I was involved in a number of entrepreneurial ventures driven by natural tendency to build and create. Now that I finally have confidence in my abilities to teach and lead my students, which I can assure you did not come easily, I am fully ready to do what I do best and start a new project that I will be working on this summer and during my second year of teaching.

I was inspired about a week ago during a conversation I was having with an old friend from high school, Anirudha Balasubramanian, who is currently involved with some exciting projects himself. As I was updating him on my last year our conversation veered between my own experiences and exciting projects that others were working on. At one point, I mentioned some of the pain points of the lesson planning process that all math teachers creating TFA-style lessons face on a day to day basis, which was when it hit me: I could create an app or program that would ease, simplify, and streamline that process.

So here I am - this blog's title is a bit of a misnomer as I would not say that I have a startup of any sort yet. What I have is an idea for how to streamline and ease the lesson planning process for high school math teachers. As of one week ago, I have begun the early stages of designing and building this product and this blog will chronicle that journey. Here you will find my excitements, frustrations, disappointments, successes, and general the general musings I have along the way.

Happy Reading,

Prashant