NUS CEG FYP LaTeX Templates

Here I have LaTeX templates that I developed during the start of the last semester that will closely replicate the required FYP format as specified by the CEG department. There are two versions, one for those doing FYPs under EE professors and another for those FYPs under CS professors.

The templates will require some CTAN packages which will be easily obtained through your MikTex repo browser.

EE Template

CS Template

The files are provided as-is and recommended for experienced LaTeX users or the intrepid.

Posted in Uncategorized | Leave a comment

Year 4 Semester 2

The final semester.

CG4001 – B.Eng Dissertation (Final Year Project, FYP)
12 MCs of torture, everyone will agree. You are on your own to research, implement or test something. It will usually be a project that supports a professor’s research area or could be a project created just because they need FYP projects available. Either way you will not get much in the way of guidance because you are supposed to determine your own plan, path, implementation and contribution to the topic. The topic given can be a continuation of a previous FYP, extension implementation to contribute to research or a new topic. Which one to choose? See who is the supervisor. Some professors demand a very high quality of work and will demand the limits of your intelligence. Others conduct the FYP knowing the limits of the undergraduate and that most of us arn’t cut for research. The FYP is done over two semesters. Usually the first semester is topic research and trying to find a specific area to contribute and attempting to achieve that contribution. The second semester will be about developing that contribution in more detail and achieving it completely. In our experience (many of us), its 1 semester of trying to read papers and not understanding anything but writing an interim report anyway. Then spending the holiday actually understanding some of the stuff and actually try to implement something. The second semester will be the hair tearing, late night marathons to actually implement something that works at all. All this to impress your supervisor for his/her component of the marks. For the evaluator and moderator, the presentation is key. The presentation must show right to the point YOUR specific contribution to the topic. It must also attempt to showcase that you have done alot of work and put in alot of thought.

CS4222 – Wireless Sensors and Networks – (Chan Mun Choon)
Along with CS3235 and CG3204L, this is one of the best modules for CEG. It talks about low-power wireless sensor devices and how to network them. Topics include established cellular technology and WiFi to forefront research papers on networking protocols. The module has a project to develop a networking Android application that uses the Android smartphone’s sensors to achieve a networked application. Typical projects are crowd-sourcing, inter-friend competition apps and location finding. The module will participate in the STEPS showcase which is held every semester to showcase term projects.

EE4210 – Computer Communication Networks II – (Soh Wee Seng and Biblap Sikdar)
More topics on computer networks, concentrating on the established networking applications, network security and multimedia networking applications. The teaching was good. There was a project which had unclear and misleading objectives that didn’t seem related to the module with an even more misleading marking scheme, a fault of the TA. The second CA assignment was to answer some questions which were pretty lame (from textbook). I find fault with the CA rather than the teaching for this module which really cost me my degree class. The exam was rather too easy so that means very very hard to score well if the CA marks are less than excellent.

The best professors of the 4 years, compiled not because I got As for their modules but because their teaching was excellent.
In no particular order: Heng Chun Huat, Lawrence Wong, Colin Tan, Uncle Soo, Hussin Mutalib, Ashraf Kassim, Tay Teng Tiow, Tulika Mitra, Akash Kumar, Chan Mun Choon.
Special mention: Hugh Anderson (I’m now a zillonaire in Zimbawe Dollars) and Anand Bhojan (for making networking really interesting).

Final CAP: 3.97 (Second Lower).

Posted in Uncategorized | Leave a comment

Exploring Kent Ridge

Once in a while I will get the urge to explore Kent Ridge a bit more. It is regrettable that it took me 4 years before I actually came around to doing it. This time the opportunity came along when I had wanted to take a walk after a long session of working on code.

COM2 to Central Library
Behind that business carpark that is behind COM1 is the synchrotron light source facility. You know, where they park the NUS shuttle busses when they are not being driven around. If you follow the road path (Research Link) up in between the synchrotron light source and the small plant nursery, you will come to an end of the road with the central library annex on the right. Walk up to the central library annex, cross the ‘bridge’ path and turn right up some brick stairs to the back of central library. which is a pretty dusty place. You will end up just in between central library and a cliff. Walk behind central library and you will find that you will come out at the stairs that lead from Kent Ridge Crescent to the linkway between the Chinese library and Engin.

The shortcut to science
A little known shortcut exists between the BIZ2 area to the rear of science faculty. From COM2, walk to BIZ2 and cross Business Link as if going to ICube. Take the stairs down to the road level and cross Business Link again towards Temasek Life Science Laboratory. Walk up the slope to the bin centre of Temasek Life Science Laboratory. Behind the bin centre, walk up the stairs to find a long set of stairs that climbs the ridge perpendicularly to Kent Ridge Road which is the very old road that is drawn along the top of Kent Ridge. Cross Kent Ridge Road and there is another long set of stairs that go down to science at the department of biological science. Follow the yellow ceiling to get to the more familiar area of science (science library/canteen/LT27). Probably about a 10 to 14 minute walk if you are willing to climb that one set of stairs and don’t want to wait for the bus which takes about the same time anyway.

Kent Ridge Road
The old Kent Ridge Road is built along the ridge line of Kent Ridge. From Central Library area, walk up the stairs to the linkway between Engin and Chinese library. Walk up to the stairs that lead to CDTL. This is now Kent Ridge Road. You can walk along the road for a nice scenic route. The road leads along the ridge line. It is a path that graduate students might walk to get to King Edward VII hall. See the nice old buildings abit refurbished. Pass the 2 water towers which sit on the highest points of the ridge at 86m. Pass King Edward VII hall to see one of the more hidden carparks under NUS jurisdiction next to a nice satellite dish communication field. End up at the road that is the junction to South Bouna Vista Road (99 turn road) and Prince George’s Park. Walk to the left to get to Kent Ridge Station.

Posted in General | Leave a comment

Year 4 Sem 1

Final year in CEG. This is one of the most taxing semesters I have committed to with FYP and 4 modules.

CS3210 – Parallel Computing (by Prof Teo Yong Meng)
This module introduces parallel computing concepts to the student. It seemed interesting because all mainstream computers today are parallel capable. The labs introduce two main OpenMP and OpenMPI. You may be familiar with simple pthread programming which on a single processor system will simply be the threads interleaved for operation  (multi-programming). OpenMP allows you to easily create multiple such threads and pass them for work on the other processor cores in today’s Intel microprocessor architectures. OpenMPI is the “message-passing interface” cousin. This allows you to create processes on various different processors (processor cores and other computers) and pass messages between them (cluster computing). There are two projects with the last one being the most tedious and difficult. Most a theoretical introductory module. The take away from the module is that parallel programming is easy to talk about and very hard to do.

CS3235 – Computer Security (by Prof Hugh Anderson)
The pre-requisite for this module is CS2107 which I did in special semester. CS3235 covers roughly the same topics from CS2107 but this time much more in depth (note: understand the math behind AES, diffie-hellman scheme, RSA, elliptic curve cryptography, quantum cryptography). This year had new topics and new maths (elliptic curve, quantum). Instead of repeating the same stuff from CS2107, more ciphers are introduced and some of the topics are explored in depth. The project now (if you want to score) involves some actual work (programming, testing) of a security related topic. This is a step-up from the literature review done in CS2107 project.  The labs thankfully are not so stressful and instead give you an introductory hands-on to exploring security related topics discussed in class. Expect competition as the smartest fellas from CS seem to like this module. Difficult final exam this year due to the new topics. This module is in a higher gear and Prof Anderson will go through alot of material.

CS3204L – Computer Networks Laboratory (by Anand Bhojan)
This used to be 3 MCs and it is now 4. The workload is heavier as a result. The pre-requisite is EE3204 but the theory you learnt from that module is not enough. The lectures will show how much you still don’t know. The module is a lab hands-on to the established networking techniques used in the Internet.  There are labs every week (lab module) and there are programming assignments every 3 weeks or so with a final mini-project. However, Prof. Bhojan is nice and wishes all his students to do well. Follow the labs correctly and you can score. There is no final exam but there is a final quiz which will make you realise that you still don’t know much about networking. It is a very good module to take.

CS4223 – Multi-Core Architectures (by Tulika Mitra)
Most CEG students will be tempted to take this module since we’ve all been through CG3207 (Computer Architecture). This modules goes in depth the concepts that make today’s superscalar, heavily pipelined, out-of-order execution processors possible. It will then introduce the hardware level concepts such as cache coherence and memory consistency that makes multi-processor programming easier to the programmer expecting serialization. It will finish with vector architectures and also introduce GPU architectures. There are two projects and both take quite a bit of time to do. Overall it is a very interesting module and Prof Mitra is very good.



Posted in Modules | Tagged , , , | Leave a comment

Special Semester 2 – CS2107

CS2107: Introduction to Information and System Security (Taught by: Hugh Anderson)

I ended my internship on a Friday only to jump into special semester 2 for CS2107. This is a level 2000 breadth module that is rather popular during normal semester 2 with very high bid points over 2000. The last special semester module I took was CS2103 back in Year 1. I forgot how rushed squeezing a module into 5 weeks can be. However, with only one module, concentration is better. During normal semesters, I find that there are too many things to multiplex between (switching overhead).

I have nothing but praise for this module and the lecturer. Prof Hugh Anderson makes his lectures interesting over an already interesting topic (subjective). His lectures are well-structured, with a nice summary video at the start of each lecture (cue CS2107 wars and the peace-loving NUS-ians [because security is a perpetual war]).  Many of the concepts that he teaches he demonstrates on his computer, showing how easy it really is to attack insecure systems. He does have a lot of interest in various programs and teaching tools which he will install on his computer; I have never seen a Mac with so many icons on the Dock. Now I know why the dock zooms up the icons as you roll over them. He uses simple lecture quizzes to help reinforce topics and generously gives out rewards (chocolate fish among other trinkets).

Contents consists of cryptographic ciphers both classical and modern in breadth, network security, computer security and various examples of current systems in use. There is some set mathematics involved but it should be a piece of cake for any student who has gone through CS1231. There is graded weekly homework which you hand in at the start of the tutorial session. There is also a term project which consists of a write-up on any security topic given by him or chosen by yourself. Mid-term is closed-book MCQ. Final exam is open-book short-answer/open-ended and there are past-year papers for practice.

This is the most interesting and fun breadth module that I have taken and I signed myself up for CS3235 – Computer Security.

Posted in Modules | Tagged , | 2 Comments

Year 3 Summer Holidays… Or Is It?

The semester has come to a close for about a month. Going to work everyday has become a routine. When you start off, it is extremely tiring as you are trying to learn both explicit and implicit signs of how you should conduct yourself at your company. STMicroelectronics Asia Pacific Pte Ltd has their Business HQ (BHQ) at 5A Serangoon North Avenue 5. Lunch routine is the surrounding food courts at Sheng Siong Supermarket or Yummi at the Mapletree Industrial building opposite. It is also rather taxing to have to go to school for two evening modules. Unless you can take it… I think taking EE3001 project is enough. As a CEG student, you do not really have much of a choice to take anything other than EE3001, because you HAVE to take EE3001. I took HR2002 as well but it is really tiring to manage a major project from EE3001 as well as the group and pair projects in HR2002. In fact, you will spend so much time on EE3001 that you will have little time to push on the HR2002 project. Also, you have to either take leave or negotiate with your boss if you do not have leave as an intern in order to study and take the HR2002 exam.

EE3001: Project (Prof Tay Teng Tiow) [Note: This module is no longer offered and has been superseded by another module since TTT retired from NUS]

What ever they say about it not being a technical project, don’t believe it. It would certainly be more impressive if you can produce some technical stuff for show. It is a technical project… what the industry likes to call technical marketing. You need to apply your technical expertise and training and market your product. The synergy between a marketer and engineer. A tall order especially since part of the project component is to have your friends poke holes in your group’s presentation for marks in the Tiger Force review. It is basically a presentation in which you are not graded for the presentation but instead you are graded on how well you poke holes in your peers’ project. If you think students in local universities are quiet during lectures it is because they are not motivated enough. Man is motivated by one simple instinct, survival. This need for survival can come in various forms: water, food, money and grades. Here, your grades are at stake and hence your future level of survivability. Once a great amount of marks are put on thrashing your peers, its a QnA to the death. So much so even the lecturer has to stop the QnA for time and even calm everyone down. Think of wall street stock exchange before they implemented the computer trading system.

And the report. You must become a ‘seer’ and ‘predict’ your product’s future feasibility. I call it cooking numbers. Your report consists of a small part, a technical feasibility and operational explanation. The rest of it MUST contain stuff about how your ‘company’ is going to sell the product, how much money you will ‘make’ and whether it can stand up to ‘competitors’ products. I use quotes simply because a lot of the stuff have to be fabricated on sketchy news data. I don’t think most of us have paid access to IHS tech market analysis news. Funnily enough, its really what you’ll be doing in a large company if you are in technical marketing. Ahem.

HR2002: Human Capital in Organisations (Mr Mathew Linus)

I am not happy with this one. The lecturer is really nice (Mr Mathew Linus). The module is interesting for a business module especially if you look at it from a philosophical perspective. Basically, its about how humans should behave in organisations and it takes readings from texts on self-learning, team-work and leadership in the organisation context. Hard to understand some readings which can be a little philosophical. There was a pair presentation which a pair will have to present on some topic on HR or organisations and management related. There is a group presentation in which you do research and present on a topic on management related to the course topics. Mr Linus is honest and fair but I’ve realised it isn’t all as rosy as he might make it out to be. Being in a night class, you might have the impression that there are less people taking this module. However, you must not forget, its an engineering faculty requirement so you will be competing with the rest of engineering faculty like the ethics module. In semester 2, night classes are overwhelmingly popular with chemical engineering students. However, the module is bell-curved over all the day classes as well of which there are many. I am not happy simply because I got a result less than expected and it probably stemmed from the project which I honestly think could have been more heavily reworked but given my constraints with EE3001, I had to make a cost-benefit choice. The exam is a 3 choose 4 essay type and there are some past year questions to help you figure out what to learn. You have to write like lightning to complete it. My experience was the last of seminar style when it was announced that it would be converted to lecture-tutorial.

Posted in Uncategorized | Tagged , , , | Leave a comment

Internship Programme

Year 2013 and again a new semester. This time I took up EG3601 Industrial Attachment Programme.

EG3601 Industrial Attachment Programme (IAP)
This is a 12 MC, 6 month programme where you go to work everyday (full-time) at a company of your choice out of the offerings on the online IAP system as an intern.

Companies needing interns put up their project scopes on the system and during a time period announced by the University (usually in September), students can enter the system and select projects of their choice. Once your 8 choices ranked in your order has been registered, the University will send your resume that you uploaded to the system to only one of the companies of your choice. If no one is competing with your selected project, then your resume will be sent to the company for that particular project. If someone competes for your selected project, I guess it would be randomly balloted and they will select your next choice for you if your name did not win the ballot. Since IAP is no longer compulsory for engineering students, there should be more offerings than students since most students are not willing to take on a 6 month full-time internship that would potentially disrupt their study schedule. Most prefer the 3 month VIP but from the company’s perspective, 3 months is considered too short to completely train and finish a project. Therefore there is a wider project selection for the 6 month IAP as compared to VIP. Also, VIP would have more students competing for fewer projects.

IAP is Pass/Fail only. No grading. However to ‘pass’ there are certain fulfillment requirements. Namely, you must liaise with your academic mentor who will be the one ‘grading’ your internship. If you followed my advice and did contact your mentor at least back in year 2, then it would be somewhat less awkward to ask your mentor for help. Every 6 weeks from the start of the internship period, you must submit reports according to the guidelines on the IAP website with a 4th and final larger end report after the internship.

Project and Company Selection
Most projects would come across uninteresting or unknown to you lest you are very familiar with the industry. So not much comment on that. Just pick what sounds good to you. However company wise, there are factors to consider.

1. Company culture. Granted, you might not know the company culture off the bat but it pays to try and do as much research as you can on each potential company to find out what suits you. If the company has a website with corporate information, read that. If you have peers or seniors who have gone to those companies, ask them. If you know of coffee-talk shop forums online that talks about the working life, visit them. See which country the company originated from and read up about that country’s culture to get a vague idea of the potential working culture. Start ups and large corporations have different resources and management styles. Asian corporations usually work its employees very hard with a very hierarchical management. Western corporations may have a flatter management structure and give its employees more working independence but may still expect alot from your skill and ability. What ever the case, the more technical jobs are not as highly regarded by both society and the individual. We have thousands of engineering graudates every year but still find a shortage of engineers taking up technical engineering jobs partially because of the low regard for such jobs due to lower pay and lower prestige. Anyway, if you really want a technical engineering job so that you won’t waste all that technical core modules you took, try looking for a company that puts emphasis on technical R&D and continually develops new hardware.

2. Location. A very obvious factor one that some people take for granted. If you live in Woodlands, and want to work in Changi and still want to take evening modules, good luck. You’ll probably be spending half your day on commute.

3. Compensation. Please don’t use compensation as the number 1 metric in project selection. You’ll be paid between 600 to a recommended 800 to 1200 or 1400 depending on the company. Banks usually are willing to pay more. If you did NS, you know this kind of pay for technical knowledge and ability is considered cheap labour. You are there to soak in the experience not collect money unless you really need that money.

The reason for having internships by a company could be for 1. cheap labour (although this is strongly discouraged and ethically wrong) 2. injection of new ideas by young to be graduates or 3. to test out and train potential employees. From a company’s perspective a 4000 dollar expenditure on an unsuitable intern over 6 months is still cheaper than an unsuitable employee over half the period. Although we can say that companies are willing to share experience and work closely with universities, it would be realistic to say that their finance departments would have considered any of the above 3 points.

The reason for you having an internship is to gain much needed experience that every hiring department asks for on their advertisements.

This is different from the 3 month EG3602 Vacation Internship Programme (VIP) worth 6 MCs. You cannot do both IAP and VIP and claim modular credits for both. You also cannot do the ATAP/SIP and claim credits in this manner.

You can take evening modules on the FoE side. Notable modules that CEG students on IA should take are HR2002 and EE3001. If you want, you can also hop into the equivalent elective modules for the BTech course with the pre-requisite three step company -> home department -> OUP approvals.

For us CEG students, we can pick from the IAP/VIP system from the FoE or the equivalent ATAP/SIP programmes from SOC.

Posted in CEG, Modules | Tagged , , | 2 Comments