<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1316178326400830671</id><updated>2011-12-05T18:55:06.530-08:00</updated><title type='text'>MS in Software Engineering, Technical Track Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>41</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1451104696487773902</id><published>2010-10-07T10:52:00.000-07:00</published><updated>2010-10-14T07:02:15.777-07:00</updated><title type='text'>Introducing Rahul Baxi</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_IJ3V60Nvg38/TLcNVQ1huzI/AAAAAAAAALI/QKV54Z8JI18/s1600/baxi.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 100px; height: 100px;" src="http://4.bp.blogspot.com/_IJ3V60Nvg38/TLcNVQ1huzI/AAAAAAAAALI/QKV54Z8JI18/s200/baxi.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5527901726568463154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Hi, I am Rahul Baxi, a full time MS SE-Technical track student. I joined CMU in Aug 2010 and as I am writing this blog I am halfway through my first quarter.&lt;span style=""&gt;   &lt;/span&gt;Yes, this program is very fast paced and gives no time to settle down. But at the same time it makes you “industry ready” to face the challenges of a very dynamic IT world.&lt;span style=""&gt;  &lt;/span&gt;Before I dig further into the details of the MS in SE program, let me give you a quick introduction of myself.&lt;/p&gt;  &lt;p&gt;I am from India where I did my Bachelors in Information Technology Engineering from Nirma University and then worked with Infosys Technologies Ltd. as a Software Engineer for two years. I am an avid traveler, love to hike, swim and trek, watch movies and listen to music.&lt;span style=""&gt;  &lt;/span&gt;My areas of interests are Web development, network programming, embedded systems and application programming.&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;Well, that’s pretty much about me and I feel I should get this topic back to where I started first.&lt;/p&gt;    &lt;p&gt;The MS in SE is a 1-year program, which is divided into three semesters, each lasting around four months.&lt;span style=""&gt;  &lt;/span&gt;The program is well designed with robust coursework that would aid students in honing their skills in Software Engineering. The faculty and other staff are very friendly and eager to help.&lt;span style=""&gt;   &lt;/span&gt;Moreover, CMU invites experts from the industry to deliver seminars on latest technology trends.&lt;span style=""&gt;  &lt;/span&gt;In all, it’s an extremely exuberant education environment.&lt;/p&gt;  &lt;p&gt;I had quite an exciting summer as I had left my job and was at home doing nothing for almost a month.&lt;span style=""&gt;  &lt;/span&gt;I visited family and friends during this break and then set off to USA.&lt;span style=""&gt;  &lt;/span&gt;I came to New York just a week before my orientation program. I teamed up with one of my friends for a cross-country road trip from Georgia to California. With a month full of rest and enjoyment I was all set for starting my masters program.&lt;/p&gt;  &lt;p&gt;My first semester at CMU started with a fun filled yet informative four days orientation program wherein I got a brief introduction of the program and the coursework from different faculty members and also I got the opportunity to meet new people. Classes commenced immediately after the orientation program with assignments due on the same weekend. Within the next two weeks, I had my hands laid on an entirely new technology.&lt;span style=""&gt;  &lt;/span&gt;With regular team meetings and collaborating work with team members on weekly deliverables, I never felt like I’ve enrolled in a MS program but it gave me the feeling of working in a software company.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1451104696487773902?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1451104696487773902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1451104696487773902' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1451104696487773902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1451104696487773902'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2010/10/introducing-rahul-baxi.html' title='Introducing Rahul Baxi'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_IJ3V60Nvg38/TLcNVQ1huzI/AAAAAAAAALI/QKV54Z8JI18/s72-c/baxi.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1488995025449175924</id><published>2010-01-12T10:29:00.000-08:00</published><updated>2010-01-12T10:31:41.837-08:00</updated><title type='text'>A Refreshing Vacation - Now Back to School!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gD2CrEUfhjw/S0y_sX4FGuI/AAAAAAAAABk/zRbxoxpMp3s/s1600-h/AnthonyTangsmaller.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 115px; height: 128px;" src="http://1.bp.blogspot.com/_gD2CrEUfhjw/S0y_sX4FGuI/AAAAAAAAABk/zRbxoxpMp3s/s200/AnthonyTangsmaller.JPG" alt="" id="BLOGGER_PHOTO_ID_5425922420118985442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We are all back from our semester break.  I say break because most of us in the part time program also work full time -- some of us probably didn't take any vacation (I was fortunate enough to take two weeks off). Nevertheless, it was great to have some time off to catch up on work, to run procrastinated errands, and of course, rest.&lt;br /&gt;&lt;br /&gt;I took the Christmas weekend to drive up north with my family to see the Humboldt County Redwoods... it rained on the days I was there. However, seeing these enormous giants that stood still and haven't changed for decades and centuries was amazing. I guess it provides some balance to the life of the computer scientist, in which technology changes very rapidly.&lt;br /&gt;&lt;br /&gt;Carnegie Mellon's Winter break is roughly around four weeks. As I recall, the Spring and Summer breaks are two weeks shorter. This worries me a little bit, but maybe we'll be so busy there will be no time to worry. It'll be full steam ahead starting from here.&lt;br /&gt;&lt;br /&gt;It's the start of the new semester! For us in the part time Software Engineering Masters 2011 program, we are taking "Software Requirements". I don't have much to say about the class now, but in a few weeks, when the course work really starts taking off, I'll write more. Thanks for reading!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1488995025449175924?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1488995025449175924/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1488995025449175924' title='46 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1488995025449175924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1488995025449175924'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2010/01/refreshing-vacation-now-back-to-school.html' title='A Refreshing Vacation - Now Back to School!'/><author><name>Anthony Tang</name><uri>http://www.blogger.com/profile/01546510397554510213</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gD2CrEUfhjw/S0y_sX4FGuI/AAAAAAAAABk/zRbxoxpMp3s/s72-c/AnthonyTangsmaller.JPG' height='72' width='72'/><thr:total>46</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2931809977061890596</id><published>2009-11-19T15:51:00.000-08:00</published><updated>2009-11-19T15:52:54.490-08:00</updated><title type='text'>Time Poor</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_gD2CrEUfhjw/SwXaSLoEXaI/AAAAAAAAAA8/ZibrTyUcTJY/s1600/AnthonyTangsmaller.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 115px; height: 128px;" src="http://4.bp.blogspot.com/_gD2CrEUfhjw/SwXaSLoEXaI/AAAAAAAAAA8/ZibrTyUcTJY/s200/AnthonyTangsmaller.JPG" alt="" id="BLOGGER_PHOTO_ID_5405966933621497250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;It's nearly the end of the semester! Just three more weeks! In three weeks, I'll be 1/6th done with my masters programs here at Carnegie Mellon (time flies when you're having fun).&lt;br /&gt;&lt;br /&gt;The hardest thing about being a part time student is balance. There are prior commitments to family, friends, work, school, and not to mention your personal life. Just juggling a few of them during busy times turns out to be quite a balancing act (minus broken dishes, add in broken feelings). To put this in perspective, 20 hours of part time school is 4 hour extra sleep a night -- quite a bit if you asked me. Most of the students I've talked to spend around that many hours working on school materials (not counting commute time). In effect, attending a part time masters program will teach you some very good time management skills.&lt;br /&gt;&lt;br /&gt;Personally, I think it takes a huge amount of dedication. In this Fall and Winter season, the days are shorter and the amount of nice sunny days in which one possibly can enjoy are quite rare. There were some extremely nice weekend days where the sun was perfect, the air was crisp, the birds were in the air -- and we scheduled a group meeting to complete school work for the entire day.  The "nice day" experience would be inside my car rather than outside biking or hiking. I think it's those moments which how big of an endeavor pursuing a masters degree really sinks in.&lt;br /&gt;&lt;br /&gt;Thankfully, CMU and the students understand that family is more important than school. So even though I've been attending school part time, I haven't missed any important family or important friend events.  This is the final stretch for this semester and then we'll have our month long break!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2931809977061890596?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2931809977061890596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2931809977061890596' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2931809977061890596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2931809977061890596'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2009/11/time-poor.html' title='Time Poor'/><author><name>Anthony Tang</name><uri>http://www.blogger.com/profile/01546510397554510213</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_gD2CrEUfhjw/SwXaSLoEXaI/AAAAAAAAAA8/ZibrTyUcTJY/s72-c/AnthonyTangsmaller.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-7017210119718373694</id><published>2009-09-24T15:05:00.001-07:00</published><updated>2009-09-24T15:08:12.796-07:00</updated><title type='text'>Flow Control</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_gD2CrEUfhjw/SrvtUbsOsFI/AAAAAAAAAA0/gp430pV5HrI/s1600-h/AnthonyTangsmaller.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 115px; height: 128px;" src="http://1.bp.blogspot.com/_gD2CrEUfhjw/SrvtUbsOsFI/AAAAAAAAAA0/gp430pV5HrI/s200/AnthonyTangsmaller.JPG" alt="" id="BLOGGER_PHOTO_ID_5385158714737995858" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The past few weeks have been hectic for those of us taking Software Foundations as we try to avoid getting "Railed" by Rails and finish our personal projects on time in addition to finishing our group project on time (if it means anything, we did get a two day extension on personal projects -- for those of us working full time, this really means an 8 hour extension). The personal project is a project to redesign or design a website you are passionate about, it is due this Tuesday.&lt;br /&gt;&lt;br /&gt;I am not sure how many of the students were as stressed out about this personal project as I was -- talking to people in class and out, it seemed like many were more or less in the same position. The first week and a half of the project, I kind of slacked off and spent a week playing Metal Gear Solid 4 beating Laughing Octopus and Ravaging Raven (yes!) -- the XP software methodology factors in a week of "slack" in your project time line -- I just decided to be proactive and take mine early, which didn't really work out for me and really regretted it later.&lt;br /&gt;&lt;br /&gt;We were given 3 weeks to do the personal project. The last 1.5 weeks I have been "pushing stone" and spending time to learn Ruby on Rails and pump out a personal project. There have been sweat, tears, and blood (figuratively). The days have been 6:30am, out the bed, 7:15am at work till 5:00pm or 6:00pm, grab a quick dinner, rest a bit and work on the project till near 2:00am. On the nights in which I stayed up to the crack of dawn and spent time debugging stack traces from my project, I'd think back to that week of slack and think that Laughing Octopus really got the last laugh.&lt;br /&gt;&lt;br /&gt;I'd spend lunch hours at my desk, working or reading for school -- actually, sitting at my desk at my lunch hour is nothing new, although I would typically browse &lt;a href="http://slickdeals.net/"&gt;slickdeals.net&lt;/a&gt; or the few blogs that I read.&lt;br /&gt;&lt;br /&gt;Nevertheless, the journey thus far has been quite amazing (my personal project is nearly done, just need to finish the testing tasks). I am learning to adjust to the flow of work and school and space out the load. Sometimes during those long days and nights, I stayed up late because I had to finish or debug a feature -- other nights, I didn't want to go to bed because I was too excited about features in the project. Though there are "rumors" about those who work in software -- environments void of light and lunch as microwaveable hot pockets (or cup of noodles), I believe there are positives, and I believe that those feelings are what every software developer yearns for : finding that bug that totally confuses you, coding some really great algorithm or idea and seeing it pan out,  etc...&lt;br /&gt;&lt;br /&gt;I'd also like to comment that the students (and quality of them) are quite amazing. It doesn't feel totally like a school; it feels more like a group. I don't feel competition as much as I feel empowerment and encouragement from fellow students -- useful information and knowledge is exchanged freely without hesitation -- very different from my undergrad.  Because of this, I'm really looking forward to semesters to come.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-7017210119718373694?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/7017210119718373694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=7017210119718373694' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/7017210119718373694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/7017210119718373694'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2009/09/flow-control.html' title='Flow Control'/><author><name>Anthony Tang</name><uri>http://www.blogger.com/profile/01546510397554510213</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_gD2CrEUfhjw/SrvtUbsOsFI/AAAAAAAAAA0/gp430pV5HrI/s72-c/AnthonyTangsmaller.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-3098016579170258629</id><published>2009-09-10T15:14:00.000-07:00</published><updated>2009-09-10T15:20:15.041-07:00</updated><title type='text'>Orientation 2009</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_gD2CrEUfhjw/Sql7mJhrs9I/AAAAAAAAAAc/Yj7UZ3aH0WY/s1600-h/AnthonyTangsmaller.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 115px; height: 128px;" src="http://3.bp.blogspot.com/_gD2CrEUfhjw/Sql7mJhrs9I/AAAAAAAAAAc/Yj7UZ3aH0WY/s200/AnthonyTangsmaller.JPG" alt="" id="BLOGGER_PHOTO_ID_5379967125193208786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hi, I'm Anthony, and I just started at Carnegie Mellon Silicon Valley as a part-time MS Software Engineering student!  I'm in the Technical track of this two-year program, and can't believe the semester has officially started! After finally adjusting to life as a working - college student (again). The days have been long, and the nights have been even longer.  I often wonder if I still have what it takes to "carry that weight" of school, work, and family; and I guess I have yet to find out. I think I finally can make time to write up this blog.&lt;br /&gt;&lt;br /&gt;As a part time student, I only take one class at a time (in 7 week intervals), the semester, it's Software Foundations. On my first day of class, I was pretty surprised at the setup -- the video cameras and remote campus setup was quite amazing. There is even a push-to-talk microphone on the desk, and if you press it, the video camera in the room would adjust, zoom in, and focus to your position; I thought this was quite neat. Whether or not this really helps a person learn or not, I am not sure (I guess having a video camera in the room discourages sleeping); however it hits home something that I felt from Carnegie Mellon from the start, that they really aim to inspire and innovate.&lt;br /&gt;&lt;br /&gt;I saw and felt this pretty clear in the three day orientation we had before classes, three days to meet and get to know your future professors, classmates, and also other faculty.&lt;br /&gt;&lt;br /&gt;The three day orientation was quite interesting (though I would have to admit that by the end of every orientation day, I was dead tired). I think everyone likes to talk about the LEGO castle building activity (and why not?), but I thought the public speaking 101 was the most interesting activity done. The task was simple : to take a childrens book and read it to a particular audience with a given time constraint.  I found the time to talk to faculty and professors on a person to person (rather than student to teacher) level quite refreshing.  It made me feel like Carnegie Mellon was a school I wanted to be a part of, rather than just attend.&lt;br /&gt;&lt;br /&gt;That's all I have to say now. With the full swing of the semester about to start, let's hope I have time in between school, work, and family to write on this blog. Thanks for reading!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-3098016579170258629?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/3098016579170258629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=3098016579170258629' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3098016579170258629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3098016579170258629'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2009/09/orientation-2009.html' title='Orientation 2009'/><author><name>Anthony Tang</name><uri>http://www.blogger.com/profile/01546510397554510213</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_gD2CrEUfhjw/Sql7mJhrs9I/AAAAAAAAAAc/Yj7UZ3aH0WY/s72-c/AnthonyTangsmaller.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2791516280815003666</id><published>2009-01-19T15:41:00.000-08:00</published><updated>2009-01-19T15:50:10.326-08:00</updated><title type='text'>Gathering and Practicum</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_WhKLBnTlToM/SXURio_PsnI/AAAAAAAAAB4/MJ32puzp9qA/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 82px; height: 98px;" src="http://1.bp.blogspot.com/_WhKLBnTlToM/SXURio_PsnI/AAAAAAAAAB4/MJ32puzp9qA/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5293156223859798642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;After a quite relaxing winter break, I'm back in &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt; and ready for the next semester. But first, I'm at the Gathering. This is an experience that part-time students will encounter twice in the course of their two-year curriculum, after each two semesters. At these weekend events, we gather everyone in the MS Software Engineering program to the &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt; campus and so we can have real face-to-face time with the classmates and teammates we've been talking with over the phone in the courses thus far. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;We have workshops and activities planned that aren’t just academically related, but fun, like an improv show or something similar or a nice dinner in downtown &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Mountain View&lt;/st1:place&gt;&lt;/st1:city&gt;. This time, The Gathering included a tai chi seminar – the purpose was to talk about health and wellness.&lt;span style=""&gt;  &lt;/span&gt;As software engineers, the faculty want to make sure we not only are fed academically, but also help us to take care of the other aspects of our lives.&lt;span style=""&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;But after this, I'll be starting on the Practicum course. This is really the capstone course for us, where we apply what we've learned to a real-world project. Personally, I'll be working with Nokia on a context-aware reminder system with three other people. This, I think, is going to be a really challenging test of what we've learned, and I'm looking forward to it. It's going to be wildly different from anything I've done at Carnegie Mellon so far. So it's with a nice mix of apprehension &amp;amp; excitement around the challenge to come that another semester begins.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2791516280815003666?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2791516280815003666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2791516280815003666' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2791516280815003666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2791516280815003666'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2009/01/gathering-and-practicum.html' title='Gathering and Practicum'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_WhKLBnTlToM/SXURio_PsnI/AAAAAAAAAB4/MJ32puzp9qA/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1262557371653182721</id><published>2009-01-07T11:20:00.000-08:00</published><updated>2009-01-07T11:22:07.224-08:00</updated><title type='text'>The Fall semester ends as colorful as it should...</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e6KcbQKhGDI/SNfThUxGgbI/AAAAAAAAABM/WDKZATmT6ko/s1600-h/suma-headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_e6KcbQKhGDI/SNfThUxGgbI/AAAAAAAAABM/WDKZATmT6ko/s200/suma-headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5248896460187402674" width="100" border="0" height="100" /&gt;&lt;/a&gt;Running neck to neck with tight schedules and strict time lines, amidst challenging course work, technical seminars and student workshops; our fall semester finally comes to an end.&lt;br /&gt;&lt;br /&gt;Foundations of Software Engineering was a special course designed for specific requirements like team roles and project practices. Apart from trying new technologies, we also learned how to be an effective team player, efficient developer and constructive critic; all that takes to succeed as a team. &lt;br /&gt;&lt;br /&gt;Avoiding Software Project Failures and Metrics for Software Engineers were other courses that help us as software engineers to study, understand, devise and propose the solutions to the problems posed in the coursework.&lt;span style=""&gt;  &lt;/span&gt;We studied different samples and we invented possible solutions for them. In most cases, the problems were recurring software discrepancies and unavoidable crisis situations in software projects. The solutions we presented aimed to either solve the problem or reduce the accountability to loss if the problem persists. Both of these courses were real examples of the Carnegie Mellon learning-by-doing methodology – as students, we really saw the principle behind all the courses in this discipline here.&lt;br /&gt;&lt;br /&gt;My semester was also spent doing much reseach, as a Research Assistant.&lt;span style=""&gt;  &lt;/span&gt;For those who are interested in trying their hand in mobile software development, there are a number of opportunities.  There are many research projects here for students to choose from ranging from mobile haptics to mobile meeting arrangers. “Smart spaces” is another research area where the faculty are developing intelligent senior monitoring systems.&lt;br /&gt;&lt;br /&gt;Lastly, I spent my free time attending a number of workshops and special speaker engagements.&lt;span style=""&gt;  &lt;/span&gt;We have some good technical seminars from different people in the industry, workshops on technologies like Ruby on Rails, Rho Mobile for mobile web development (development in Rails). Also non-technical resume writing workshops like effective resume writing and how resumes could be improved to make them reflect your skills and personality.&lt;br /&gt;&lt;br /&gt;This is the right place to be, if you are looking out for something challenging and intuitive.&lt;br /&gt; &lt;!--[if !supportLineBreakNewLine]--&gt;&lt;br /&gt; &lt;!--[endif]--&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1262557371653182721?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1262557371653182721/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1262557371653182721' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1262557371653182721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1262557371653182721'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2009/01/fall-semester-ends-as-colorful-as-it.html' title='The Fall semester ends as colorful as it should...'/><author><name>Sumalatha Komarraju</name><uri>http://www.blogger.com/profile/06776385568913767290</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_e6KcbQKhGDI/SM_SlSnxnzI/AAAAAAAAAAk/EbqCPXa2m0Y/S220/suma.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e6KcbQKhGDI/SNfThUxGgbI/AAAAAAAAABM/WDKZATmT6ko/s72-c/suma-headshot.JPG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-5671859546349618848</id><published>2008-11-18T10:03:00.000-08:00</published><updated>2008-11-18T10:09:16.363-08:00</updated><title type='text'>What's been happening</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_WhKLBnTlToM/SSMEiXDyG5I/AAAAAAAAABo/RgLhMMfKGkQ/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 82px; height: 98px;" src="http://1.bp.blogspot.com/_WhKLBnTlToM/SSMEiXDyG5I/AAAAAAAAABo/RgLhMMfKGkQ/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5270060977305557906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;It's been a long time since I last wrote anything here, as I've been overwhelmed in all kinds of ways. Luckily, I'm back on top of things, as another half-semester is in the books and a new one is getting underway. What I finished was a course in Avoiding Software Project Failures, which I loved. We had a number of case studies of real world projects that failed miserably, for a wide range of reasons. While many of the problems they encountered were predictable, many other ones were not. Seeing these examples is something that I know will help me avoid such failures in the future.&lt;br /&gt;&lt;br /&gt;Now we've moved on to the Metrics for Software Engineers course, which is a change of pace compared to the Failures course. Here, the focus is on figuring out what metrics are useful in making plans and monitoring projects, with the caveat that 80% of metric initiatives applied end in failure in current companies. So it seems like figuring out how to do these metrics initiatives well is up against long odds, but doing it well is a pretty rare feat. I'll get back to work to finish out this semester and enjoy a much-deserved winter break, where I'll enjoy not having work or school to do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-5671859546349618848?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/5671859546349618848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=5671859546349618848' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/5671859546349618848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/5671859546349618848'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/11/whats-been-happening.html' title='What&apos;s been happening'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_WhKLBnTlToM/SSMEiXDyG5I/AAAAAAAAABo/RgLhMMfKGkQ/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-5431951185559148311</id><published>2008-09-22T10:17:00.001-07:00</published><updated>2008-09-22T10:20:11.135-07:00</updated><title type='text'>Opening the Door to Success</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_e6KcbQKhGDI/SNfThUxGgbI/AAAAAAAAABM/WDKZATmT6ko/s1600-h/suma-headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_e6KcbQKhGDI/SNfThUxGgbI/AAAAAAAAABM/WDKZATmT6ko/s200/suma-headshot.JPG" height="100" width="100" alt="" id="BLOGGER_PHOTO_ID_5248896460187402674" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Are you in search of a school which makes learning an experience?&lt;span style=""&gt;  &lt;/span&gt;Do you want to advance your career as a software professional??&lt;span style=""&gt;  &lt;/span&gt;If so, this is your key to the door….&lt;p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Carnegie Mellon Silicon Valley is a simulated business and engineering world, with programs designed to let you have the experience of operating as if you were in the real world, as a software professional.&lt;span style=""&gt;  &lt;/span&gt;If you are on this page, then you are already on your way…&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The admissions process is simple enough to gauge your standards and tough enough to gauge your skills. You can think of it as one memory you will never forget, if you are through!! Believe me it’s an experience to have an interview for an admission…&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Orientation here at Carnegie Mellon Silicon Valley is a process that helps you know the place, people and school better. It’s when you actually learn, how you learn and what you learn in the program. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;I would like to narrate one such experience of mine in orientation…On the third day of orientation, all the new part-time and full-time students met together and participated in what is called a Lego game with 3-4 people on a team. We were asked to construct a Castle using Lego blocks. In the first round we were instructed to follow the steps prescribed and in the second round planning was left to the team. We were given time to plan and organize. At the end of two stages we were asked to reflect on our progress and team work. This gave everyone an insight into the program’s methodology of “learning by practicing”. That’s what every student is made to do here, “learn by doing”.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This program is designed and structured for students to have a first-hand experience in a virtual software environment where you learn to manage risk, avoid failures and plan for your projects that you develop. It will help you teach yourself, what it takes to be a software professional.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Real meetings, project planning and team work, everything is here for you. They mentor and empower your potential to perform better. So, if you would like to advance your career as a successful software person then Carnegie Mellon Silicon Valley is the place for YOU!!&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;You may be wondering, if there is anything else apart from this in the school? Oh yes, it would be of interest to know that we have a robotics club , IEEE meetings ,Technical Talks (called Scotland Yard) and exciting research projects. You can visit the Carnegie Mellon Silicon Valley site for more information on this. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Its just fun being here!!! &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-5431951185559148311?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/5431951185559148311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=5431951185559148311' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/5431951185559148311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/5431951185559148311'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/09/opening-door-to-success_22.html' title='Opening the Door to Success'/><author><name>Sumalatha Komarraju</name><uri>http://www.blogger.com/profile/06776385568913767290</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='23' src='http://4.bp.blogspot.com/_e6KcbQKhGDI/SM_SlSnxnzI/AAAAAAAAAAk/EbqCPXa2m0Y/S220/suma.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_e6KcbQKhGDI/SNfThUxGgbI/AAAAAAAAABM/WDKZATmT6ko/s72-c/suma-headshot.JPG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-3295294242244401385</id><published>2008-09-22T10:01:00.000-07:00</published><updated>2008-09-22T10:06:31.246-07:00</updated><title type='text'>All Good Things Must Come To an End</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_wcx8o-SMuts/SNfQkkdqmQI/AAAAAAAAABk/xOQgtqHQYLs/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_wcx8o-SMuts/SNfQkkdqmQI/AAAAAAAAABk/xOQgtqHQYLs/s200/Minh+headshot.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5248893217405573378" /&gt;&lt;/a&gt;&lt;br /&gt;Last month, my team wrapped up our eBay/PayPal practicum and delivered a very cool product to the client on time. We even got to do a presentation at the eBay/PayPal conference center there to demo our work to other employees, and what makes me really proud is that our work will live on as an open-source project. There’s also a strong likelihood that we’ll be invited to speak at the next PayPal Developer’s Conference when they will be presenting our work to the developer community. Cool, eh? &lt;br /&gt;&lt;br /&gt;The end of the practicum last month also marked the end of my two-year journey through Carnegie Mellon Silicon Valley. So on August 9th, 2008, some 45 graduates walked to the pomp and circumstances on the NASA campus at Moffett Field to receive our Master’s diplomas. For me, it was my Master’s Degree in Software Engineering.&lt;br /&gt;&lt;br /&gt;At our graduation ceremony, our Class of 2008 also presented our class gift to the Carnegie Mellon family: our own CMU Silicon Valley Fence. Now, for those who don’t know, there exists a long tradition of repainting a certain fence that exists at the main campus at Carnegie Mellon University. Student organizations would paint the fence to their desire to advertise student events or send messages to the campus community. Well, in the last weeks of final semester, the west coast graduates collected money and build our own small fence here on the Silicon Valley campus. This class gift was completely student-run: we came up with the idea, collected the money, and while we had a contractor built it, a bunch of us came out on a Sunday to paint it with Silicon Valley themes. At the end, we dedicated the fence to the late Randy Pausch. We’ve even posted pictures and a small &lt;a href="http://www.vimeo.com/1463565"&gt;video &lt;/a&gt;, and this has also been covered by the &lt;a href="http://www.cmu.edu/news/blog/2008/Summer/silicon-valley-fence.shtml"&gt;campus press&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now all good things must come to end. During our graduation ceremony, we said goodbyes to each other, and I hope that many of these friendships that we have built will last for long time. I am a bit sad already to think about the fact that I won’t be seeing many of these people again, so I sure hope that people will still come out to our regular Class of 2008 social gatherings.&lt;br /&gt;&lt;br /&gt;Looking back, I can’t believe how fast these two years have gone by. It really seemed like yesterday when we just started this program. It was lot of hard work, and maybe that’s why time really flew. Was it worth? Absolutely.  I’ve learned a great deal about software engineering, a month after graduation I was promoted to Senior Software Design Engineer at work, and I am already hearing rumors about classmates forming their own new companies. Shhh… it’s a secret.&lt;br /&gt;&lt;br /&gt;This is it. My last blog entry, but certainly not my last affiliation with Carnegie &lt;br /&gt;Mellon Silicon Valley. Hope you enjoyed the read, and if you have any questions, feel free to email me at nguyentriminh@yahoo.com. Good night, and good luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-3295294242244401385?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/3295294242244401385/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=3295294242244401385' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3295294242244401385'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3295294242244401385'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/09/all-good-things-must-come-to-end.html' title='All Good Things Must Come To an End'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_wcx8o-SMuts/SNfQkkdqmQI/AAAAAAAAABk/xOQgtqHQYLs/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1436460569239685589</id><published>2008-07-16T10:47:00.000-07:00</published><updated>2008-11-12T20:23:20.317-08:00</updated><title type='text'>Carnegie Mellon Silicon Valley</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_wcx8o-SMuts/SH40_kLdvuI/AAAAAAAAABM/DbQYuRYaYQk/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_wcx8o-SMuts/SH40_kLdvuI/AAAAAAAAABM/DbQYuRYaYQk/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5223670884444520162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;This is &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt;. It’s the heart of the software industry, the epitome of American entrepreneurship, the ultimate place to be a Software Engineer.&lt;span style=""&gt;  &lt;/span&gt;As you drive along highway 101 from San Francisco down to San Jose, you inevitably drive by companies such as Salesforce, Oracle, Lockheed Martin, Microsoft, Yahoo, Sun, Intel, eBay, Network Associates just to name a few. When you get off 101 in the &lt;st1:place st="on"&gt;&lt;st1:placename st="on"&gt;South&lt;/st1:placename&gt; &lt;st1:placetype st="on"&gt;Bay&lt;/st1:placetype&gt;&lt;/st1:place&gt;, don’t be surprised if you find yourself driving by the headquarters of tech companies such as Adobe, HP, AMD, Google, Facebook and the like. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Right at the center of it all, sandwiched between Google, Microsoft, Lockheed Martin and NASA is Carnegie Mellon West, or shall I better say Carnegie Mellon Silicon Valley? We've been told that the school is preparing to be renamed to Carnegie Mellon Silicon Valley, to better reflect the grand opportunities that arise from being situated right at the pulse of &lt;st1:place st="on"&gt;Silicon  Valley&lt;/st1:place&gt;.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;And, boy, what a difference it makes to be here in the valley. The good is that you build networks and connections like crazy. For lunch, I sometimes leave the Microsoft campus and hop over to Google or Apple to have lunch there with classmates or former co-workers. The “Lunch 2.0” group is organizing get-to-know-the-company lunch events, where I find myself eating and mingling with employees over at LinkedIn, Meebo and the like. You are being constantly approached (sometimes very aggressively) by recruiters trying to persuade you to leave one high-paying job for another high-paying job. Last time, I was having dinner by myself at this shady Vietnamese Pho restaurant, and was doing my assigned reading in the Ruby on Rails book, only to be approached by the CEO of this RoR shop and been given a business card in case I am interested in doing RoR professionally. There are technology events, conferences, workshops and user group meetings sprinkled throughout the valley—CMU West even hosts many.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;As I am doing my practicum with PayPal, our team is working diligently on a very cool ASP.NET/Silverlight-based website that uses PayPal’s service-oriented architecture and last week, our Carnegie Mellon team had lunch on the beautiful eBay/PayPal campus and presented the state of our product to one of the directors and his team there. After the practicum, they gave us a grand tour of the facilities and even joked that we might as well just pick up the job application too. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt; is just a vibrant area, full of ideas and innovation and Carnegie Mellon knows how to foster it. Besides the popular innovation and entrepreneurship classes taught by startup veterans, we also have an “entrepreneur-in-residence” at CMU West. He’s a venture capitalist who can give guidance on starting your own company, and heck, he might be interested in investing in it. The valley is just full of people with ideas—it seems like everyone from your co-worker to the janitor has an opinion and idea of the next disruptive technology, and are probably already putting a business plan together. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Now, the flipside of being in the heart and center of &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt;, is that you can’t escape it. In an area, where the ratio of men to women is skewed enough for &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;San Jose&lt;/st1:place&gt;&lt;/st1:city&gt; to be nicknamed “Man Jose”, it’s really disappointing to go to a social event only to be surrounded by nerdy engineers who just haven’t learned the etiquette of not talking about work outside of work. Most annoyingly are those that practice geek speak in the movie theater/Starbucks line in an intentional loud voice. Have they never learned that the first rule about computer club, is to not talk about computer club? I myself always resist the urge of asking someone I first meet where they work or what they do, because I know that like Pringles, once they pop, they’ll never stop. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Yet, overall, &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt; is definitely a quite interesting place for software engineers. It’s a place where not only can you see history being made by the minute, but also where you have every opportunity to be part of making history.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1436460569239685589?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1436460569239685589/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1436460569239685589' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1436460569239685589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1436460569239685589'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/07/carnegie-mellon-silicon-valley.html' title='Carnegie Mellon Silicon Valley'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_wcx8o-SMuts/SH40_kLdvuI/AAAAAAAAABM/DbQYuRYaYQk/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-3768284681095156733</id><published>2008-06-19T15:04:00.001-07:00</published><updated>2008-11-12T20:23:20.630-08:00</updated><title type='text'>Architecture Midpoint:</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_WhKLBnTlToM/SFrYGMoGEhI/AAAAAAAAABE/EeHXDHjVbO4/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_WhKLBnTlToM/SFrYGMoGEhI/AAAAAAAAABE/EeHXDHjVbO4/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5213717119614980626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So I’m just about halfway through the summer course in the MS Software Engineering program – Architecture.&lt;span style=""&gt;  &lt;/span&gt;So far, it has been a very interesting course. In the first half, we’ve had basically 5 weeks of continuous research and reporting on various architectural styles.&lt;span style=""&gt;  &lt;/span&gt;For example, my team and I researched pipes-and-filters, service-oriented, and event-based styles.&lt;span style=""&gt;  &lt;/span&gt;Following this, we conducted a 2 week analysis of competing architecture options to build the best system software within a sea buoy (yes, literally, how would you architect a system to put on buoys floating in the sea?).     &lt;p class="MsoNormal"&gt;Needless to say, this is been a lot of work, and has felt a bit overwhelming with the amount of information we’ve had to cover. Looking back, though, I can't really see a different method of quickly exposing people to a wide range of architecture options in a short time. This was probably the best way to give us a survey of various architectural styles.&lt;span style=""&gt;  &lt;/span&gt;Additionally, as you learn more about any particular architecture, you definitely start to see what pieces of the architectures are fundamental to each one's success or failure. &lt;/p&gt;    &lt;p class="MsoNormal"&gt;Overall, this past “mini-semester” has been pretty different than the others, in that there’s been more research-based. I'm pretty excited, though, about the next mini-semester, when we will apply what we learned here towards our "Movie Recommender" product. This is a web-based application that recommends movies a lot like Netflix does.&lt;span style=""&gt;  &lt;/span&gt;We will be figuring out the architecture for that project with a lot less constraints than we had when describing the architectures in the first half-semester. I think this will end up being pretty cool.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-3768284681095156733?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/3768284681095156733/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=3768284681095156733' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3768284681095156733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3768284681095156733'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/06/architecture-midpoint.html' title='Architecture Midpoint:'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_WhKLBnTlToM/SFrYGMoGEhI/AAAAAAAAABE/EeHXDHjVbO4/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-132255146015674625</id><published>2008-06-18T14:52:00.000-07:00</published><updated>2008-11-12T20:23:20.872-08:00</updated><title type='text'>Attending the Class of 2008 Commencement Ceremony at the main campus in Pittsburgh</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_wcx8o-SMuts/SFmD3QC5PTI/AAAAAAAAABE/YyBWo4CqoUg/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_wcx8o-SMuts/SFmD3QC5PTI/AAAAAAAAABE/YyBWo4CqoUg/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5213343028881210674" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;Last month I joined more than a dozen Carnegie Mellon West students and faculty who flew to &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Pittsburgh&lt;/st1:place&gt;&lt;/st1:city&gt; to attend the Class of 2008 commencement ceremony at the main campus. No, I haven't officially graduated yet--I am in the middle of my practicum with PayPal right now. Our actual graduation ceremony where each of us will be walking will actually happen this August here at the &lt;st1:city st="on"&gt;Mountain View&lt;/st1:city&gt; campus in &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt;, but I didn’t want to miss the commencement ceremony with the entire Class of 2008 at the main campus.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;I flew in on a Friday morning, took a shuttle into downtown and met up with my classmates to do all the touristy stuff in and around &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Pittsburgh&lt;/st1:place&gt;&lt;/st1:city&gt;. We visited the Andy Warhol museum, ate at Primanti Brothers (a popular sandwich deli in &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Pittsburgh&lt;/st1:place&gt;&lt;/st1:city&gt;), visited the Frank Llyod Wright’s famous Fallingwater, went up the Duquesne Incline, and checked out the strip. The next morning, we met up with our CMU West faculty to visit the Phipps Conservatory and went on a tour of the campus.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;st1:place st="on"&gt;&lt;st1:placename st="on"&gt;Carnegie&lt;/st1:placename&gt;  &lt;st1:placename st="on"&gt;Mellon&lt;/st1:placename&gt; &lt;st1:placetype st="on"&gt;University&lt;/st1:placetype&gt;&lt;/st1:place&gt; was smaller than I expected it to be.&lt;span style=""&gt;  &lt;/span&gt;Having heard of CMU as this grandiose, private, top-notch engineering school, I envisioned a large campus, but was surprised to see that one can get from one point of the campus to another within ten minutes. Nevertheless, it was a very cool experience to see all the buildings, visiting the computer labs, the library and hearing the history behind each building and the campus as a whole. Up until this time I’ve seen many pictures of CMU through brochures, and pictures, so it was kinda neat to be able to actually see the real buildings and how they relate to each other. It was like seeing all the puzzle pieces coming together.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Of course we couldn’t miss a visit the campus store to fill up our reservoir of CMU paraphernalia (which we can’t so easily get at the west coast campus), and had a nice dinner with CMU West students only and attended various pre-graduation cocktail dinners.&lt;span style=""&gt;  &lt;/span&gt;The next morning, amidst grayish weather, we joined thousands of other Tartans in Carnegie Mellon’s 111&lt;sup&gt;th&lt;/sup&gt; commencement ceremony. Keynote speaker was 2007 Nobel Peace Prize Winner Al Gore who pulled again his joke-introduction of “Hi, I am Al Gore, and I used to be the next president of the United States” after which he talked about us being the generation that can change and tackle the environment issues we face today. However, Al Gore’s appearance was almost overshadowed by a short surprise-appearance of the CMU professor Randy Pausch whose inspiring “Last Lecture” on achieving your childhood dreams after being diagnosed with cancer became an internet sensation last year. Again, Randy inspired the students (and myself) about life’s purpose of finding passion and following your passion as well as the love for the people that matter most to you. I am glad that I was able to see and hear from Randy Pausch myself, for I have been inspired by his last lecture months before (click &lt;a href="http://www.youtube.com/watch?v=ji5_MqicxSo"&gt;here&lt;/a&gt; if you haven’t seen it yet).&lt;/p&gt;  &lt;p class="MsoNormal"&gt;It was a very fun weekend out of town, and I thought that it was very worth the money to spend for such a short weekend. Of course, the harder part now is to concentrate on my last two months at CMU West on my practicum without being fooled into thinking that I am already done. Ah, senioritis.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-132255146015674625?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/132255146015674625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=132255146015674625' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/132255146015674625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/132255146015674625'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/06/attending-class-of-2008-commencement.html' title='Attending the Class of 2008 Commencement Ceremony at the main campus in Pittsburgh'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_wcx8o-SMuts/SFmD3QC5PTI/AAAAAAAAABE/YyBWo4CqoUg/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1979903106538753544</id><published>2008-05-20T13:48:00.001-07:00</published><updated>2008-11-12T20:23:21.040-08:00</updated><title type='text'>Wrapping up Construction III and Starting the Practicum</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_wcx8o-SMuts/SDM5OTcRpJI/AAAAAAAAAA8/wMjQrQY453w/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_wcx8o-SMuts/SDM5OTcRpJI/AAAAAAAAAA8/wMjQrQY453w/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5202564912442877074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Whoa—I haven’t blogged for 6 weeks now. Time flies when so many things are happening at school. For one, we’ve completed the Construction III mini. Like I already mentioned in my last blog, I thought that that class was one of the best classes at Carnegie Mellon West.   &lt;p class="MsoNormal"&gt;Our team architected the actual movie recommendation engine that is to be used in our MovieRecommender website. It was a complex architecture, the algorithms were highly mathematical, and our team prided itself in coming up with a beautiful design that would accommodate for all the requirements, all while making use of previous work and research done by more than 20+ classmates in previous semesters. We then constructed the Java-based recommendation engine, plugged it into our existing Ruby on Rails-based MovieRecommender website and then coded several recommendations algorithms that together provide movie recommendations for you based on your past ratings and social network. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;It was a very fun and cool project, and I am very proud of what our team has accomplished in this little time. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;After Construction III, we had a 1-week vacation (that I spent in &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Vietnam&lt;/st1:place&gt;&lt;/st1:country-region&gt;) and then started the last semester in my 2-year adventure for my master’s degree: the practicum.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The practicum is our opportunity to apply all that we have learned so far to a real project from a real customer. The practicum used to be a requirement for the technical track, but the curriculum was changed so that one could replace it with another elective. I don’t know why anyone would want to do that though, because I can’t imagine something more useful and hands-on than a project with a real client and real risks, scope and deadlines.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;I chose to do the practicum because I imagine that I will benefit and learn the most doing an actual project with an actual company, and I will strive to really apply all the best practices and knowledge that I have gained at CMU West so far. At a practicum fair last month we were introduced to several projects with companies such as PayPal, Nokia as well as internal projects with Carnegie Mellon West. Through a selection process, I was matched with the website-development project with PayPal, which was actually my first choice since I miss doing production-level web development. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;My team is currently negotiating with the PayPal managers on the scope of our project, and are in the process of gathering requirements and producing UI mockups, but I am very excited to hear that we have decided on coding in C#, ASP.NET, &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Ajax&lt;/st1:place&gt;&lt;/st1:city&gt; and Silverlight – all of which are technologies that I very&lt;span style=""&gt;  &lt;/span&gt;much enjoy. I can’t tell you more about the specifics of the PayPal project (well, I could, but then I have to kill you afterwards). However, I’ll be sure to blog about the experience of this practicum as time goes on.&lt;/p&gt;  &lt;p style="font-style: italic;" class="MsoNormal"&gt;&lt;b style=""&gt;Next time&lt;/b&gt;: &lt;st1:place st="on"&gt;&lt;st1:placename st="on"&gt;Visiting&lt;/st1:placename&gt; &lt;st1:placename st="on"&gt;Carnegie&lt;/st1:placename&gt; &lt;st1:placename st="on"&gt;Mellon&lt;/st1:placename&gt;  &lt;st1:placetype st="on"&gt;University&lt;/st1:placetype&gt;&lt;/st1:place&gt; (Main Campus) for Commencement Ceremony&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1979903106538753544?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1979903106538753544/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1979903106538753544' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1979903106538753544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1979903106538753544'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/05/wrapping-up-construction-iii-and.html' title='Wrapping up Construction III and Starting the Practicum'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_wcx8o-SMuts/SDM5OTcRpJI/AAAAAAAAAA8/wMjQrQY453w/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-6493642998032707961</id><published>2008-04-18T10:30:00.000-07:00</published><updated>2008-11-12T20:23:21.222-08:00</updated><title type='text'>Requirements Engineering - Second semester wrap-up</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_WhKLBnTlToM/SAjcSm4jeeI/AAAAAAAAAA8/IACcGkYcun0/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_WhKLBnTlToM/SAjcSm4jeeI/AAAAAAAAAA8/IACcGkYcun0/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5190640782778005986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This semester was definitely a remarkable change of pace from the first one. In the first one,  we took one course, Foundations of Software Engineering.  It had mainly been focused on things that I already understood, like coding and some design patterns. This semester was something else entirely. We took a course called Requirements Engineering.  We focused on gathering requirements and then prioritizing them for a release. I have never done anything like this before, even at my day job at Google. I learned how to conduct user interviews, how to do UI design, how to develop use cases, how to do usability tests, and how to prioritize and maintain requirements as they change. In addition, we had excellent readings and discussion on how to improve meetings, with the wonderfully named &lt;i&gt;Death by Meeting&lt;/i&gt; as an introduction to the problem. This course's newness to me really made it significantly more mentally challenging than the previous course. I'm very excited that I've actually learned some things about how to design features that users will actually want instead of those that engineers think they want.&lt;br /&gt;&lt;p class="MsoNormal"&gt;Specifically, we worked on a movie recommendation product that would leverage social networking to give people personalized recommendations. At least, that's how it began. During user interviews, nobody we interviewed said they would bother figuring out yet another social network. So we had to push back on our VP of Marketing (role-played by one of our faculty members) to revise the vision from a social network like Facebook or Myspace to one where the social network was one-way. That is, you could look at another user's reviews and say you agree with that user, but the other person has no need to know who you are or approve you. Then, a personalized recommendation can be built based on your history and those of the users you agree with. That let us build a system more like Amazon's recommendations but for movies instead of something like a Myspace for movies. The whole process was really interesting.&lt;br /&gt;&lt;br /&gt;Looking into the future, we have the Gathering coming up, where all the students fly in to Carnegie Mellon West and meet up in person. This will include my teammate from this semester who consistently dialed in from &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Saudi Arabia&lt;/st1:place&gt;&lt;/st1:country-region&gt;, so I'm pretty excited about that. Our next course is architecture, building on the Movie Recommender product from before. During the Gathering, I'll be learning more about the specifics.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-6493642998032707961?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/6493642998032707961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=6493642998032707961' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6493642998032707961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6493642998032707961'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/04/requirements-engineering-second.html' title='Requirements Engineering - Second semester wrap-up'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_WhKLBnTlToM/SAjcSm4jeeI/AAAAAAAAAA8/IACcGkYcun0/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-9064185940510993554</id><published>2008-04-02T10:30:00.000-07:00</published><updated>2008-11-12T20:23:21.396-08:00</updated><title type='text'>Construction III – The Best of All Worlds</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_wcx8o-SMuts/R_PDX9E1vuI/AAAAAAAAAA0/oKuyaJHik_k/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_wcx8o-SMuts/R_PDX9E1vuI/AAAAAAAAAA0/oKuyaJHik_k/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5184702412332842722" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;This has got to be one of the most awesome classes at Carnegie Mellon West. It’s the accumulation of all we have learned in previous classes and we are putting all our theory and previous work into practice. You see, in the past year and half, we have developed this concept of a “Movie Recommender” product that provides recommendations for movies to watch based on your movie ratings. In the Requirements class last spring, we gathered the requirements, came up with UI mockups for a website, ran it through usability tests and worked with the VP of Engineering (remember, this is a role played by one of the faculty members) to negotiate a list of requirements that we deemed to be reasonable to implement. In the Architecture class last summer, we designed several architectures for a recommendation engine framework and how it would interact with the website layer. During Construction I last fall, we actually built the presentation layer in Ruby on Rails—both for the web as well as the cell phone. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Well, this is the semester we are putting everything together, and it’s an absolute joy and a very exciting project. Our team, “Team Gang of Six,” has studied prior research made by other teams in previous classes on all the above-mentioned aspects of this product, and our vision of the final product encompasses the work that so many different students had done previously: &lt;span style=""&gt; &lt;/span&gt;our Movie Recommender website was designed and incepted and prototyped by Team TMate in ASP.NET/C#. The event-based RecommendationEngine framework as well as the service-oriented integration point between Ruby on rails and Java was architected by Team Pantheon, the actual weighted/collaborative-filtering-based algorithm was proposed by Team 365, the actual migration of the ASP.NET prototype by Team TMate into Ruby on Rails was already previously done by Team TripleT during Construction I. Our current team is now putting all these ideas and prototype code together and are actually implementing the final Movie Recommender website and the Java-based recommendation engine, all while trying to apply software engineering best practices we have learned so far, including agile programming, SCRUM and design patterns. It’s really a firework of a project whose pyro is made up from the great work of some 20+ schoolmates (who might not even know that we picked up on their research).&lt;/p&gt;  &lt;p class="MsoNormal"&gt;The beauty of Carnegie Mellon West was also that this project was negotiated between the students and the faculty. Last semester, some of the students in Construction II were dissatisfied with the content of the class, as we felt we weren’t really learning any new concepts. So, we came together and approached the faculty and suggesting focusing on construction activities, and through some negotiation were able agree on several construction projects. In addition to allowing teams to work on constructing a product of their choosing (though it had to be approved), we also got to learn quite a lot about best practices. The plenary sessions consists of student-led presentations about different design patterns (iterator, abstract factory, template, façade, strategy, singleton, decorator, you name it), as well as some very interesting software engineering topics and discussions such as post-mortems, V-testing, software quality testing, code inspections, code reviews, good design heuristics, code coverage, code documentation, bug patterns, etc.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In a way, this class already feels like the practicum (which is yet to come this summer actually). We are given a lot of autonomy, and if you give a bunch of enthusiastic, opinionated students the freedom to code on what they want to do—you are going to get a bunch of students who enjoy the class, put in extra hours to make the product perfect and have full ownership of the product. Very cool!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-9064185940510993554?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/9064185940510993554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=9064185940510993554' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/9064185940510993554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/9064185940510993554'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/04/construction-iii-best-of-all-worlds.html' title='Construction III – The Best of All Worlds'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_wcx8o-SMuts/R_PDX9E1vuI/AAAAAAAAAA0/oKuyaJHik_k/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-7623894763147206405</id><published>2008-03-03T15:25:00.000-08:00</published><updated>2008-11-12T20:23:21.489-08:00</updated><title type='text'>Construction II – Wrapping Up Thick Client Development</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_wcx8o-SMuts/R8yJLKma99I/AAAAAAAAAAs/I4JPLyxA8g0/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_wcx8o-SMuts/R8yJLKma99I/AAAAAAAAAAs/I4JPLyxA8g0/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5173660896858929106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;Last week I wrapped up the 7-week Construction II class concentrating on thick client development on the Nokia N95. My team decided to build a J2ME-based application that allows you to use your Nokia N95 to take pictures on a vacation trip, organize them into albums, and allows you to share albums with other Nokia N95 users via Bluetooth and eventually present a slideshow (along with audio) directly to the TV from the device. Pretty cool, eh? It is an interesting product, albeit not necessarily innovative, but it did give my team ample opportunity to familiarize ourselves with J2ME development.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Comparing J2ME development with .NET CF development, I must say that J2ME development is much more complicated and troublesome. You really have to code everything from scratch or by hand, including the user interface. One can’t rely on graphical user interface development where you can graphically position your elements. Debugging on the device via Eclipse isn’t as pretty and straight-forward as I am accustomed to in the .NET CF world, and it also seems that J2ME/MIDP development is still relatively new - so the majority of sample or source code available on the web either is incorrect or just doesn’t even work. My team struggled a lot when we implemented the Bluetooth transfer of pictures and audio narrations, as the code also seemed somewhat unintuitive or more complex than it should be.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;As far as software engineering processes, we did something differently this year. We developed a product from inception, and requirements engineering, to design and construction using an iterative approach. Unlike what we had learned in the requirements engineering class last year, when it was pounded into heads that one should do usability tests before any coding, this class encouraged coding user interfaces first, and then doing usability tests along the way to iteratively come to an effective user interface. The motto here was to show an early product out to potential users early and often. Like we did in the requirements engineering class last spring, we also videotaped our usability tests (that we conducted on co-workers, friends and significant others) and analyzed them afterwards to improve the usability tests.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In the end, after 7 weeks, my team delivered a working product that allows you to take pictures, annotate them with audio narrations, and transfer images; and we made a user story-centric presentation to faculty. The product also made use of the built-in GPS to geotag each image. In retrospect, I feel that we spent more time on requirements gathering, usability test and UI improvements than what I would have expected from a class focusing on construction, but I suppose the idea was to give more autonomy to the students in preparation for the practicum later this year. However, besides J2ME, the technology, I didn’t really learn much that we haven’t already covered in previous classes, so with Construction III starting next week, we will try to apply more software design patterns to our development, and I am looking forward to that.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-7623894763147206405?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/7623894763147206405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=7623894763147206405' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/7623894763147206405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/7623894763147206405'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/03/construction-ii-wrapping-up-thick.html' title='Construction II – Wrapping Up Thick Client Development'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_wcx8o-SMuts/R8yJLKma99I/AAAAAAAAAAs/I4JPLyxA8g0/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2098007847843729841</id><published>2008-01-31T12:22:00.000-08:00</published><updated>2008-11-12T20:23:21.637-08:00</updated><title type='text'>Construction II – Building a Thick Client for the Mobile Phone</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_wcx8o-SMuts/R6Iun0IpqkI/AAAAAAAAAAk/f6GU-KOWkg4/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_wcx8o-SMuts/R6Iun0IpqkI/AAAAAAAAAAk/f6GU-KOWkg4/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5161739384464714306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;I started the year by missing school. Great. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;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 &lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Kuala   Lumpur&lt;/st1:city&gt;, &lt;st1:country-region st="on"&gt;Malaysia&lt;/st1:country-region&gt;&lt;/st1:place&gt; 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 &lt;a href="http://carnegiemellonwest-dm.blogspot.com/2008/01/gathering.html"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;I flew back from &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Malaysia&lt;/st1:place&gt;&lt;/st1:country-region&gt; 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.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;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 &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt;, 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.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;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. &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2098007847843729841?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2098007847843729841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2098007847843729841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2098007847843729841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2098007847843729841'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/01/construction-i-building-thick-client.html' title='Construction II – Building a Thick Client for the Mobile Phone'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_wcx8o-SMuts/R6Iun0IpqkI/AAAAAAAAAAk/f6GU-KOWkg4/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1500097774582347838</id><published>2008-01-25T09:58:00.000-08:00</published><updated>2008-11-12T20:23:21.835-08:00</updated><title type='text'>Once More unto the Breach</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_WhKLBnTlToM/R5ojtXEb-uI/AAAAAAAAAA0/AcUc3oRFOH8/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_WhKLBnTlToM/R5ojtXEb-uI/AAAAAAAAAA0/AcUc3oRFOH8/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5159475585300036322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;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).&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;I'm on a team with one of the same teammates as last semester, a coworker at Google, and a student in &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Saudi Arabia&lt;/st1:place&gt;&lt;/st1:country-region&gt; (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.&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;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.&lt;span style=""&gt;  &lt;/span&gt;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.&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;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 &lt;st1:time hour="7" minute="30" st="on"&gt;7:30 AM&lt;/st1:time&gt; 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.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1500097774582347838?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1500097774582347838/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1500097774582347838' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1500097774582347838'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1500097774582347838'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/01/once-more-unto-breach.html' title='Once More unto the Breach'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_WhKLBnTlToM/R5ojtXEb-uI/AAAAAAAAAA0/AcUc3oRFOH8/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-921184554442303091</id><published>2007-12-22T15:38:00.000-08:00</published><updated>2008-11-12T20:23:21.963-08:00</updated><title type='text'>Wrapping up Construction I – Wohoo!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_wcx8o-SMuts/R31zAClsRfI/AAAAAAAAAAc/sH3N-pPvcRA/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_wcx8o-SMuts/R31zAClsRfI/AAAAAAAAAAc/sH3N-pPvcRA/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5151399993313871346" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;Last week I finished the first mini of our 3-mini Construction class (a mini is half a semester), and I must say that Construction has been all that it was promised to be—exciting, fun, a lot of cool stuff—all while learning many new things. In just over seven weeks, my excellent kick-ass team put together a prototype of a social-networking based MovieRecommender website that provides movie information, and the ability to purchase movie tickets on the web as well as the phone. We took parts of the requirements that we had gathered in the Spring 2007 semester and in SCRUM style we have iteratively planned, managed and implemented the product backlog items one week at a time. In the end, our team not only has developed a product that we are very proud of, but we’ve also over-delivered because we got so excited about this product and the technologies. Ruby on Rails was the savior in developing multiple views for our application: from HTML for the web, to trimmed-down versions in XHTML for advanced mobile phones, to WML views for old-fashioned cellphones, and … get this… VXML for voice-recognition! &lt;/p&gt;  &lt;p class="MsoNormal"&gt;VXML? Voice-recognition? Yup, you heard it right. What happened is that our team got ahead of the game pretty early; we were the first one to deliver the mobile views, getting the unit tests to run, and getting the integrated build systems to work. After already delivering the purchase-tickets feature or showing maps of movie theaters on the cellphone via GoogleMaps or even geocoding zip codes into “nearby theaters” by using Yahoo’s GeoCoding webservice, we decided that the last task of allowing users to reserve restaurants was just too boring for us, and that we wouldn’t learn anything new. So, we sat down with our faculty and negotiated with him to deliver the VXML/Voice-recognition instead. With much research and fun we used Tellme Networks’ free VXML-development environment to develop a voice-solution that allows you to call a 1-800 number to access movie information. Tellme’s call server would access the necessary movie information by accessing the VXML files that we developed and hosted on the Carnegie Mellon West web servers. How cool is that? In fact, the stuff that we do in our technical track has become so cool, that two students in the development track have already decided to switch to the technical track!&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This example demonstrates again that CMU West ain’t your typical master’s program. Where else do you get to develop with state-of-the-art technologies and practice new software development lifecycles in a safe environment, increase your breadth of technical knowledge so rapidly, all while having fun and even getting to have a say on the curriculum’s content and direction? Welcome to Carnegie Mellon West.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Happy Holidays!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-921184554442303091?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/921184554442303091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=921184554442303091' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/921184554442303091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/921184554442303091'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2008/01/wrapping-up-construction-i-wohoo.html' title='Wrapping up Construction I – Wohoo!'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_wcx8o-SMuts/R31zAClsRfI/AAAAAAAAAAc/sH3N-pPvcRA/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-6972725493126292153</id><published>2007-12-17T14:16:00.000-08:00</published><updated>2008-11-12T20:23:22.148-08:00</updated><title type='text'>A whirlwind semester draws to a close</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_WhKLBnTlToM/R2b22JkbVTI/AAAAAAAAAAs/CYOU84WVcoY/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_WhKLBnTlToM/R2b22JkbVTI/AAAAAAAAAAs/CYOU84WVcoY/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5145071034459444530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Whew. One semester is finally finished. Things definitely get a lot more hectic towards the end of the semester, which seems to have coincided with the rest of my life getting more complicated as well. Over the course of a week, my CMU team prepared our final presentation, added the final bit of functionality to the code (the reports UI, which I'll try to post here for the person who wanted to see how it looked).                &lt;p class="MsoNormal"&gt;Technically, it was not overly complex. It was a relatively straight-forward Java program (swing, some timer threading, and an existing Hibernate/MySql backend) but it definitely taught our team how to learn new tools in a short timeframe. I don't think any of us came into the class knowing much more than just the basic Java practices. The existing code's design patterns and extra technology like Hibernate were not things we had any familiarity with. However, the faculty were able to address some of those issues during weekly information sessions on different technologies we were using.&lt;/p&gt;                  &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;As for the final iteration, it was by far the most productive yet also most challenging so far. Not only did we need to get our project in perfect shape for demonstration, but we also had to prepare the actual presentation for the demo itself. During our iteration planning session, we realized that reaching every stretch goal initially set for us by our VP of Marketing was not feasible with the time we had, so we cut that feature. We wrapped up coding a couple days before the demonstration and were able to get all our code functioning for the demo. The presentation itself went extremely well and our team wrapped everything up quite well.&lt;/p&gt;                  &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Looking back, I think this first semester was pretty effective overall in terms of what I wanted to learn. I definitely got experience with making presentations in a business environment as well as functioning in more of a formal group than what I'm used to at work. I'm looking forward to the next course which will dive deeper into requirements gathering and more of the skills necessary to make real-world software projects successful. Until then, I'm going to relish this holiday season and relax. Happy holidays!&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_WhKLBnTlToM/R2b2hZkbVSI/AAAAAAAAAAk/5v_i4tclSu4/s1600-h/petreports.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_WhKLBnTlToM/R2b2hZkbVSI/AAAAAAAAAAk/5v_i4tclSu4/s400/petreports.JPG" alt="" id="BLOGGER_PHOTO_ID_5145070677977158946" border="0" /&gt;&lt;/a&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-6972725493126292153?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/6972725493126292153/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=6972725493126292153' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6972725493126292153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6972725493126292153'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/12/whirlwind-semester-draws-to-close.html' title='A whirlwind semester draws to a close'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_WhKLBnTlToM/R2b22JkbVTI/AAAAAAAAAAs/CYOU84WVcoY/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-118855835181402380</id><published>2007-12-06T15:06:00.000-08:00</published><updated>2008-11-12T20:23:22.321-08:00</updated><title type='text'>Ruby on Rails – where hast thou been all my life?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_wcx8o-SMuts/R1iAw9MkNNI/AAAAAAAAAAU/5xZg8oa7RYg/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_wcx8o-SMuts/R1iAw9MkNNI/AAAAAAAAAAU/5xZg8oa7RYg/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5141000553192764626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;Time flies when you’re busy, and boy have we been busy with the Construction class. Through all our classes at CMU West, we are supposed to keep track of our hours spent on school, and I noticed that with Construction my average hours spent per week is usually around 25 hours and above, which is significantly more than the usual 10-15 hours I spent on school. However, I attribute this to the fact that I thoroughly enjoy what I do in this class, and that I am a perfectionist trying to make a product that has production-level quality.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;What we have done so far is to develop a social-networking based Movie Recommendation website built on top of Ruby on Rails. Fully embracing the SCRUM development process, we have developed a fully-functional website that allows you to register, look up movie information, make movie recommendation, pull up showtimes and theater information and even purchase tickets in four sprints. While we are lagging behind a bit with writing our functional and integration tests, we have practiced the majority of the SCRUM process including stand-up meetings, story points, sprints and backlog items. Fully-embracing the Model-View-Controller paradigm of Rails, we have also developed views for the same functionality for the phone, so you can do all that jazz on your WAP-enabled phone now as well. Now, it’s amazing that our team of only three people was able to pull this off in just four weeks, and we have to thank Ruby on Rails for that.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;As a developer who has always had an interest and expertise in web development, I have an appreciation for Ruby on Rails. Its superb database-support via ActiveRecord and superfast development via the MVC model and customizable scaffolding support as well as pretty cool &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;AJAX&lt;/st1:place&gt;&lt;/st1:city&gt; support make web development such a breeze. In fact, I already “drank the kool-aid” and am already using Ruby on Rails for one of my non-profit websites, and I only wish that I could have done the same for some of the bigger non-profit websites that I have been working on for the past year (and still am). &lt;/p&gt;  &lt;p class="MsoNormal"&gt;I find myself learning a lot about Rails, and am almost done with reading our book on Rails cover-to-cover (even though that’s not even required). It turns out that the hardest part about learning Rails was the complicated setup and knowing all the conventions. As a person who is used to simple one-stop-installations in Windows, I found the installation, configuration and deployment of Rails to be rather complicated: installing Ruby, MySql, Java, NetBeans, Mongrel, FastCGI, environment.rb, so it helps that our adjunct professor is a Rails enthusiast and a real Vice President of Engineering at this company that is sold on Rails. Once our team had the basic Hello World going, adding new functionality was a breeze, provided that we know all the Rails convention, so now we are speedily cranking up new features like there’s no tomorrow.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-118855835181402380?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/118855835181402380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=118855835181402380' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/118855835181402380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/118855835181402380'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/12/ruby-on-rails-where-hast-thou-been-all.html' title='Ruby on Rails – where hast thou been all my life?'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_wcx8o-SMuts/R1iAw9MkNNI/AAAAAAAAAAU/5xZg8oa7RYg/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-4032067732448744123</id><published>2007-11-19T11:50:00.000-08:00</published><updated>2008-11-12T20:23:22.452-08:00</updated><title type='text'>Foundations of Software Engineering – Getting into the good stuff</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_WhKLBnTlToM/R0HptIPhGhI/AAAAAAAAAAM/Vr1zoM0urEU/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_WhKLBnTlToM/R0HptIPhGhI/AAAAAAAAAAM/Vr1zoM0urEU/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5134642011695028754" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;       &lt;p class="MsoNormal"&gt;Ah, how time flies when you're busy. It seems like just yesterday I was starting out and getting to know my team. However, just last Saturday we performed a demo to our Marketing VP (one of the faculty members) that showed off almost all the functionality he was interested in. So we're into the home stretch with a pretty good idea of where to go.   &lt;!--[if !supportLineBreakNewLine]--&gt;&lt;br /&gt;&lt;!--[endif]--&gt;For some background, the first course, Foundations of Software Engineering, consists of taking a piece of existing code and upgrading it with new functionality. We have taken a basic project management tool (actually the results of last year's students' work in this course) and added the capability for it to associate tasks with specific users, log time against tasks, show reports, and show a personal to-do list of the things a specific user needs to see. We've been actually coding over the course of two three-week iterations so far, with one more to come.&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;We're nearly done with the basic requirements, so this upcoming iteration I'll be able to spend some time untangling and refactoring the code in some areas to make it more maintainable and understandable (possibly even testable). The rest of the team will be polishing up the UI and functionality based on the VP of Marketing's feedback on how he wants the end result to look. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;I'm definitely understanding a lot more of what goes into a project – how the decisions you make to start with are rarely 100% correct. We've been splitting up some of the work in non-optimal ways over the past iterations which we are hoping we can rectify with our work on the upcoming one. I'm sure that even then, we'll be able to look back and reflect on some ways to improve. I plan on breaking down the structure of the first course in its entirety once I'm finished, but if there are any specific topics anyone is interested in, feel free to leave it as a comment and let me know.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-4032067732448744123?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/4032067732448744123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=4032067732448744123' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/4032067732448744123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/4032067732448744123'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/11/foundations-of-software-engineering.html' title='Foundations of Software Engineering – Getting into the good stuff'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_WhKLBnTlToM/R0HptIPhGhI/AAAAAAAAAAM/Vr1zoM0urEU/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1185993294688470310</id><published>2007-11-12T10:17:00.000-08:00</published><updated>2008-11-12T20:23:22.686-08:00</updated><title type='text'>Kicking off the Construction class - woohoo!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RziZUhD0LSI/AAAAAAAAAFM/oqubEh-mcCE/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RziZUhD0LSI/AAAAAAAAAFM/oqubEh-mcCE/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5132020353139485986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;So here I am at the beginning of the Construction class that is slated for the next 1.5 semesters all the way up to the summer of 2008. In construction, we’ll be doing the main core software engineering activity: writing code. As a student of the technical track who thoroughly enjoys programming, I am certain that I am going to have a lot of fun with this class. In fact, when the content of the class was revealed to me a few weeks ago, I was already overly excited and couldn’t wait to start.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Well, the project that we are going to implement is a social-networking-based MovieRecommender portal that we touched upon in the last several semesters. Yup, it’s the same project that we had gathered requirements and built a mock website for in Spring 2007, and the same one we architected in Summer 2007. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;What’s cool is that we’ll be implementing the website in Ruby on Rails, which I think is going to be a terrific opportunity for me to learn about this up and coming web framework. What I have read so far about Ruby and Rails is very impressive and promising, so I am looking forward adding this language to my skill set and hopefully even using it for my next non-profit or hobby website that I’ll create.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Now, what’s really cool is that we are not just building a plain-old static website, we are also going to build a mobile version as well to be run on PDAs and cellphones. Now that’s strategic, because the mobile industry is growing in the United States at a rapid rate, and having these skills is certainly a plus on your resume (besides the ego-boost you get by showing your girlfriend this application you wrote directly on her cellphone). To top this all off, Carnegie Mellon West even equipped each student in this class with a fancy-dancy Nokia N95 phone that we can use for the next three “minis” to test our application, including a 2 gig memory card and pre-paid SIM cards. In other words, I am getting bragging rights to take revenge on all those Iphone owners and can pretend that I actually have the money to buy a $700 phone!&lt;/p&gt;  &lt;p class="MsoNormal"&gt;So, as you can see, the CMU folks saved the best class for last. So far, I’ve just been setting up my development environment and reading Ruby on Rails books, and our team already met once to build our first Hello World pages. Throughout the last ten days since this class has started, I have already learned a ton of new stuff, both in terms of programming languages, but more so about the tools. As a person who has been solely focused on Microsoft technologies since ever, there were a lot of “firsts” for me. I had to install, configure and learn MySql, MySql Admin, Subversion, NetBeans, Ruby, Rails, Mongrol… heck I even had to install the latest Java runtime, as apparently I don’t even have that (I know, embarrassing for someone here in Silicon Valley)! Anyways, I think by next week, our team will already be cranking out Movie Recommender web pages like there’s no tomorrow. I am looking forward to it, yay!&lt;/p&gt;  &lt;p class="MsoNormal"&gt;PS: Have I mentioned how cool this class is going to be?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1185993294688470310?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1185993294688470310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1185993294688470310' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1185993294688470310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1185993294688470310'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/11/kicking-off-construction-class-woohoo.html' title='Kicking off the Construction class - woohoo!'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RziZUhD0LSI/AAAAAAAAAFM/oqubEh-mcCE/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-5089459404275629893</id><published>2007-10-26T15:36:00.000-07:00</published><updated>2008-11-12T20:23:22.791-08:00</updated><title type='text'>Software Metrics Before and After (Part II)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_wcx8o-SMuts/RyJsKQk4dXI/AAAAAAAAAAM/L75j9_2BoZ4/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_wcx8o-SMuts/RyJsKQk4dXI/AAAAAAAAAAM/L75j9_2BoZ4/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125778249405199730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;Last week we wrapped up the 7-week Software Metrics class, and while I realize that I have learned a lot about Software Metrics, I must admit that this hasn’t been my favorite class. That actually comes as a surprise to me, because I have mostly enjoyed and was even thrilled about previous classes so far.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In this class we were given two problem statements of two fictitious development companies facing software management challenges, and were asked to analyze, and research the companies’ development management practices and propose metrics initiatives catered to them that allows stakeholders to better estimate and predict software development schedules. Throughout this process, we learned about the Goal-Question-Metric process, earn-value charts, burn-up/down charts, how to design balanced dashboards and reports, the social impact of measurement on developers, change management and of course a variety of software metrics commonly used in the industry such as function points, velocity, story points, and cyclomatic complexity. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;The class made a point about the importance of software metrics and correct measurements, and how it enables development managers and even non-technical managers to better manage time, money and development resources as well as accurately predict completion dates. Throughout taking this class I kept on thinking about the consulting job I did for my friend. When prompted about the progress of that project I kept on saying that I was almost done. The thing is, I said for four years! I mostly attribute this to my inconsistent velocity (I would work on the consulting project only when time permitted and whenever I wasn’t preoccupied with my non-profit work) and to scope creep or changing requirements. If I only had measured key metrics in the past years, I could have charted these metrics out to see why and when the project kept on slipping.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This class was very different from the previous semesters, for we didn’t do any role-playing. Professors were professors, and students were students. Instead of interacting with faculty as stakeholders, we analyzed the problem statements, conducted research, asked questions, conducted further research, discussed with team members during plenary sessions &lt;span style=""&gt; &lt;/span&gt;and then developed a solution in the form of a written proposal that we later presented in 30-minute presentations to the entire class. This problem-based learning approach turned out to be not my strength, because I am used to being able to simply walk into people’s offices to resolve ambiguities about requirements instead of being on my own in making decisions based on only what’s been given to us.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;On the other hand, what I liked about this class is that we were introduced to more software lifecycle management. In the first problem statement we concentrated on the unified process, and in the second problem statement we focused on SCRUM. Having practiced SCRUM successfully at my professional work for more than a year, I became the subject matter expert on this in the class and provided my teammates with my experience and even real SCRUM charts and reports from work.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;All in all, while I agree that software metrics is key to successful software development management, I thought that the art of designing a report or developing a metrics initiative might be better suited to program managers and not developers. &lt;span style=""&gt; &lt;/span&gt;In fact, I even spoke with our dean of education about my feelings toward the class, and he was very receptive to what I had to say.&lt;span style=""&gt;  &lt;/span&gt;That’s another great thing about this program – there is such strong student support, and the faculty are very keen to take our feedback on the classes as they evaluate the curriculum.&lt;span style=""&gt;  &lt;/span&gt;With that, I am enjoying my one-week vacation and look forward to the construction class that starts next week. We’ll be doing a social-networking website for smart devices with Ruby and Rails. How cool is that?!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-5089459404275629893?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/5089459404275629893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=5089459404275629893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/5089459404275629893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/5089459404275629893'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/10/software-metrics-before-and-after-part.html' title='Software Metrics Before and After (Part II)'/><author><name>Minh Nguyen</name><uri>http://www.blogger.com/profile/16468756974276261555</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_wcx8o-SMuts/RyJsKQk4dXI/AAAAAAAAAAM/L75j9_2BoZ4/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-6442954459364759427</id><published>2007-10-26T11:29:00.001-07:00</published><updated>2008-11-12T20:23:22.919-08:00</updated><title type='text'>Just Getting Started here at Carnegie Mellon West!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RzDlW-Jr77I/AAAAAAAAAFE/XPlAkUTFWAo/s1600-h/nick-cmu-head.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RzDlW-Jr77I/AAAAAAAAAFE/XPlAkUTFWAo/s200/nick-cmu-head.JPG" alt="" id="BLOGGER_PHOTO_ID_5129852158378504114" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;Hello, I’m Nick, a first-year student at Carnegie Mellon West, in the MS Software Engineering program.&lt;span style=""&gt;  &lt;/span&gt;I’m excited to share my experiences with you as I start this two-year program and hope you’ll enjoy reading my stories as well!&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;Well, here I am, back at Carnegie Mellon, a little bit to my surprise. I graduated from Carnegie Mellon (&lt;st1:city st="on"&gt;Pittsburgh&lt;/st1:city&gt;) undergraduate in 2006, choosing to accept a job from Google here in &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Mountain View&lt;/st1:place&gt;&lt;/st1:city&gt;, over a fifth-year Master's there. I really felt like I wanted real-world experience and a job instead of spending more time in academia. So I came out here to &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt; and started work. Things at Google have been great, but after a few months I realized that there were real skills I was lacking in terms of operating effectively at my job.&lt;span style=""&gt;  &lt;/span&gt;I knew a lot of about algorithms and theory but not much about organizing a team or design patterns for software. After attending an info session at Carnegie Mellon’s west coast campus, I said to myself, "If they teach what they say they teach, this is exactly what I'm looking for."&lt;br /&gt;&lt;br /&gt;This program's goals are extremely functional and real-world. The faculty strive to get you change your mind-set, so its almost like you’re not in an academic classroom – you’re in a work-like environment with a team of people who are all working together to accomplish the same goals. I've already been able to apply some of the things I've learned to my work habits at Google, specifically on how to be effective in meetings. Getting a real experience on how to create good software is something that, to me, is much more valuable than yet another way to solve the traveling salesman problem. I'm sure I'll learn some new approaches to things while I'm in the classroom, but what’s cool is that I learn just as much from my teammates who are all working at other tech companies.&lt;br /&gt;&lt;br /&gt;I think I'll get more into the specifics of the program over the coming weeks, but I'll give a brief overview of how things have gone so far. After a weekend orientation to get started (which was loads of fun) we were given an overview of a software program that each team will be expected to upgrade and release as the next version. Teams consist of three or four people, and my team has a pretty diverse background. There's another person who, like me, is about a year out of undergraduate and works for a local software company, a second with several years of work experience who works for an online video advertising company, and a third who has many years of experience who works for a company doing embedded hardware and systems. In the orientation, we started to gel really quickly and have gotten off to a good start. The first few weeks we spent getting up to speed on XP/Agile programming strategies as well as mocking out the UI changes and user scenarios we'll be programming towards. We've just taken our first steps towards coding and I'm looking forward to applying XP to see how effective it is for our team.&lt;br /&gt;&lt;br /&gt;In another 2 weeks, we’ll have a brief demo of how far we have gotten the program that we just started modifying a week ago--so it'll be interesting to see if we can get as far as we hope.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-6442954459364759427?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/6442954459364759427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=6442954459364759427' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6442954459364759427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6442954459364759427'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/10/just-getting-started-here-at-carnegie.html' title='Just Getting Started here at Carnegie Mellon West!'/><author><name>Nick Lynn</name><uri>http://www.blogger.com/profile/07482622444902579959</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RzDlW-Jr77I/AAAAAAAAAFE/XPlAkUTFWAo/s72-c/nick-cmu-head.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-3465860581080000204</id><published>2007-10-12T15:55:00.000-07:00</published><updated>2008-11-12T20:23:23.216-08:00</updated><title type='text'>May I present to you… Scotland Yard?</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJXpeJr7ZI/AAAAAAAAAAc/mv4uHn6G178/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJXpeJr7ZI/AAAAAAAAAAc/mv4uHn6G178/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125755695880990098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;Do you know those technical software engineers that are geniuses in their field, but lack every possible social or business skill? I am talking about those engineers that always know better, but just can’t explain or express themselves. Having worked in &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt; for a while now, I’ve encountered my share of these guys and always find it quite shocking when they dive into a presentation without engaging the audience, providing an agenda or just even setting the stage appropriately. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;Well, CMU is aware that many engineers may not have had training in these important skills, so the Carnegie Mellon West program seeks to teach a lot of soft skills that are often not necessarily related to the primary responsibilities of a software engineer. Among those skills are team-building skills, technical writing, being change agents, but an important one is of course the art of presenting effectively.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;So, it’s of no coincidence that throughout the program, we are provided with ample opportunities to speak publicly. Often it’s part of the class, where we present some of our deliverables to stakeholders (aka our faculty) but also often to other classmates. I usually do one or two presentations per class, and it usually also involves remote students by use of LiveMeeting. In most of the presentations, besides getting a grade on the material we present, we are also receiving a lot of constructive feedback and critiques—both from our faculty as well as from our peers.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In addition to these class-specific presentations, each Carnegie Mellon West student must also present a topic of his/her choice during a monthly event where local students flock to campus and remote students dial-in on a conference bridge. For reasons that are still unknown to me, this monthly meet-up is referred to as Scotland Yards (the police force of greater &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;London&lt;/st1:place&gt;&lt;/st1:city&gt;). I suppose it’s named this way, because it is a meeting where members of the same craft come together and share their thoughts and experience about an aspect—in our case about software engineering. I suppose it’s another name besides using the usual “Birds of a Feather” term you often see so much at technical conferences.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Anyways, during Scotland Yards, typically three or four students present for 15 minutes each on a topic of their choice in the field of Software Engineering. I really enjoy those Scotland Yards, because it’s a nice informal evening where local students come together, meet each other over pizza/sandwiches and then get a survey of what’s hot and shaking in &lt;st1:place st="on"&gt;Silicon Valley&lt;/st1:place&gt;. Topics are extremely diverse, and include for instance content such as working in distributed teams, tool-assisted code reviews, technical interviews, web-deployment, Ajax, usability testing, Java unit testing tools, Adobe Flex, personal experiences with CMMI, enterprise search engines, and requirements management tools just to name a few. For me, these Scotland Yards are often an eye-opener to see what’s cooking outside of my Microsoft bubble (and to realize how much I am missing out being so focused on Microsoft technologies only).&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Well, this past Monday, I had the opportunity to present my Scotland Yard about “Internet Censorship and Circumvention.” This was a topic that I have always been interested in given that my own country &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;Vietnam&lt;/st1:place&gt;&lt;/st1:country-region&gt; heavily exercises internet censorship. So for the past weeks, I’ve researched internet circumvention techniques, found very interesting tools and techniques and presented them with my own enthusiasm, but also with much interest and participation from the audience. The hard part turned out to be managing the audience’s many questions well enough so that I won’t run over my allotted 15 minutes! Hehe, that was a fun presentation, and I am looking forward seeing the topics that my Class of 2008 peers will be rolling out this year.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-3465860581080000204?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/3465860581080000204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=3465860581080000204' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3465860581080000204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/3465860581080000204'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/10/may-i-present-to-you-scotland-yard.html' title='May I present to you… Scotland Yard?'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJXpeJr7ZI/AAAAAAAAAAc/mv4uHn6G178/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-4050223374297814717</id><published>2007-09-17T14:57:00.000-07:00</published><updated>2008-11-12T20:23:23.310-08:00</updated><title type='text'>Software Metrics Before and After (Part I)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJX5OJr7aI/AAAAAAAAAAk/OrvzJg-6v4I/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJX5OJr7aI/AAAAAAAAAAk/OrvzJg-6v4I/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125755966463929762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;You may recall that there are two tracks within the MS Software Engineering program at Carnegie Mellon West, the Technical Track (which I’m in) and the Development Management Track.&lt;span style=""&gt;  &lt;/span&gt;During our first year, the classes were combines – since, regardless of track – we needed to have the same foundation of software knowledge.&lt;span style=""&gt;  &lt;/span&gt;Now, as we enter our second year, our curriculum splits according to track. Those who aspire to be Software Architects continue on the Technical Track, while those who aspire to be development managers continue on the Development Management Track. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;For me, that means that I will be joining the folks who have opted to stay close to coding, designing and architecting. I am actually quite surprised by the small number of students going to the Technical Track—we are only ten students. The remaining 30+ students decided to be dev managers, I suppose.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This semester starts out with a 7-week class on “Metrics for Software Engineers”, a problem-based learning approach to analyze, learn, and understand metrics commonly used in software engineering, as well as actually propose software metrics to common problems and case studies. Honestly, I never realized that software metrics could be a topic of its own, and especially given my bias that software metrics is not very technical in nature, I must admit that I am currently a bit skeptical of the applicability of this class to my development and growth. However, I’ll shall keep my eyes and mind open as I participate in class.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;What I understand so far (very little) is that Software Metrics is a topic that encompasses the art of defining units and process of measurements related to software engineering for the purpose of improving the success of the project. I suppose this would be things such as bug count, lines of code, the rate of actual bug count decrease vs. expected, the glide path of test cases performed before shipping a product. To me, it doesn’t sound like a topic that is very in-depth or insightful to a software engineer , so I hope that this class can convince me otherwise.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Logistically, the class is structured differently from previous semesters. First of all, while our first-year classes were all 14 weeks long (standard semester length), this class is only 7 weeks long, which means it will go by very quick. Secondly, we are stepping out-of-story. This means that our faculty will simply be themselves, and won’t pretend to be some VP of Engineering of some fictitious company. Lastly, and this is probably the most significant change, the class uses a problem-based learning approach. We will look at case studies and problems, and as a team of ten students we come up with questions that we need to answer ourselves, find our own readings, do our own research and discuss readings in a plenary group, as we come up with proposals ourselves and critique each other on the proposals. It will take a lot of student initiation, which means we have the power to drive the class direction, while of course still being guided by our faculty.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Let’s see what this class has to offer.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-4050223374297814717?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/4050223374297814717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=4050223374297814717' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/4050223374297814717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/4050223374297814717'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/09/software-metrics-before-and-after-part.html' title='Software Metrics Before and After (Part I)'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJX5OJr7aI/AAAAAAAAAAk/OrvzJg-6v4I/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-8283789149134096423</id><published>2007-08-22T10:44:00.000-07:00</published><updated>2008-11-12T20:23:23.397-08:00</updated><title type='text'>Software Architecture Before and After (Part III)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYAeJr7bI/AAAAAAAAAAs/_1vc93IJrfE/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYAeJr7bI/AAAAAAAAAAs/_1vc93IJrfE/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756091017981362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;The second half of the Software Architecture class consisted of applying the knowledge we had gained in the first half to the Movie Recommender product. For those who don’t know, the Movie Recommender product is a fictitious website/theme that follows us Carnegie Mellon West students throughout our entire two-year program. Last semester, we elaborated on the requirements of it in the Requirements class, this semester we architected it, and next semester we’ll actually implement it given our requirements and designs.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;My team went through great lengths in analyzing the requirements that were given to us, and architected a system for a Movie Recommender product that combines a service-oriented architecture with an event-driven architecture, all while applying the typical Model-View-Controller and 3-tier architectural pattern. Sounds complicated and over-engineered? Well, we have our reasons for this architecture and if you care to hear why, you should read our 26-page architecture document.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;It was very practical to apply our newly-learned knowledge about architecture to the Movie Recommender product, and it took our team numerous iterations to finalize the design. During the semester, we had to provide bi-weekly status reports as well as a “check-in” presentation to our VP of Engineering (role-played by a professor) on our current proposed architecture – a presentation that we thought we had mastered.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Boy, were we wrong. We were G-R-I-L-L-E-D during that presentation, seriously G-R-I-L-L-E-D by the VP of Engineering on many aspects of our architecture (for very good reasons, I must say). While we initially panicked, by the time our presentation ended (after taking up an hour more than we intended to speak), we realize that it was good that we had our VP of Engineering check on this before we delivered the final designs. As a result of his feedback, we continued to iterate over our designs, and then validated our designs by prototyping parts of our architecture using Java/J2EE/Derby and Apache, and finally delivered a convincing presentation on our sound architecture in the last week.&lt;span style=""&gt;  &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Looking back at this semester, I feel that I have learned a lot about architecture. I thoroughly enjoyed the research we did on the different architectural styles in the first half of the semester, and I thought it was neat for us to get our hands dirty with actually architecting a product from the ground up. While we did learn about documenting architecture (sequence/deployment/network/component &amp;amp; connector diagrams), I felt that it would have helped to learn more about official UML diagramming, but I’ve been told that that is yet to come in the next semesters. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;The Software Architecture class has now come to an end, and with it my first half of the two year program at Carnegie Mellon West. Time flies so quickly when you’re busy. As I congratulate the Class of 2007 students who had their graduation ceremony just last weekend, I am telling myself that I am half-way there. Did I mention that there are only 356 days left until my graduation? &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-8283789149134096423?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/8283789149134096423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=8283789149134096423' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/8283789149134096423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/8283789149134096423'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/08/software-architecture-before-and-after.html' title='Software Architecture Before and After (Part III)'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYAeJr7bI/AAAAAAAAAAs/_1vc93IJrfE/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1616601665690924575</id><published>2007-07-30T10:23:00.000-07:00</published><updated>2008-11-12T20:23:23.488-08:00</updated><title type='text'>Balancing school and work</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYG-Jr7cI/AAAAAAAAAA0/jibG0RGg8EI/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYG-Jr7cI/AAAAAAAAAA0/jibG0RGg8EI/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756202687131074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;/span&gt;Oh yikes, I haven’t blogged for a while now, and that’s because I have been awfully busy with school and work. We are releasing a new version of our product at work, and I find myself staying in the office until really late for the past several weeks now (including weekends). At the same time, at school we are coming close to the end of the Software Architecture class, and in this final stretch we are expected to deliver a full Software Architecture document based on our research and prototyping and a final presentation to our stakeholders.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;People ask how I can manage to perform well at a demanding job while finding time to deliver for school, and honestly I don’t know. Somehow I manage to get things done, but I must add that unlike other students in our cohort I do not have any personal commitments yet requiring me to be home early. I am the only member of my immediate family living here in Northern California, I am unmarried and don’t have children, and my girlfriend lives in New York City, so the only folks who care about the time I spend at home would be my two cats, but let’s be honest here, they really just want me to open those food cans for them.&lt;span style=""&gt;  &lt;/span&gt;My classmates who are married and have children to raise must find it much more difficult to strike a balance. &lt;span style=""&gt; &lt;/span&gt;I commend those students who manage to work on their master’s degree while raising a family, and I am certain that that is probably a much harder situation to balance than my current situation.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Life has been pretty busy this month. I wake up, reply to a few personal emails (while a large number remain unread), go to work (and work through lunch), go to school, come home to do homework while having dinner, go to sleep and start a similar cycle again the next day. Sometimes, I come home exhausted and just veg out by watching stupid videos on &lt;i style=""&gt;YouTube&lt;/i&gt; before falling asleep. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;I sometimes feel like it’s not me who manages my time to finish everything, but my Outlook calendar that accepts appointments on my behalf and each morning reminds me of school and work deadlines and what I have to do for the day (if I ever lose my Outlook calendar, I think I’ll be running around like a duckling looking for his mom). In times like these, our school advisors stress the importance of exercising, eating healthy and making time for personal fun, but much easier said than done. I do make an effort of buying more healthy food, and by putting a mandatory Volleyball appointment on my weekly calendar, I make a point of attending this appointment no matter how busy I am, so I can ensure that at least I’ll get three hours of exercise and fun each week.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;On the other hand, a nice side effect of having both academic and professional demands peak at the same time is that after both demands die down, I’ll truly be able to relax. You see, I already planned and purchased the flights for my entire family to meet up in &lt;st1:state st="on"&gt;&lt;st1:place st="on"&gt;New York&lt;/st1:place&gt;&lt;/st1:state&gt; when my school vacation starts in two weeks. In fact, one of my classmates will drive me to the airport right after our final presentation, and I can’t wait to spend time with my loved ones in &lt;st1:state st="on"&gt;&lt;st1:place st="on"&gt;New York&lt;/st1:place&gt;&lt;/st1:state&gt; without worrying about school and work.&lt;/p&gt;  &lt;p style="font-style: italic;" class="MsoNormal"&gt;Next: Software Architecture Before and After (Part III)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1616601665690924575?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1616601665690924575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1616601665690924575' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1616601665690924575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1616601665690924575'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/07/balancing-school-and-work.html' title='Balancing school and work'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYG-Jr7cI/AAAAAAAAAA0/jibG0RGg8EI/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-4626951175089505716</id><published>2007-07-09T12:33:00.000-07:00</published><updated>2008-11-12T20:23:23.668-08:00</updated><title type='text'>Spending a 2 ½ week vacation in Europe in your 1-week summer vacation</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYN-Jr7dI/AAAAAAAAAA8/VEQIgf0Odqw/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYN-Jr7dI/AAAAAAAAAA8/VEQIgf0Odqw/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756322946215378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;For undergraduate students, summer vacation is that special time in June/July when you spend time relaxing, taking a pleasure trip somewhere out-of-town, and doing absolutely no work. For most full-time graduate students, that definition remains unchanged. However, for us Carnegie Mellon West students, it’s slightly different, as you don’t really get a long summer vacation, but this blog entry will explain this in further detail.&lt;br /&gt;&lt;br /&gt;Although the program is called a “part-time program” because all of us work during the day at our full-time jobs, we are still carrying a full academic load of 12 units per semester.  I often refer to myself as a full-time student &lt;em&gt;&lt;strong&gt;and&lt;/strong&gt;&lt;/em&gt; a full-time employee – certainly my time is completely filled with one or the other.  As a result of different deadlines and schedules, the term “vacation” starts to take on new meanings.  I sometimes have weeks where I have school vacation, but still show up in my office at work Monday through Friday, or sometimes I take days off from work but still meet with my schoolmates in the evening to finish up deliverables. Real vacation as you know it is now constrained to the intersection of your school and work vacation. Unfortunately, for some people those two sets are disjointed, leaving you with … well, nada.&lt;br /&gt;&lt;br /&gt;I assume that most students have the flexibility to schedule their work vacation around school vacation. Fortunately we are given our vacation schedule well in advance. In fact, the following was/is my actual vacation schedule (which was given to me when I started the program in August 2006).&lt;br /&gt;&lt;br /&gt;Saturday, 12/16/06 - Sunday, 01/07/07 (three weeks)&lt;br /&gt;Saturday, 02/24/07 - Sunday, 03/04/07 (one week)&lt;br /&gt;Saturday, 04/21/07 - Sunday, 04/29/07 (one week)&lt;br /&gt;Saturday, 06/16/07 - Sunday, 06/24/07 (one week)&lt;br /&gt;Saturday, 08/11/07 - Sunday, 09/02/07 (three weeks)&lt;br /&gt;Saturday, 10/20/07 - Sunday, 10/28/07 (one week)&lt;br /&gt;Saturday, 12/15/07 - Sunday, 01/06/08 (three weeks)&lt;br /&gt;Saturday, 02/23/08 - Sunday, 03/02/08 (one week)&lt;br /&gt;Saturday, 04/19/08 - Sunday, 04/27/08 (one week)&lt;br /&gt;Saturday, 06/14/08 - Sunday, 06/22/08 (one week)&lt;br /&gt;&lt;br /&gt;The rule of thumb is that you always get three weeks over the Christmas holiday, three weeks between your first and second year, and a single week in the middle of every semester. Since we are having three semesters per year, we really don’t get an entire summer off (unlike other full-time grad students). So, the art of actually having a great vacation and recuperating from work and school is then to plan well in advance so that you can schedule your work vacation around these dates. If you and your significant other are planning to have a baby, subtract 9 months from those bigger three-weeks vacation chunks to be safe…. you get the idea.&lt;br /&gt;&lt;br /&gt;As you can tell from my schedule, my one-week summer vacation just passed.  However, I spent the last 2 ½ weeks roaming around in New York, Berlin, Rome and Venice, and in fact my last homework assignment was sent from New York City, while my last blog entry on Software Architecture was written from Berlin. How did I manage to go on vacation for 2 ½ weeks? Well, for one, I left on vacation a few days earlier than my classmates, because I had to attend an important event in Germany that I couldn’t move around. I had to request an exception to leave early and negotiated with my team to do more work prior and after my vacation. Secondly, I was expecting to do school work during the second half of my trip, but the bed and breakfasts that we stayed at in Italy did not have internet, and finding internet cafes was more difficult than I expected, so I ended up having a 2 ½ week vacation (no, really, I did try to participate in school meetings, since I came prepared with my laptop, headphones, Skype and LiveMeeting set up).&lt;br /&gt;&lt;br /&gt;So overall, vacation schedules at Carnegie Mellon West ain’t that bad. They do provide opportunities to recuperate so that you don’t get burned out and go postal, and since you are dealing in relatively small teams, you can always negotiate with your teammates and the faculty for custom vacations. With that flexibility, the only other worry I had in the last two weeks was “who is going to swing by and feed my cats?”, but I suppose this is not of your interest. Cheers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-4626951175089505716?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/4626951175089505716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=4626951175089505716' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/4626951175089505716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/4626951175089505716'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/07/spending-2-week-vacation-in-europe-in.html' title='Spending a 2 ½ week vacation in Europe in your 1-week summer vacation'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYN-Jr7dI/AAAAAAAAAA8/VEQIgf0Odqw/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-7114648839443452410</id><published>2007-06-20T16:41:00.000-07:00</published><updated>2008-11-12T20:23:23.829-08:00</updated><title type='text'>Software Architecture Before and After (Part II)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYVeJr7eI/AAAAAAAAABE/_xcgFNLuxFY/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYVeJr7eI/AAAAAAAAABE/_xcgFNLuxFY/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756451795234274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;At the beginning of the semester, I said that I am going to write about “Software Architecture Before and After.” Well, this is the “and” part, since I just completed the first half of the semester.  Consider this my mid-year evaluation of the program.&lt;br /&gt;&lt;br /&gt;The Architecture course has been a blast so far, and I am thrilled to have learned, analyzed, and studied so many different aspects of software architecture.  For the first four weeks of this semester, we studied different architectural styles such as peer-to-peer, event-based, service-oriented architectures, as well as the use of pipe-and-filters and other best practices commonly used in architecting software. The thing that’s really cool is that we don’t just study these styles from some boring books, but instead do case studies of popular “cutting-edge” software programs.  In fact, among the ones we analyzed were some that I actually use extensively as an end-consumer:  the P2P-based Voice-over-IP solution &lt;em&gt;Skype&lt;/em&gt;, &lt;em&gt;Housingmaps&lt;/em&gt; (the marriage between Google Maps and Craigslist), &lt;em&gt;Sony Vegas&lt;/em&gt; (the very cool video editing tool) – just to name a few.  My new and excellent team (this time consisting of employees from companies such as Visa International, Lockheed Martin, Yahoo and Microsoft) did a great job in analyzing each architectural style, researching how they were applied in other software programs and presenting them in papers.&lt;br /&gt;&lt;br /&gt;Next, our team was also tasked to collaborate with another team on researching and presenting an architectural style of our choice. Through some good teamwork we delivered a presentation and handout on the Blackboard architectural style, with which I was thoroughly intrigued by its unorthodox style.&lt;br /&gt;&lt;br /&gt;Learning and reporting on architecture alone, however, is not enough;  so, equipped with new knowledge we were then tasked in applying that knowledge to a new piece of software, then architecting that same piece of software.  A problem statement with distinct (and diverse) requirements was presented to us, and our team developed – albeit through some very heated discussions – an architecture for this software using the styles we learned before. The exercise of evaluating and documenting the architecture was well worth it, but I’ll dwell on that in a future blog entry since that will be the focus of the second half of this semester.&lt;br /&gt;&lt;br /&gt;Overall, I just think it’s so cool to study software architecture by looking at commonly-used software programs.  During our research, we also looked at programs and frameworks such as &lt;em&gt;Wikipedia&lt;/em&gt;, &lt;em&gt;Joost&lt;/em&gt;, &lt;em&gt;ASP.NET&lt;/em&gt; and &lt;em&gt;IBM WebSphere&lt;/em&gt;, and the applicability of what I have learned to my work was immediate.  I was able to take the components of the software that I write at my work and neatly categorize them into these different architectural styles.  In addition, my manager at work asked me last time to look into applying a Service-Oriented architecture onto the next component that I will be working on, and asked me if I was familiar with SOA.  I smiled and told him that I just wrote a paper on it. That’s very cool, and I can’t wait to apply this knowledge even before this semester even ends.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-7114648839443452410?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/7114648839443452410/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=7114648839443452410' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/7114648839443452410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/7114648839443452410'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/06/software-architecture-before-and-after.html' title='Software Architecture Before and After (Part II)'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYVeJr7eI/AAAAAAAAABE/_xcgFNLuxFY/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-6193831771765721433</id><published>2007-06-08T11:55:00.000-07:00</published><updated>2008-11-12T20:23:23.952-08:00</updated><title type='text'>The New Software Industry and other networking opportunities at Carnegie Mellon West</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYeeJr7fI/AAAAAAAAABM/DSyPXSxErq0/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYeeJr7fI/AAAAAAAAABM/DSyPXSxErq0/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756606414056946" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Carnegie Mellon West is located in the heart of Silicon Valley, and the proximity of the school to the industry that it serves brings along a multitude of advantages, most notably networking opportunities and speaker events.&lt;br /&gt;&lt;br /&gt;The student team that you are placed in each semester is already a small networking forum itself. Since the teams comprise of students of diverse (and often well-known) companies, students can learn about different practices in Silicon Valley as well as from each other’s experiences. The question of “how do you do X at your company?” is often asked within our teams, and it’s always interesting to learn what works and does not work for a given company.&lt;br /&gt;&lt;br /&gt;At a broader level, the Carnegie Mellon network expands across teams, faculty and alumni as well. We are encouraged to use LinkedIn to network with other members of the Carnegie Mellon West community (consisting of some 3000 CMU alumni in the Bay Area alone), and we often use this network to recommend and refer potential new hires for each other’s companies (or even find jobs for ourselves). Oftentimes, you also meet many CMU alumni at the various events that Carnegie Mellon West organizes. Each year, for instance, our campus plays host to the “Tour de Silicon Valley” where selected students from the Pittsburgh campus tour different software companies here in the valley. I served as their host presenter during their stop here at Microsoft, and in return was able to attend the corporate presentation at Google a few days afterwards (that needed a little bit of explaining, there, haha).&lt;br /&gt;&lt;br /&gt;Carnegie Mellon West also usually brings speakers from the industry to the development community.&lt;br /&gt;&lt;br /&gt;Last year, I attended a talk by Apple Co-Founder Steve Wozniak on “Engineering as an Art Form.” At this event, we were able to first mingle and talk with Steve in person over some light hors d’oeuvres. Following that, Steve gave a very funny, autobiographical talk about how Silicon Valley came to be, and his involvement with Apple (interestingly, he talked about everything but “engineering as an art form” though).&lt;br /&gt;&lt;br /&gt;Last month, Carnegie Mellon West worked in conjunction with UC Berkeley to sponsor “The New Software Industry: Forces at Play, Business in Motion.” Being that this was an event organized by my alma mater, my current school and hosted at my current workplace, I couldn’t say “No” to the event; so during this one-day conference, I heard professors, university deans, CEOs, VPs, authors, venture capitalists and many other key persons in this industry talk about Web 2.0, SaaS, “perpetual betas”, investment opportunities, the role of open source and other topics that are shaking the new software industry. Speakers included Craig Mundie (Microsoft Chief Research and Strategy Officer), Adam Blum (Vice President of Engineering, Mobio Networks), Michael Cusumano (Distinguished Professor, MIT Sloan School of Management), Paul Maglio (Senior Manager of Service Systems Research of the IBM Almaden Research Center), and Kim Polese (CEO, SpikeSource, Inc) -  just to name a few.&lt;br /&gt;&lt;br /&gt;In addition, many professors of CMU or Berkeley moderated the sessions, shared their wisdom or presented themselves at this event. As a student in the technical track, however, I was hoping to see more technical content or discussions about the difficulties or trends of the new software industry, but I suppose this conference was more geared towards the VCs, PMs and other stakeholders. The conference content and videos are, by the way, available online at &lt;a href="http://west.cmu.edu/sofcon/5404216.html"&gt;http://west.cmu.edu/sofcon/5404216.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Just this week, running out from a team meeting on campus, I caught the last part of Jim Burton’s presentation on campus where he spoke about his efforts as a development manager at Guidewire.com to fine-tune their agile development methods. That presentation was also made available to remote students via LiveMeeting, and Carnegie Mellon West is thinking of instating these speaker events as a monthly “dialogue on software management.”&lt;br /&gt;&lt;br /&gt;As you can tell, there are many networking and learning opportunities. Finding the time in my busy schedule to attend them is usually the hardest part.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Next: Software Architecture Before and After (Part II)&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-6193831771765721433?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/6193831771765721433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=6193831771765721433' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6193831771765721433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/6193831771765721433'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/06/new-software-industry-and-other.html' title='The New Software Industry and other networking opportunities at Carnegie Mellon West'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYeeJr7fI/AAAAAAAAABM/DSyPXSxErq0/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1616037293739628048</id><published>2007-05-21T14:11:00.000-07:00</published><updated>2008-11-12T20:23:24.044-08:00</updated><title type='text'>Software Architecture Before and After (Part I)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_IJ3V60Nvg38/RyJYluJr7gI/AAAAAAAAABU/UuA164k5KXM/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_IJ3V60Nvg38/RyJYluJr7gI/AAAAAAAAABU/UuA164k5KXM/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756730968108546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I can’t believe how fast time flies. I am starting my third semester at CMU West this month, and by the time I finish this semester, I will be half-way through my grad program already. This semester, I am taking the course “Architecture and Design” and I can’t wait to delve into this topic. The whole reason I am pursuing this master’s degree in Software Engineering is to prepare myself for my long-term goal of being a software architect. As such, I am very committed to this class.&lt;br /&gt;&lt;br /&gt;As we learned during The Gathering, architecting is a process that requires careful decision-making based on technical insight, experience, and a good understanding of the business requirements. Decisions made for software architectures have long-lasting effects on a software’s performance, modifiability, scalability and ultimately, its future existence. In other words, if the software doesn’t perform or scale in the field, it’s clearly your fault, and you’ll have to buy a ticket for the next flight out to Mexico.&lt;br /&gt;&lt;br /&gt;I have a lot of expectations for this class and thought it would be a good idea to state these out now, and revisit them at the end of the semester to see if I will have learned what I expected.&lt;br /&gt;Needless to say, I expect to learn about a variety of software architectures that are commonly used in this industry: classic architectures such as client/server, new architectures such as peer-to-peer, and any other emerging architectures such as those used in artificial intelligence. Learning and knowing about each architecture’s advantages, disadvantages and its applicability will enable me as a future software architect to make more informed decisions.&lt;br /&gt;&lt;br /&gt;I also expect to learn patterns in software architecting. I imagine that besides choosing a high-level architecture for a given software, there must also be many small “design patterns for architecture,” or best practices that one can apply to subsystems of a software, and I hope to gain further insights in these common best practices.&lt;br /&gt;&lt;br /&gt;In addition to just acquiring the knowledge about software architecture, I also expect to learn how to apply this knowledge to a given business problem. What makes software architects so vital is that they can evaluate the applicability of each software architectural style to a given software, which is something I hope to learn from this class as well. Which architecture suits best for a given business requirement? How do I determine/test whether a given architecture will work once developed? When should I choose one architecture over another? I’d like to be able to confidently answer questions like these after this class.&lt;br /&gt;&lt;br /&gt;Lastly, I want to learn about how to properly document architecture using common standards such as UML.&lt;br /&gt;&lt;br /&gt;Glancing over this semester’s curriculum, I am pleased to say that it promises to deliver my expectations, and it does so by looking at case studies of some well-known applications, which is something that I am very thrilled about. How cool is it to learn about peer-to-peer architecture by studying Skype and BitTorrent? How cool is this to study the architectures of products that I’ve used before, like Sony Vegas and Housing Maps? This shows again how applicable and hands-on doing a master’s degree at CMU West is!&lt;br /&gt;&lt;br /&gt;As you can tell, I very much look forward to this semester. My oh-my-God-I’m-in-grad-school enthusiasm that had slightly declined last semester (see previous post) is now fully back, so let the games begin.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Next: The New Software Industry and other networking opportunities at CMU West&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1616037293739628048?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1616037293739628048/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1616037293739628048' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1616037293739628048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1616037293739628048'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/05/software-architecture-before-and-after.html' title='Software Architecture Before and After (Part I)'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_IJ3V60Nvg38/RyJYluJr7gI/AAAAAAAAABU/UuA164k5KXM/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2471163364734083460</id><published>2007-05-11T14:20:00.000-07:00</published><updated>2008-11-12T20:23:24.207-08:00</updated><title type='text'>I am on the Carnegie Mellon University homepage!</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYseJr7hI/AAAAAAAAABc/1Qq0vki8VuE/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYseJr7hI/AAAAAAAAABc/1Qq0vki8VuE/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756846932225554" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:Verdana;font-size:6;"  &gt;Go to &lt;a href="http://www.cmu.edu/"&gt;&lt;span style="color: rgb(17, 34, 170); text-decoration: none;"&gt;www.cmu.edu&lt;/span&gt;&lt;/a&gt; and see my story on the homepage for the next seven days (&lt;a href="http://www.enderminh.com/minh/blogfiles/2007_05_11_carnegie_mellon_university_homepage.png"&gt;&lt;span style="color: rgb(17, 34, 170); text-decoration: none;"&gt;screenshot&lt;/span&gt;&lt;/a&gt;). Afterwards, you can go directly to &lt;a href="http://www.cmu.edu/homepage/global/2007/spring/distance-learning.shtml"&gt;&lt;span style="color: rgb(17, 34, 170); text-decoration: none;"&gt;this link&lt;/span&gt;&lt;/a&gt; instead.&lt;/span&gt;  &lt;div class="MsoNormal" style="margin-bottom: 0.0001pt; text-align: center; line-height: normal;" align="center"&gt;&lt;span style=";font-family:Verdana;font-size:6;"  &gt;&lt;hr align="center" color="#a0a0a0" noshade="noshade" size="2" width="100%"&gt;  &lt;/span&gt;&lt;/div&gt;  &lt;h1 style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;Software Program a Great Fit for Professionals&lt;/span&gt;&lt;/h1&gt;&lt;div class="floatright"&gt;&lt;img alt="" src="http://www.cmu.edu/homepage/images/distanceLearning_236x236.jpg" /&gt;&lt;/div&gt;&lt;p&gt;Minh T. Nguyen, a software design engineer at Microsoft, is getting his master's degree in software engineering at Carnegie Mellon West. The program's unique set-up makes it a perfect fit for full-time professionals.&lt;/p&gt; &lt;p&gt;The program is project-oriented, with no traditional exams. Students work individually and in teams — studying online material, scheduling meetings with faculty and each other, collaborating and delivering their results as a source code, document or presentation.&lt;/p&gt; &lt;p&gt;"I never realized the importance of team-building and soft skills until I started at Carnegie Mellon West," said Nguyen. "Just during the first semester alone, I learned so much about how to effectively lead a team that I wish I could have applied this knowledge at my previous non-profit work."&lt;/p&gt; &lt;p&gt;Nguyen says he appreciates that he can be on a business trip in Seattle or a family visit to Orange County and still not miss a meeting. According to Diane Dimeff, associate dean for external relations and professional development at Carnegie Mellon West, the flexibility of the program is key.&lt;/p&gt; &lt;p&gt;"Flexibility makes this program ideal for full-time professionals, especially those who spend a lot of time traveling for their jobs and putting in long hours," she said.&lt;/p&gt; &lt;p&gt;A strong focus on solving real-world problems translates to the students being able to immediately apply what they learn to their responsibilities on the job. Teaching methods that include workshops, small group coaching and problem-driven seminars allow the students to get the most out of their learning experience.&lt;/p&gt;   &lt;p class="MsoNormal" style="line-height: normal;"&gt;"Carnegie Mellon West's simulation-based curriculum places me right into a context that most closely resembles a real work environment," said Nguyen. "It focuses on the strengths that will pay off the most once I graduate, if not even earlier."   &lt;span style=";font-family:Verdana;font-size:6;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2471163364734083460?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2471163364734083460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2471163364734083460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2471163364734083460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2471163364734083460'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/05/i-am-on-carnegie-mellon-university.html' title='I am on the Carnegie Mellon University homepage!'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJYseJr7hI/AAAAAAAAABc/1Qq0vki8VuE/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-1577215084695879711</id><published>2007-05-07T12:18:00.000-07:00</published><updated>2008-11-12T20:23:24.372-08:00</updated><title type='text'>The Gathering</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYy-Jr7iI/AAAAAAAAABk/OfIlMjghL5Y/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYy-Jr7iI/AAAAAAAAABk/OfIlMjghL5Y/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125756958601375266" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Touted as mid-year checkpoint for our entire cohort, remote or not, to flock back to the Carnegie Mellon West campus at the NASA Ames Research Center and to see and meet each other again is the event that we simply refer to as “The Gathering.” It’s a two-day happening each spring where all students of our Class of 2008 take the long pilgrimage back home to sunny Mountain View, CA in search for two things: communal spirituality and architectural guidance.&lt;br /&gt;&lt;br /&gt;Okay, fine, maybe I am dramatizing this too much, but the idea is still the same, as the Gathering serves two purposes: first, it’s an opportunity for our entire cohort as well as the rest of the Carnegie Mellon West community to see and meet each other again, while it also serves as a kick-off to the new Software Architecture semester that we are about to start this May.&lt;br /&gt;&lt;br /&gt;Because anywhere from 30%-40% of our cohort consists of remote students all across the nation (and sometimes even across the globe), we do not often get to see and meet each other. In fact, the last time that our class met in its entirety was during orientation weekend last August, so it was very refreshing to have all the students gather again. Some remote teams that have been working together very closely via conference bridges and LiveMeeting sessions last semester finally met in person this weekend.&lt;br /&gt;&lt;br /&gt;Since Carnegie Mellon West’s curriculum puts a strong emphasis on team-building and other “soft” skills, a variety of guest speakers were invited on campus to present some interesting topics that one might not expect from a degree in software engineering. We had the founders from EnneBusiness Solutions present about the Enneagram of Personality introspections (a personality and character assessment through self-observation) and actually conduct a workshop to see how the enneagram can be analyzed in our newly-formed teams.&lt;br /&gt;&lt;br /&gt;Stanford Professor (and author of “Improv Wisdom: Don’t Prepare, Just Show Up”) Patricia Madison came to talk about the art of improv and comedy and conducted a variety of interactive games to discover and spur the creativity of our minds, as she explained how this mindset can be applied to our professional work to enhance creativity and team communication. Personal fitness trainers from Total Fit Solutions also came over and worked with us (or rather, made us work) through an hour of sometimes grueling athletic exercises that one could do in the office (the workshop was appropriately titled “My Desk is my Gym”).&lt;br /&gt;&lt;br /&gt;To top it all off, we were all bused to downtown San Jose to have a dinner at a brewery. Afterwards, we enjoyed ourselves and shared good laughs at a comedy show at night. As you can imagine, despite the schedule being fairly busy, it provided ample opportunities to mingle, socialize and get to know your fellow classmates.&lt;br /&gt;&lt;br /&gt;The second purpose of the Gathering was to officially kick-off the Software Architecture semester. We were conveniently introduced to our new team right at the beginning of the weekend to allow us to get to know each other through the above-mentioned workshops and games. A senior architect from Yahoo! provided us with an insightful talk about the roles of an architect as well as a variety of architectural decisions that were taken at Yahoo! as it embraced the Web 2.0 and AJAX wave. In addition, another talk that I thoroughly enjoyed was a presentation from Mark Srebnik, a building architect, as he described his work in planning, designing, and architecting a hospital as well as his iterative approach in interacting with the customer. The similarities between software architecting and building-architecting were striking, and I am glad to see that software engineers are not the only beings out there who claim to be masters at planning and designing but seldom deliver a product that actually looked like the first signed-off blueprint/Visio diagram!&lt;br /&gt;&lt;br /&gt;As the weekend winded down, and remote students slowly checked out of their NASA lodges, a few of us took the opportunity to participate in a photo shoot for the new Carnegie Mellon West brochure, played frisbee on the big lawn in perfect California weather, or simply embarrassed ourselves in attempting to beat Tom, the only game developer in our class, in playing Dance Dance Revolution (aka DDR) on the Playstation upstairs. With a little bit of nostalgia, we realized that the entire Class of 2008 wouldn’t see each other again until the next year’s Gathering. At the same time, we feel refreshed and excited to start the new semester.&lt;br /&gt;&lt;br /&gt;Until then, happy architecting!&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Next time: Software Architecture Before and After (Part I)&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-1577215084695879711?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/1577215084695879711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=1577215084695879711' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1577215084695879711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/1577215084695879711'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/05/gathering.html' title='The Gathering'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_IJ3V60Nvg38/RyJYy-Jr7iI/AAAAAAAAABk/OfIlMjghL5Y/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2258879199097805326</id><published>2007-04-27T15:50:00.000-07:00</published><updated>2008-11-12T20:23:24.466-08:00</updated><title type='text'>Requirements Engineering or “What do you mean, there’s more to life than coding?”</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_IJ3V60Nvg38/RyJY6uJr7jI/AAAAAAAAABs/Cf713lLfXec/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_IJ3V60Nvg38/RyJY6uJr7jI/AAAAAAAAABs/Cf713lLfXec/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125757091745361458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;From reading my past blog entries, it should be clear to anyone that I was extremely excited to start my graduate studies at Carnegie Mellon West and how ecstatic I was going through my first semester with the Foundations of Software Engineering class.&lt;/p&gt;&lt;p class="MsoNormal"&gt;Well, this blog entry focuses on how I got a hard dose of reality during my second semester with the Requirements Engineering class and why it was a bit more painful for me.&lt;/p&gt;&lt;p class="MsoNormal"&gt;In Requirements Engineering, we dive very deep into the process of gathering, analyzing, validating, documenting and managing requirements for a new software product. Sounds easy, right? Sure it does. Was it simple? Not at all. &lt;/p&gt;&lt;p class="MsoNormal"&gt;The specific project we were given was to drive the idea of a movie recommendation website based on social-networking from research and conception to complete specification. Our team was not tasked with actually implementing the website, but rather, producing a final, detailed software requirements specification document instead, that could then be handed over to other teams for implementation. &lt;/p&gt;&lt;p class="MsoNormal"&gt;While this task itself does not sound very complicated, it turned out to be a very process-oriented activity that lasted—no surprise here—an entire semester. During the course of 16 weeks, here are some of the tasks our team performed.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Wrote a team charter&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Analyzed our (fictitious) company's vision as well as high-level requirements document&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Interviewed our friends, relatives, and even strangers down at the local Blockbuster video store about their movie-selection process.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Performed competitive analysis of sites like yelp.com and Netflix&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Conducted brainstorming sessions&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Analyzed and documented these requirements into lengthy Excel files and use-case documents&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Created user interface mockups via Photoshop or PowerPoint&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Implemented a web prototype after getting the sign-off from our VPs (professors)&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Conducted several rounds of usability tests&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="MsoNormal"&gt;Compiled and captured these vast findings into the software requirements specifications document&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you also add to this mix other deliverables such as the glossary, user scenarios, navigational sitemaps, project schedule plans, implementation estimations, risk assessments, and final presentation, you’ll quickly get the idea of why requirements engineering of a simple product took 16 weeks. &lt;/p&gt;&lt;p class="MsoNormal"&gt;With the exception of coding a mock website for conducting usability tests, this entire class could be completed without writing a single line of code, and herein lies my dilemma. You see, I am a coder. I am a technical person that enjoys architecting, designing and actually coding a software product, and the lack of these kinds of activities is what led to why I was less excited about this class than my previous class.&lt;span style="font-size:0;"&gt; &lt;/span&gt;To be pulled out of my comfort zone and tasked with learning the process, I grew tremendously, even though at times I was getting itchy wanting to just code.&lt;span style="font-size:0;"&gt; &lt;/span&gt;With that said, I know that not everyone shares my passion for coding, and for those who aspire to be program managers, this class is absolutely necessary.&lt;/p&gt;&lt;p class="MsoNormal"&gt;Was the class useful?&lt;span style="font-size:0;"&gt; &lt;/span&gt;Yes.&lt;span style="font-size:0;"&gt; &lt;/span&gt;Was it enjoyable? Not all the time. Was it necessary? Absolutely.&lt;span style="font-size:0;"&gt; &lt;/span&gt;Did I benefit from the class? Definitely.&lt;span style="font-size:0;"&gt; &lt;/span&gt;I now have a great understanding of how requirements work, how to craft them well, and how to be successful in delivering them.&lt;span style="font-size:0;"&gt; &lt;/span&gt;It’s no surprise that in the industry, the majority of software projects fail because the requirements are wrong.&lt;span style="font-size:0;"&gt; &lt;/span&gt;This class was instrumental in teaching me the correct way to gather requirements – something I never had to think about before, since I’m used to just getting the requirements handed to me.&lt;span style="font-size:0;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;But to get the bigger picture – to understand the steps it took before someone handed over those requirements to me, well, I now have a much better appreciation of those program managers, and a great respect for those who know how to do it well.&lt;span style="font-size:0;"&gt; &lt;/span&gt;Requirements documents don’t fall from the sky, it takes careful planning, research, forethought, and organization.&lt;span style="font-size:0;"&gt; &lt;/span&gt;Whew, am I glad I’m a coder.&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="font-style: italic;"&gt;Next: The Gathering&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2258879199097805326?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2258879199097805326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2258879199097805326' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2258879199097805326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2258879199097805326'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/04/requirements-engineering-or-what-do-you.html' title='Requirements Engineering or “What do you mean, there’s more to life than coding?”'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_IJ3V60Nvg38/RyJY6uJr7jI/AAAAAAAAABs/Cf713lLfXec/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-8670033264269947136</id><published>2007-04-10T16:52:00.000-07:00</published><updated>2008-11-12T20:23:24.669-08:00</updated><title type='text'>Class Schedule and Long-Distance Learning</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJZBOJr7kI/AAAAAAAAAB0/zqASCB8FE-M/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJZBOJr7kI/AAAAAAAAAB0/zqASCB8FE-M/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125757203414511170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;It’s always hard to explain to my friends what Carnegie Mellon West is and what it is not. Whenever my friends and co-workers ask simple questions such as “How many classes are you taking this semester?” or “When are your classes?,” I always take a deep breath and mentally prepare myself to go through the same routine of providing answers that only bring forth further questions.&lt;br /&gt;&lt;br /&gt;Well, how DO I answer those types of questions?&lt;br /&gt;&lt;br /&gt;A) “I don’t have any classes”&lt;br /&gt;B) “I only have one class per semester”&lt;br /&gt;C) “My teammates, faculty and I make up our own class schedule”&lt;br /&gt;D) “My class meets Sunday night at 11pm”&lt;br /&gt;E) “Yes, I understand this is New York City, but I still have class later this afternoon”&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;“I don’t have any classes.”&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;It’s true. If you are thinking of classes as “regularly-scheduled sessions on campus that I need to attend every week only to powernap through them,” then no, I don’t have any classes. As mentioned before in my blog, the majority of my weekly schedule consists of working either individually or in a team to produce deliverables—whether it is a source code, documents or presentations. How do I learn then? Well, just like in real-life, I am expected to learn the materials through whatever media work best for me. Carnegie Mellon West provides a number of resources for the students - certainly the number one resource comes in the form of our professors, who will guide discussions, or lead teams toward finding their own answer. In many cases, the resource can be the assigned reading in books, or individual web research. The last resource is your classmates – the fact that you are teamed up with people with varying professional experiences means that you have a lot to learn from each other. The bottom line is that you should understand the material to deliver the products. How you learn that material is entirely up to you.&lt;br /&gt;&lt;br /&gt;However, we do have optional “bootcamps” every month or so. These are 1-2 hour classroom-style sessions where either a faculty member or an outside industry expert is invited on campus to delve into particular topic in much further detail. Examples of past sessions are Hibernate, JUnit, UML, CMMI, and even technical writing.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;“I only have one class per semester.”&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;It’s true. If you are thinking of the schedule of classes that appear on my grade report, I only have a single 12-unit class per semester. Last semester was “Foundations of Software Engineering;” this semester, it’s “Requirements Engineering.” While we split up the 16-week class into two 8-week classes, it really is only one class.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;“My teammates, faculty and I make up our own class schedule.”&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;It’s true. We make up our own schedule. Since a team typically consists of 4-6 students who work full-time, and faculty members who meet independently with all their students, in addition to conducting their own research, scheduling meeting times is left entirely to us. At the beginning of each semester, the team negotiates a weekly meeting time between ourselves and the professors teaching the course (typically we will have to schedule with 2-3 different faculty members, who play the roles of team advisor, VP of Engineering, and optionally the VP of Marketing. Some teams meet once each weekend and do the rest through online collaboration, other teams meet four times a week in the evenings to leave the weekend open; the majority do a combination of both. It really depends on the team dynamics, preferences, and the current week’s work-load.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;“My class meets Sunday night at 11P.M.”&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;It’s true. Given that the school provides us with a Microsoft LiveMeeting for each team, we often find ourselves using this tool to collaborate online at the oddest hours. Last semester, one of my team members was “on vacation” in India and called in during his wee early hours and our late evenings.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;“Yes, I understand this is New York City, but I still have class later this afternoon.”&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Since our cohort consists &lt;a style=""&gt;of 30% remote students&lt;/a&gt;, the classes are designed for long-distance learning. While I very much prefer to meet on campus to fully appreciate the advantages of in-person meetings, I appreciate the flexibility to be out of town and not missing meetings. Whether I find myself on business trips to Seattle, personal trips to New York, or family-visits to Orange County, I can still participate in meetings through the use of conference call bridges and LiveMeeting. All you really need is an internet connection and a fully-charged cell phone. One time, I was on a cell phone for four hours at a McDonald’s in Brooklyn. While it was certainly not a pleasurable experience, I valued the fact that, as Thomas Friedman would say, “the world is flat.”&lt;br /&gt;&lt;br /&gt;As you can see, some simple questions require complicated answers. Hopefully, some of my co-workers and friends would have read this blog entry the next time they ask me questions about my classes, to save me from a long-winded explanation.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;strong&gt;Next time: Requirements Engineering or "What do you mean, there's more to life than coding?"&lt;/strong&gt;&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-8670033264269947136?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/8670033264269947136/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=8670033264269947136' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/8670033264269947136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/8670033264269947136'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/04/class-schedule-and-long-distance.html' title='Class Schedule and Long-Distance Learning'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJZBOJr7kI/AAAAAAAAAB0/zqASCB8FE-M/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2351709931232637463</id><published>2007-03-28T14:52:00.000-07:00</published><updated>2008-11-12T20:23:25.055-08:00</updated><title type='text'>Surviving My First Semester at Carnegie Mellon West</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJZKeJr7lI/AAAAAAAAAB8/iOAhBT0AtsU/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJZKeJr7lI/AAAAAAAAAB8/iOAhBT0AtsU/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125757362328301138" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;The curriculum at Carnegie Mellon West is structured so you’re only taking one course at a time, so basically its just one course per semester.&lt;span style=""&gt;  &lt;/span&gt;My first course was titled, “&lt;span style="font-weight: bold;"&gt;Foundations of Software Engineering&lt;/span&gt;”. As the name implies, this semester concentrated on the basics of software engineering: from the requirements-gathering process, the user interface mock-ups, the iteration planning to coding, documentation and presenting to stakeholders. I consider it the “umbrella course,” as its purpose is to bring all students on the same page and provide an overview of the entire process, so that we can then dive into the different aspects of “Foundations” in greater detail over the next two years.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;We were tasked with planning, designing and coding the next release of a Java-based project management application built by a prior Carnegie Mellon West team using an agile development approach. While I had been exposed to extreme programming and unit testing years back when it first gained momentum in the industry, this semester was the first time I actually applied it to its fullest extent on a project. This included, yes, writing the test case before writing any code, and yes, actually programming with your buddy sitting right next to you. &lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;I was fortunate enough to be put in a highly-motivated and effective team, and the semester went by very quickly. Our team worked hard and overcame some real-life challenges such as an unfortunate and unexpected loss of a team member (his company decided not to fund his education, so he pulled out of the program) and another team member’s extended trip to &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;India&lt;/st1:place&gt;&lt;/st1:country-region&gt;. Our team embraced the latter as an opportunity to simulate the offshore-working scenario that many of us face at work anyways. In the end, we delivered the product on time and are very proud of our work.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;I learned a great deal this semester. As described several times during the application process, much of what we learned in school literally was applicable during work the next day. By the middle of the semester already, I was convinced how useful unit testing really can be. At the same time, I cringed from realizing how much I did wrong in my last freelance project (a favor for a friend) that led to its massive delay.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;Prior to enrolling in school, we were warned that doing the master’s degree at Carnegie Mellon West probably would take up to 20 hours per week on average. To adjust to this demand, I had to stop my volunteer work in the Vietnamese community, and unfortunately also had to stop exercising. The lack of exercise is something that the faculty and advisors strongly discourage, but to this day I still have not been able to incorporate my old work-out schedule back into my weekly routine. I also don’t find the same time to practice piano, and I certainly don’t find the time to shave my cats anymore (just kidding, I don’t shave them!).&lt;/p&gt;    &lt;p class="MsoNormal"&gt;As for the work/school/life balance, I don’t think it has been as bad as I originally feared. Most of the time, I actually spend less than 20 hours per week. Sure, I admit that it was a bit exhausting to program in C# all day at work, only to come home and program in Java all evening, but that’s why the last thing I wanted to talk about when hanging out with my friends was software (actually those things should never be a topic in your personal life, but is hard to escape when you live in here in Silicon Valley).&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Overall, surviving my first semester at Carnegie Mellon West was not too difficult. I really enjoyed the work that our team did. I embrace the fact that I was forced to step out of my Microsoft bubble I have been in for so long to refresh my Java coding skills and learned a lot of non-Microsoft tools and technologies like NUnit, JfcUnit, Hibernate, and Eclipse. The hands-on approach of Carnegie Mellon West’s curriculum allowed me to learn about these technologies and software engineering methodologies much more effectively than having to read all this in books and never really practicing it (which is exactly what happened some six years ago when I first read about extreme programming and never applied it). Cool, eh?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2351709931232637463?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2351709931232637463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2351709931232637463' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2351709931232637463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2351709931232637463'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/03/surviving-my-first-semester-at-carnegie.html' title='Surviving My First Semester at Carnegie Mellon West'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJZKeJr7lI/AAAAAAAAAB8/iOAhBT0AtsU/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-678537634343419352</id><published>2007-03-15T11:31:00.000-07:00</published><updated>2008-11-12T20:23:25.169-08:00</updated><title type='text'>Students, Faculty and Team-Building at Carnegie Mellon West</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJZReJr7mI/AAAAAAAAACE/thicWDcmRWs/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJZReJr7mI/AAAAAAAAACE/thicWDcmRWs/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125757482587385442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;As I was going through four days of orientation at Carnegie Mellon West last August, I was getting more excited and enthusiastic than ever before. The more I got to know the curriculum, the faculty and my highly-motivated and exceptional classmates, the more I fell in love with this program.&lt;span style=""&gt;  &lt;/span&gt;I couldn’t think of anything better-suited for my academic/professional career than this.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;The Students&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;Orientation started with all 57 students of the Class of 2008 first getting to know each other through an appetizer and beer mixer in the courtyard, followed by a nice, formal buffet dinner on campus. The first thing I noticed was the very impressive caliber of diverse students with remarkable backgrounds and well-rounded experiences. You know how you go into computer science programs and always meet those “nerdy nerds” sitting in the computer labs who talk about technical stuff 24-7, who lack all communication and people skills, and cringe when exposed to sunlight? Well, this class is comprised of software engineers from the other side of the demographics spectrum. It’s so refreshing to meet motivated software leaders from various renowned companies who are not only passionate about what they do, but also possess great communication skills and have great personalities. My team for the Fall 2006 semester, for instance, consisted of employees of IBM, Google, Lockheed Martin and myself from Microsoft.&lt;span style=""&gt;  &lt;/span&gt;We turned out to be an exciting team and I very much enjoyed the dynamic and collaborative efforts; in fact, I would love to work with them the real world.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;b style=""&gt;The Faculty&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Carnegie Mellon West is a private school, and boy, does it feel like a private school (you know you are attending private school when they start serving you wine, and shower you with Carnegie Mellon laptop bags, shirts, caps, mugs, stickers and even school chocolate)! With a student-to-faculty ratio of 8:1, we develop close relationships with our professors, and I am on a first-name basis with all of them. Just as I was with my classmates, I was duly impressed by the faculty (my professor for the first semester used to work as software engineer for NASA’s Jet Propulsion Laboratory on the Mars Pathfinder mission--how cool is that?!). &lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;Since Carnegie Mellon West pursues a practical approach to software engineering education, both faculty and students pretend to be in a fictitious company. My faculty act as fictitious stakeholders (say VP of Engineering or VP of Marketing), and we negotiate requirements, coordinate schedule plans, and have weekly status meetings with them with the goal of delivering some products at the end of the semester. It’s a very holistic approach as you learn more than just computer science and coding; you also improve your people and leadership skills as you interact with the faculty and your teammates.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;Team-building&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;If there was one thing that was cemented in our heads during orientation, it was the importance and significance of team-building. I’ve attended so many leadership workshops and seminars in the past with the same old cheesy icebreakers, that there is little that can surprise me anymore; however, I encountered something totally different during orientation.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;We spent almost two hours on a project to build a castle made out of Lego bricks in a small team. Building the castle itself took only 15 minutes really, but we were asked to assign roles and carefully plan construction to minimize construction time as much as possible: one person was the warehouse manager (and provided the team with the Lego bricks), one person was the construction manager (the only person allowed to put bricks together), one person was the quality assurance manager (the only person allowed to walk to the prototype model situated on another table for comparison), while I acted as the project manager (trying to tell the other managers what to do next). We planned, constructed, reflected, analyzed, re-planned, improved the process, constructed again, reflected again and so on.&lt;span style=""&gt;  &lt;/span&gt;It was very interesting to see the team dynamics change and improve through open communication and careful planning at each iteration. It sure was a very fun approach to learning software engineering and team dynamics through Lego bricks.&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;The four days of orientation was a confirmation for me that Carnegie Mellon West was true to its word, and was delivering everything it promised.&lt;span style=""&gt;  &lt;/span&gt;Although I was quite nervous about the workload that was ahead, I was encouraged to start the program off with such a bang.&lt;/p&gt;    &lt;p style="font-style: italic;" class="MsoNormal"&gt;&lt;b&gt;Next time: &lt;/b&gt;&lt;span style=""&gt;Surviving my first semester at CMU West.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-678537634343419352?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/678537634343419352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=678537634343419352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/678537634343419352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/678537634343419352'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/03/students-faculty-and-team-building-at.html' title='Students, Faculty and Team-Building at Carnegie Mellon West'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_IJ3V60Nvg38/RyJZReJr7mI/AAAAAAAAACE/thicWDcmRWs/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1316178326400830671.post-2160051939563667264</id><published>2007-02-27T13:50:00.000-08:00</published><updated>2008-11-12T20:23:25.293-08:00</updated><title type='text'>Embarking on the Journey of Carnegie Mellon West</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJZYOJr7nI/AAAAAAAAACM/SOUC2d1lWec/s1600-h/Minh+headshot.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJZYOJr7nI/AAAAAAAAACM/SOUC2d1lWec/s200/Minh+headshot.JPG" alt="" id="BLOGGER_PHOTO_ID_5125757598551502450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;“Congratulations! It is my pleasure to inform you that you have been accepted for admission into the part time Master of Science Software Engineering Technical Track Program at Carnegie Mellon West for the Fall 2006 semester.”&lt;br /&gt;&lt;br /&gt;Those were the words of the decision letter that started this all. For the past several years, I have been contemplating about going back to school to obtain a master’s degree in software engineering, to fill in the much needed gap between my very theoretical education from my B.S. degree in computer science and the concrete challenges and idiosyncrasies I faced in Silicon Valley.&lt;br /&gt;&lt;br /&gt;Not wanting to quit my job, I narrowed down my search for good engineering schools in the San Francisco bay area that offer part-time master’s programs; topping this list of potential schools was Carnegie Mellon West.&lt;br /&gt;&lt;br /&gt;First, I must admit that I actually stumbled upon Carnegie Mellon West’s program at the very last minute. I was not even aware of Carnegie Mellon University’s presence here in the heart of Silicon Valley until I noticed a Carnegie Mellon West poster in the kitchen area at my work.&lt;br /&gt;&lt;br /&gt;However, after talking with the director of admissions and comparing this program with similar programs offered at other schools, I realized that there could not be any better program suited for me at this point in my life, for a multitude of reasons:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;This is a part-time program, which allows me to keep my full-time job.&lt;/li&gt;&lt;li&gt;The program is only two years long, so I’ll be graduating August 2008. For a part-time program, that’s very darn short.&lt;/li&gt;&lt;li&gt;My diploma will say “Carnegie Mellon University.”  How cool is that?! The first time I heard about Carnegie Mellon University was way back when I first immigrated to the United States. My schoolmates in junior college would refer to it as “one of the top computer science schools on the east coast.”&lt;/li&gt;&lt;li&gt;This is a very practical program emphasizing on completing software projects in small teams. There are no official classes, nor exams—just deliverables—which is exactly what I am good at and what I have been doing for the past years at my work.&lt;/li&gt;&lt;li&gt;The campus (located on the NASA complex) is one mile away from my work. I can easily (and probably should) jog or bike there.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt; I only had two concerns with choosing CMU West. One was the financial burden of paying for graduate school, but that’s what home equity line of credits are for.&lt;br /&gt;&lt;br /&gt;The second concern was the intensity of the program. During my admissions interview and with discussions with other CMU West students, I had been told to kiss my weekends good-bye. CMU West would be a very tough program, given that I would be working full-time while getting my degree on a part-time basis. I therefore decided to take a leave of absence from my community work that previously occupied most of my spare time.  &lt;/p&gt;&lt;p&gt;So far, the balance between work, school and personal life is holding up (though this will be the topic of a future blog entry).&lt;br /&gt;&lt;br /&gt;PS: If it seems to you that I am overly excited to embark on this journey—well, that’s because I am.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Next time: Orientation Weekend, Foundations, classmates and faculty, oh my!&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1316178326400830671-2160051939563667264?l=cmsv-se.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cmsv-se.blogspot.com/feeds/2160051939563667264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1316178326400830671&amp;postID=2160051939563667264' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2160051939563667264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1316178326400830671/posts/default/2160051939563667264'/><link rel='alternate' type='text/html' href='http://cmsv-se.blogspot.com/2007/02/embarking-on-journey-of-carnegie-mellon.html' title='Embarking on the Journey of Carnegie Mellon West'/><author><name>Carnegie Mellon Silicon Valley</name><uri>http://www.blogger.com/profile/00428844319550666371</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_IJ3V60Nvg38/RyJZYOJr7nI/AAAAAAAAACM/SOUC2d1lWec/s72-c/Minh+headshot.JPG' height='72' width='72'/><thr:total>3</thr:total></entry></feed>
