Agilo

About the author

Agilo = Akeel Ali = Agilowen = akeelali.com = etc.

The Story of Hacker CS (Part 2)

Blog 0 comments

Continued from Part 1.

Then, as we were nearing the summer, I was faced with a dilemma: either get an internship or work on my own projects. I had collected so many ideas during my school term (that I send to my evernote db with an #idea tag when inspiration strikes), that I really didn’t know which way to go. After some deliberation, I thought I’ll go down the projects path, and in order to prevent any regret from arising in the future, I was to take 2 intensive summer courses to move ahead in my cs minor. The day I was done with my last exam in May 2011, I started full steam on my personal projects. I had many things to ramp up on to bring my ideas to fruition.

My first idea was a framework aggregating all the book quotes I’ve been collecting from my readings since 2009. I wanted to create a way to allow me to remind myself of these memorable passages, and to share them with the world. But I had problem. I had never done serious web development before. I thus spent about two weeks ramping up on ROR by, among other things, completing the hands on tutorial in Agile Web Development with Rails (which walks you through the implementation of an online store) and tinkering with Ruby. Two weeks later, I was wiring my framework, and not too long after, the Wisbit app was born.

I look back fondly on this project even though it didn’t get the traction I was hoping it’d get. In fact, it is this very fact that makes me realize how great of a learning experience it was. Besides the technical knowledge gained, I learned that it is of utmost import to ascertain a market before building anything. Ironically, I had previously written a piece about the importance for an independent software developer to set their priorities right: Market->Marketing->Aesthetics->Functionality. If my goal was to indeed get traction, then I had committed the capital mistake of focusing on functionality before gauging the market. Nonetheless, I still use the Wisbit app today to refresh my memory as to the great content of certain books I’ve read.

I had forgotten to mention something. Even after the end of my “Intro to CS” course, I carried over my habit of making videos to my summer readings. I would read a chapter in a book about something neat in CS (mainly challenges), and I would make a video about it. Then at some point in the summer, in the midst of my courses and learning endeavours, I decided to “capitalize” on the work I had already done (by that time I had a number of videos covering many topics in CS).  I was going to build an app that would allow people to follow their progress in completing the CS videos.  But I wasn’t going to make my earlier mistake. My plans were to ensure that there were at least two or three dozen people interested in the idea before I move on to implementation. So I setup a landing page explaining my idea (helping myself to a themeforest template), and put it up on Hacker News to get their feedback (which I find to be the most supportive, yet bluntly sincere feedback one could get).

The response was phenomenal. Little did I know that I had tapped into a market that has been hungering for a long time. Despite having nothing to show for my videos on the page (except for the keeners who took the time to dig further to uncover my work), people readily subscribed, tweeted and liked. It seemed clear to me then that the online field of education (especially in relation to topics that touch on programming) is one with great potential today. In fact, just recently, we heard of Codecademy’s recent foray into that market, and how viral they went, racking up 200k users in 72 hours (really looking forward to more of their lessons, especially advanced ones). The niche I was targeting was slightly different (computer science as opposed to sheer programming), but it still got me more interest than I had ever anticipated.

Now that I had confirmed that there was indeed a demand for the idea, I got to work and built hackercs.com as my first Django app. I already knew Python, so I quickly got to reading Django documentation (which, incidently, seems scarcer than ROR’s but I’ll leave that to another post) and worked on my app in parallel. I adopted a simple strategy to face that project which appeared to be more daunting than it really was: write down all the specs I’d like to eventually have, order them by priority, start with the basics, get something out, and then add features/fix bugs at my own pace.

I spent about 3 weeks designing and writing it up, and it’s been live for about a month already. I realize I have much to learn before my videos can reach the quality of the Khan Academy, and I’m always looking for suggestions for improvement (app-wise and video-wise). But my passion to make those videos has never abated along the way, and I really encourage anyone who feels they have something to offer in that field to get involved. There are countless opportunities arising, and if you feel that none of them suits your inclinations, it appears to be quite easy to establish yourself in that market (if an EE student can do it, I think many others can).

Right now, I’m winding down and getting ready for my upcoming and final school term at McGill (and applying to jobs along the way). I’m hoping to take two more CS courses to wrap up my minor, and that’ll be more fodder for videos on Hacker CS (expect more advanced videos on data structures, algorithms and more).

Your input (of all kind) has been extremely valuable to me, and I feel that I owe much of my inspiration to the great community at Hacker News (had it not been for their encouragements with my first post, this wouldn’t have panned out). I realize I’m still a novice in this field, but I hope that my passion will carry me to greater heights with Hacker CS. If there’s anything to take away from this, then it is that the time well spent searching for your calling and its intersection with the needs of people is really worth the investment.

Follow Hacker CS on twitter

The Story of Hacker CS (Part 1)

Blog 0 comments
The story of Hacker CS, like the story of many projects, starts with a passion. In this case, it was the passion that I had for computer science. I hope it’ll serve to show you that when you find what you truly love to do, excellence and achievement will naturally flow from there. There’s a lot to my background that leads to the facts outlined in the following paragraphs, but I’m starting from my work experience at Research in Motion (RIM) as a software developer because I feel that this is where the seed was originally sowed.

Hacker CS

Current Projects 0 comments

I’ve been making computer science video tutorials ever since I’ve fallen in love with the field of CS. In the summer of 2011, I decided to put up a landing page advertising an idea I had in mind that I dubbed “The Khan Academy of Computer Science”. You can see the video I posted at the time: http://www.youtube.com/watch?v=MRTVHVVp7K0

The response was phenomenal. I got over 10k hits in a few days, and over 3k subscribers waiting to hear more about the project (which I called Hacker CS). I thus went ahead and built a basic web app to house the project (and learned Django along the way). The result was hackercs.com. I’ve been adding features ever since, and I’m hoping it helps more and more people learn/review their cs knowledge.

(more…)

The Wisbit Web App

Past Projects 0 comments

When you realize the sad, beautiful fact about our inability to absorb even a fraction of the ever increasing corpus of wisdom in our world, and when you hear google’s Eric Schmidt talking about the incredible rate at which data is produced, you’re left wondering how will you ever learn the gist of everything around you.

With the Wisbit web app, you need wonder no more. This application lets you browse the best passages (or wisbits, for wisdom-tidbits) of several books in the order they are deemed important by the crowds. You can have fun “mashing” wisbits to score the passages against one another and learn something new along the way, or jump right into reading wisbits based on their ranking.

Hacker CS

Blog 0 comments

Take charge of your computer science education, and check out Hacker CS: http://hackercs.com/.

WallMinder

Blog 0 comments

For you Windows users wanting to use your desktop wallpaper space for text reminders, I’ll be having a program doing just that: akeelali.com/wallminder/

Increasing the Request URI limit for Apache Server

Blog 0 comments

If you’re using GET to send a very long request to your apache server (a request with a URL exceeding 8190 bytes in length), then you probably got an error along those lines:
Request-URI too large
The requested URL's length exceeds the capacity limit for the server

You may get around this error by increasing the LimitRequestLine parameter in the configurations of your server. The steps to do this are:

  1. Modify /etc/apache2/httpd.conf or /etc/apache/httpd.conf to include the following line
    LimitRequestLine 1000000
    where 1000000 becomes your new URL length limit.
  2. Restart your apache server:apachectl restart

The New Wisbit App

Blog,Wisbits 0 comments

Check it out: wisbit.akeelali.com Make sure to try out a mashing session!

Wisbit Hiatus

Wisbits 0 comments

Posting of wisbits to the site and facebook will be interrupted while I’m working on some updates to the site. I’m hoping to resume within a month with an improved framework.

Wisbit of the Day

Wisbits 0 comments

It is remarkable that there is little or nothing to be remembered written on the subject of getting a living; how to make getting a living not merely honest and honorable, but altogether inviting and glorious; for if getting a living is not so, then living is not. ~ Thoreau

Page 1 of 1612345...10...Last »