English: I poop rainbows     Bahasa Melayu: Ku terfikir     Personal Site

Wednesday, February 6, 2013

Second semester at Polytech Nice-Sophia

Hello world,

In this post, I’m going to tell you about the cool subjects I’m taking this semester in my Computer Science course at Polytech Sophia. Right now I’m in the middle of the first week of the new semester, so I still haven’t encountered all the subjects yet, (and I can’t guess what they are from the cryptic acronyms on the time table). So far though, all the classes I’ve been to are really interesting, and all the lecturers are awesome!
This semester started off with an 8 am lecture on Monday in the lecture hall. I arrived just as the lecture was about to start and I was pleasantly surprised to see that the slides were all in English (And they were interesting and nice to look to at too)! The lecturer, a young type, had studied in America (or lectured there before, or something like that) and so his slides are in English. The entire course content is accessible on the web page for the subject, which is also entirely in English. The subject is called Tools for Software Engineering in which we learn how to use professional tools to develop software (like using IDEs such as Eclipse and source code repositories like Git for collaborating in group projects) They also teach us methods for managing software developments projects, like Agile Software Development and the Kanban method. The lecturer tried to make his lecturer more interesting by getting us to interact. He’d ask us for our ideas and opinions and discusses our answers before getting to the key points in the slide. It’s a really effective method to get us to pay attention.
In this class, we’re supposed to apply what we learn to work in groups of four to design a computer game based on the board game Myrmes and then to design a bot to play the game. Then all the groups will pit their bots against each other during weekly tournaments. There’s no exam, just this project. And we’re supposed to use the tools to do proper code versioning, documentation and testing.
The next subject that we have every Monday is Object-oriented Programming, with M. Peter Sanders, a Canadian (I think) lecturer. He speaks English and French, so the material for his course is in English too. He speaks mostly French during the lecturers and lab sessions, and his slides and notes are very well presented as well. The aim of this course is to teach us how to deliver tested, professional-quality software in Java and to familiarize us with certain recent notions in the world of software development, like test-driven development. The first class was an introduction to the history of Java, and then he briefly talked about the future of Java, as well as some other programming languages that are currently popular. The next day, we had a lab session where we updated Java on our laptops to Java 7, installed Eclipse and learned how to use it. Then he ended the class with a brief lecture about professional-quality code and improving code structure. We learned about responsibility-driven design, code refactoring, some design guidelines, cohesion and coupling.
After the first object-oriented programming class on Monday, we had a C and Systems Programming class. This class too, started off with a lecture about the history of C (which was quite interesting) before going into an introduction to C with the traditional Hello World! I knew most of the stuff that he taught during that part of the lecture, but I still did learn a few things. Later on in the evening, we had a lab session and I familiarized myself with developing in C in Linux. The first lab session was a bit slow, because my C is a bit rusty, but it’ll pick up speed soon.   
On Monday we also had our first English class with our new lecturer, a French-Canadian lady. She’s very nice and being in her class is quite enjoyable. She had us all introduce each other to her and to the rest of the class, by telling everyone what makes the other person a hero – as in, what makes them special. It was a really interesting activity, and we learned some things about our classmates. I think it also made everyone feel a bit better about themselves (well, at least it made me feel that way)
Yesterday, class started at 10.30 a.m. In that class, we were presented with the project that we’ll be doing this semester, called Projet DeVINT. For this class, we’ll work in groups of 3 or 4 to develop an application for vision-impaired people. We’ll be coding in Java, and we’ll have to learn about designing software with accessibility for the visually impaired. My group has decided to do a Monopoly game for the blind, using the text-to-speech engine provided. We’ll be working with two schools for the visually impaired – they’re sort of like our clients, and they’ll explain to use what they need in the software and they’ll test it out to see if it works for them. There’s no exam for this class either, just a project. During this first session, the lecturer explained to us the timeline of the project and then got us thinking about accessibility in software. Then he showed us videos showing us how blind people do things and how they interact with software as well as raising awareness about how to interact with them in non-offensive ways by playing videos which are offensive hilarious to blind people (but it doesn’t matter because they can’t see it).
Today, we had three new subjects. The first one was Gestion d’entreprise where we learn about companies, economy, company law, company structure and a little bit of accounting. Of course, it’s a course for engineers, so it looks at things from an engineer’s stand point, and discusses things which are relevant to software engineers and managing engineers. The lecturer’s really funny, and he gets our attention. He makes everyone participate and he’s always poking fun at everyone and everything. He really knows his stuff, and he quotes all sorts of economists and he knows so much about the economy in so many different countries. He mentioned that the students who score the highest in his class will have the opportunity to do a sort of double Masters kind of thing in the next year and the final year and graduate with a Masters in Computer Science and Management of some sort, which would look so awesome on a CV.
After that, we had a Formal Language and Automaton (LFA) class, taught by Mr Bond, the lecturer who taught us Discrete Maths last semester. I’ve learned about automatons at the IUT de Nice, so I have some notions of this subject. I was thinking that it would be very complicated, but today’s lecture proved to be easy enough to understand, and although not quite as exciting as the other subjects, is still quite interesting.
The last class we had today was Probability. It’s mathematics, and I generally don’t fancy mathematics, but probability is actually quite interesting to me. Sure, it gets complicated, but I think the lecturer does a very good job at teaching it in a way that even I can understand quite readily. Before he started his lecture, I asked him why we were learning probability, as in, why do we need to learn it, as computer science students, so I could have a clear picture of why. He gave a very good answer with plenty of examples, and that helped motivate me a little to be less apprehensive of this scary mathematics subject.
Tomorrow, there’s Probablilty again, followed by LFA. On Friday I’ll be having one new subject with the acronyms ASD. I don’t know what that is, but it’s taught by the lecturer who taught us shell scripts last semester, and he’s good, so I’m looking forward to it. In the evening will be our first lab session for the Software Engineering class.
Next Tuesday, the second-language classes will start, and I’ll be doing Spanish! I’m really excited to start that class.
Anyway, I’m gonna read my notes on probability. The lecturer gave us an interesting problem to solve: Calculate the probability of getting, in a game of poker, with a hand of five cards: one pair, two pairs, three of a kind and four of a kind. Finally, maths homework that’s actually mildly interesting!

No comments:

Post a Comment