Written by Kevin Nguyen, iXperience '14 (Coding), Dartmouth
One of the greatest feelings in the world comes from building something cool that people can use. I arrived at iXperience early June knowing virtually nothing about web app development. Of course, I had spent time building a few sites for fun but I had never dug deep into the vast amount of material out on the web to build my own full-featured app.
Here's my story and what I learned developing my first Ruby on Rails app, Noteminders. Hopefully these lessons will help you.
Figuring out what you need to build is the hardest step. After the first two weeks, one of our TA's, Francois, told me we were gonna build an app in 2 weeks, which terrified the hell of me. Mainly because I had no idea where to start. I suppose it's a natural feeling when you have no experience and have no confidence in what you're doing.
Here were some best practices which helped me generate 20+ ideas:
Session 2 didn't stop at idea generation; we pitched it to each other. Imagine: You're standing in front of a group of 20 people. Your heart's racing. Your knees are shaking and 40 eyeballs are staring at you, waiting expectantly for you to say something awesome.
I didn't bomb the presentation but I felt like there was much I could have improved. Looking back I would have employed these tips, courtesy of Salman Ansari, IX's inaugural head lecturer:
User stories first. Coding second. Repeat that 10 times.
It's super tempting to jump straight into coding but I've experienced enough hair-tugging frustration to know that a week of coding can save you a couple hours of planning.
Once you have a plan and start coding, use some of these tips to boost your productivity and maintain your sanity.
In the end, I think the most important thing isn't to build something that will make you famous or world-changing. It's simply creating. Just because you didn't build something that will change the world doesn't mean your work isn't meaningful.
In fact, if there's one thing you take away from this article it's that it's time for you to be more than just a consumer. Become a creator.
Noteminders is far from finished. There's a lot of functionality that's missing that could improve the app. After returning home, I'll add photo uploads, service integration, text messaging, media queries and a total redesign of the site. I think an iOS app might be handy! Of course, I'm open to feedback. Ping me at vinh.15(at)dartmouth.edu.