Student Blogs - Carnegie Mellon Silicon Valley - Carnegie Mellon University

Student Blogs

MS in Software Engineering, Technical Track Blog

Wondering if a Carnegie Mellon degree is right for you? Read about our students' experiences through the MS in Software Engineering, Technical Track program.

Rahul is a full-time MS Software Engineering, Technical Track student. He loves traveling, trekking, swimming and is a complete movie buff.
Anthony is a 2nd year part time student in the MS Software Engineering, Technical track program and works at OSIsoft as a Software Engineer. He loves spending time with his family, hiking, biking, gardening, cooking, and sometimes photography.
Suma is an alumna of the MS Software Engineering, Technical Track program. A Mechanical Engineering undergrad, she loves writing and is passionate about music, shopping and dogs.
Minh is a Software Design Engineer at Microsoft and alumnus of the MS Software Engineering program. He is also a Vietnamese community activist, a cat-lover and passionate fan of film music.
Nick is a Software Engineer at Google and a first-year grad student at Carnegie Mellon Silicon Valley. He loves hiking, gaming, and both really extremely good and extremely bad movies.

Thursday, January 31, 2008

Construction II – Building a Thick Client for the Mobile Phone


I started the year by missing school. Great.

While the majority of all Class of 2008 students in both tech and development tracks gathered on campus for the “Second Gathering” earlier this month, I was down in Kuala Lumpur, Malaysia for a different conference, and regretfully was not able to attend the once-per-year event to personally meet all the students in our program again. If you wanna read up on what went on, Rom has a good summary on his development track blog here.

I flew back from Malaysia and missed the first class meeting as well, but I was informed by my team that we will be shifting our focus this semester on building a thick client application for the mobile phone. In particular, we will be using J2ME to implement some application that uses the audio/video, GPS, and Bluetooth capabilities of the Nokia N95 cellphone. For those who don’t know (and that included me just a few months ago), the Nokia N95 is one of those extremely fancy and expensive phones that has all these technical gizmos and gadgets in it. Besides having a very clumsy and unfriendly user interface, it’s a very powerful device, so coding an application against it will probably be an interesting activity.

Just like every year, I find myself stepping out of comfort zones yet again. When I was finally starting to getting used to coding Ruby on Rails code with NetBeans to create websites, I now have to learn how to program in J2ME using EasyEclipse and transfer, deploy and debug the code on a physical mobile phone. Some of our students don’t appreciate the constant change in this class, and I have mixed feelings about it too. For one, I do love the idea of learning new things and new technologies. If you don’t embrace change in Silicon Valley, you’re as old-school as of 23 minutes ago, so I welcomed the opportunity to have learned Ruby on Rails last year, as it turned out to be a good thing, because I am passionate about web development. However, with J2ME, it’s a slight different story. I am not really gung-ho about mobile development. While I think mobile phone industry is about to skyrocket in the next years as the United States is slowly catching up with the Asian markets, I feel that it sucks to be a mobile developer, given the harsh restrictions on UI and hardware—and that’s going to be the challenge this semester.

Our team has put together a proposal for an application that allows you to take pictures on a holiday trip, annotate them with captions and audio logs and play them all back as a slideshow directly from your phone. Our adjunct professor this year is an employee of Nokia, so her expertise in mobile development will hopefully help us getting up to speed with this type of development. So far, I think that J2ME development really sucks compared to .NET Compact Framework development for PocketPC, but oh-oh, I just opened up a can of worms. Let the flames start.

posted by Minh Nguyen @ 12:22 PM  0 comments

Friday, January 25, 2008

Once More unto the Breach


Well, a new semester has just begun here (well, it began two weeks ago, but close enough.) The course for this semester is Requirements Engineering, which is gathering and deciding on requirements for a product. In our case, this is a movie recommender. Imagine Netflix meets RottenTomatoes meets Amazon (or something close).


I'm on a team with one of the same teammates as last semester, a coworker at Google, and a student in Saudi Arabia (complete with an 11 hour time difference). For at least the first few weeks, I'm the group leader, which is more challenging than I'd thought initially. Still, I think the team overall is pretty solid, and we've had effective meetings so far. I'm not quite sure how my Saudi Arabian teammate manages to wake up early for some of the meetings, but he has definitely been a key member of the group. We're gathering our own ideas for the product now and will soon be conducting user interviews to refine and obtain even more potential requirements for the final product.

The culmination of the work for the first half-semester will be a rough UI design, as well as a comprehensive list of user stories and scenarios that help to define the project. I'm excited as this is not anything I've ever done before. I hope it gives me a great deal of new insight on a reasonable way to gather requirements when I need to do it professionally.

So, while my school routine is back up and running, my job is giving me even more to do, and some kind of demolition is occurring at 7:30 AM underneath the apartment where I sleep, I think I can keep things under control (and the demolitions should be done by this weekend) and am looking forward to getting this semester underway.

posted by Nick Lynn @ 9:58 AM  0 comments

Previous Posts Archives