Saturday 12 November 2011

CS3216

First, I'd like to say that CS3216 is a really wonderful class. It teaches so much in so many areas. We learn about technical stuff, get to meet successful people and most importantly, we get free, valuable life lessons. The last fact alone makes this class worth every moment.

Technical stuff:
Theres just so so much prospects for web developers, and this class really embraces this fact. I'm really grateful for the opportunities to learn the new web dev technologies available out there such as HTML5 Ajax and stuff. To be honest, I'd had some prior experience, but never this extensive. The 3 assignments really put to test these skills, and through that we have practiced, improved and learnt new things with every feature we implemented. Some stuff that i really learnt from this class were RESTful, FB app integration etc. I'd wanted to explore them myself before, but wasnt successful, until we received help from the manuals and some of the TAs, (thanks Eldwin). Some of the stuff were too technical, lol, like the lecture given by Zit Seng. Good for general knowledge though :). Thats what i liked about this class, theres so much exposure.

Meeting successful people:
Really, how many opportunities do you get to meet and talk with a millionaire?  Its not everday that we get to see one, much less interact with them. On top of that, these successful people are all willing to share their success stories and tried methods about what they did, how did they do it etc. Most importantly, they also shared what they did wrong. So that we may avoid walking into the same traps. People pay lots for opportunities like that, and they are given free here. right in this class. You cant get them anywhere else. Key takeaway: Perseverance goes a long way.

Life Lessons:
From the prof himself. I've always liked listening to life stories. No matter who it is talking, you can always get somethin out of it. Well i can't say I agree totally with him about everything, but I'd definitely keep them in mind. I do agree that life, on the whole, seems to be getting better, but really isnt. Because of technology, life has improved, but also because of that life becomes more complicated- theres much more competition and theres so much more to do just to catchup to times. Gone are the good ole days where we can sit back and relax and gaze at the stars. Cavemen didnt have to slog through a rat race just to get food on the table. BUT, cavemen didnt have cars, and cavemen didnt have medicine. Theres always the good and the bad. And i know its going to get worse too. There might be a shortage of jobs because of too many qualified people. There might be a day when oil runs out and technology dies. But theres so many new TYPES of jobs appearing. And theres so many breakthroughs on energy technologies that people are rumouring that its being hidden and tabooed by the oil dealers for fear of going out of business. It just might be true. No matter what, things WILL happen and things WILL change. We just gotta learn to embrace it.

Key takeaway:
I'd have to say its definitely the chance of having worked in what I believe to be an ace team. We had the best marketer(JH), best designer(YS) and the best coder(XY). Me? Hmm.. just a mediocre i guess - i did some coding. It was really great working with these guys. I know every team has communication problems, but this team had none. Everyone was always willing to compromise. The team just synergised. And everyone was really good at what they do! To be honest, I was a little apprehensive of having a designer on the team. I couldnt see any value - I've never been more wrong lol. Our app is where it is because of him, because of his designs. And i believe the other 2 would agree that YS was the one that contributed the most.

Afterthoughts:
My first thoughts when taking this class was - Its called "Software Engineering on evolving platforms" so i should be expecting alot of technical stuff, like Obj-C, C#, JS lessons etc. Thats how Engineering classes usually are. The content is heavy and we get examined on that. So in the first few weeks when all we got were like workshops and talks from various people - no content lectures - i was disappointed. Now i know i'm wrong. I've come to realise that its not so much the technicalities in Software Engineering. Theres so much more involved Blah i dunno how to put it, but technical stuff is barely 10% of it, and this class is really explaining the other 90%. It was a paradigm shift for me, and I am thankful for it.

Wednesday 2 November 2011

The last lap

The semester is finally coming to an end. Everyone is especially busy around this time. Projects would be due, typically in 2 weeks or so. I've got 3 projects due this week myself, but I guess i'm still doin fine. Last week was PE2 for CS1010, and it took me close to 10 hours to finally complete grading the scripts. That was took way longer than expected and I've fallen behind schedule for my tasks.

These past two weeks had been like a roller coaster ride. My capstone project died,lived, then died and lived again. LEDs can stop functioning during a demo. After almost 5 hours of debugging we find the wrongly wired pin (how did it work in the first place i wonder). Managed to revive it, while blowing 6 latches in the process. Then suddenly, it started to cough and choke, and died again. Another 2 hours of debugging to find out the uP blew.

Well we learn stuff both ways. When I thought that I was 99.9% sure that the hardware is correct, and believed that it was heaven's will going against me preventing it from working, I learnt that it really is that 0.1% in reality. That was a harsh reality check for me: whatever can go wrong, will go wrong. Murhpys law. Another thing i thought was well, 2 wrongs really can make one right! lol

Of course, when things are working (finally), we are happy. for awhile. Cuz we look around and realised that we are sooooo far behind all the other teams. Just thinking about how we might end up the only group that won't finish gave me the jitters and made me lose sleep. Spent the next 2 weeks at the lab, literally whenever it was open and whenever we could. I dunno if this can be considered learning something but, but i realised this. Hardwork DOES pay off. Becuase we are once again on track, possibly even ahead. Cheers ;)

That was 3002. Theres still 3207. Computer architecture. More like computer anatomy, lol. Through that i really learnt something, not just academically. What do you do when your project mate cant deliver. It's really difficult to handle, and i believe at some point in life we would expect to encounter such a situation at least once. Well, for me its a first time and it was frustrating, because without his part we wouldnt be able to proceed. He showed up at the lab, not having made any progress since week 5 (it was week 10 btw). I was like, thats it we're screwed. I really wanted to curse and swear but didnt(luckily) because he was a friend of a close friend lol. Grit my teeth, spent the next 3 hours which was supposed to be for the next part of the project, helping him finish his part. Well, i guess its not so bad, cuz when you do more you learn more. Finally. Was i angry? Not really, more disappointed rather. Like i said, roller coaster ride

So now i've finally got time to come writing this blog. I know i shouldnt be writing about these, but whatever, its a blog.  And for the past 2 weeks, its what i've been experience and learning. As for 3216, we thought things were going steady. Final project seems to be progressing smoothly as well, we managed to clear out the presentation, and we seem to be receiving some good responses. We're still thinking of implementing a few other features, some small and some key ones.

Aside from final P, we had 2 very cool lectures. The first lecture was given by successful local entrepreneurs. I particularly liked Jay, lol. Like when he said, "I'm telling you these figures not so that I can showoff, but so that you can start taking me abit more seriously". I LOLed at that haha. But then it made me realise how cynical i was =/. They were all pretty established speakers, easily in the millions range. Successful entrepreneurs that most of us would like to be in the position of. Listening to all their stories, i found that some of the cases can be reproduced, while some of them are probably not reproducible. Street Sine for example. No doubt the tech support was important in the success, I strongly believe that bulk of the credit would go to the marketer. I mean, being able to convince all the players in a field as competitive as real estate to compromise and share information openly on their platform, that to me is not reproducible.

After the lecture, we had to privilege to chat up with some of the presenters and one which was RedSports. They have close to a 400k user base, which grew from only less than 5 years. Definitely amazing, but after the conversation I kinda felt that the context was rather different. For red sports, his primary concern was the delivery of sports news, and has less to do with technology or app scalability. We did realise that our app(betterme) can sort of relate to it, because it sorta involves teaching, so it could possibly involve schools. We learnt Mr RedSports' (whose name has unfortunately escaped me) story. Of how he first began, and how he managed to become the 'unofficial' sports reporter for singapore schools. Dedication is one thing we definitely need to learn from this guy. Next we managed to steal a few moments with developers of Mobdis (pardon my bad memory with names). They were really kind and I was very grateful to them for sharing their startup tips so humbly. If I ever were to begin an entrepreneurship, I'd have saved myself alot of time thanks to his tips. I also picked up some advice from him. Also, I'd been using Malls@SG for quite sometime now, and only then i realised that it was an amazing solo volunteer's work, and that amazing person stood right before me.

This mondays presentation. I just stood there like a block, but oh well I'm not complaining. I know presentation is my weakness, and I'd really like to overcome it. But this presentation is important, because we need to sell our app well and I'll definitely not be able to do it. I must say, I really felt Yong Shen did a very good job. Aside from our app, I finally got to see what all the other groups have been doing. Everyone's projects were interesting, especially 'Letters to Amanada'. It could be due to the fact that the presenter (Zul?) was just amazing and managed to capture my attention throughout his presentation. Cabs.sg was also another decent idea. It won't fail, because  premeire is gonna need an app to compete ;) Then theres' touch appetit(sp?), already clinched a deal. Amazing

I'm really grateful for having such wonderful teammates. (Really). I'd like to think we make a pretty good combination. Like in games, you'd need a tank, a nuker and a stunner/CCer. Basically you need to have a good setup, and that was what we had. Theres hardly any conflict and the workload is spread out very evenly. No matter what happens for the outcome, I'd always remember the experience of being in this group. to my mates: The last lap liao CHIONG AH! Betterme FTW :)