Welcome Guest ( Log In | Register )

Outline · [ Standard ] · Linear+

University Which university for Software Engineering (SE)?, Seeking advice, guidance and suggestions

views
     
evofantasy
post Jan 16 2017, 02:53 PM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
There seems to be a lot of misconceptions in this thread:

1. Computer Science (CS) isn't theoretical at all (in fact many university do not offer the technical side anymore even in NUS). At its core, it is about problem solving and analytical thinking. What differentiate CS over IT is that you are expected to be able to analyze your solutions and come up with the best solution possible (optimization). Thus, the 2 main topics for a CS major is algorithms (steps towards solving various problems) and data structures (how to store/ manage data towards solving the problem). From there, you can specialize in a lot of areas from information retrieval, machine learning, data science etc... This is by far the hardest computing course but really in demand (check Australia's credit score for VISA application) as good companies would be able to differentiate a CS graduate from an IT graduate easily. What you learn would usually be what asked in Google/ Amazon or other big companies' interview (you would be expose to these questions in your 2nd year CS).

2. Software Engineering (SE) has little to do with Engineering at all. SE is usually a minor or major in a CS course -- designing and developing software through systematic means (this is why u get the engineering word). As an established field, you would learn about available design patterns which are the core template towards software design for various systems. You would also go through various development methodology like AGILE etc... Once again, this is more to a minor for most CS courses.

PS: I teach comp science in a top-100 international university and finishing my PhD soon.
PS2: Don't bother with IT courses, CS courses are much more valuable due to the analytical training which you will gain. If you can afford, go for international university.

Example of a classic Computer Science question:
Can you state the k-th number in the Fibonacci sequence, where k is a large number? If you are in IT, you would be able to program out a simple solution with recursion which will take O(2^N) time complexity. If you are in CS, you would do the tail-recursion approach, which reduces the time complexity to O(N) that is significantly faster. If you are in 2nd year CS onwards, you would be able to do this in O(log N) through matrix multiplication + tail recursion. Also there is auxiliary space complexity optimization as well =)

This post has been edited by evofantasy: Jan 16 2017, 02:56 PM
evofantasy
post Jan 16 2017, 10:37 PM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
QUOTE(LightKeyDarkBlade @ Jan 16 2017, 08:38 PM)
I see, I see. So CS isn't really theoretical while SE is about designing and developing software by applying the core knowledge in CS, hence it being a minor or major of CS.

I'm not interested in other computing & IT courses, only CS and SE, and it seems that CS is the one that is more suitable for me.

Some people said that CS and SE do not deal much with mathematics and that it won't be rigorous, but according to your example of a CS question, it's good for me to hear that as math is the way for me even if my math is just good and better than all of my subjects and isn't super strong or anything like that.

I may not go overseas for my whole CS course as I wouldn't be able to go anywhere good or decent with my average A-Level result. I'll go for Nottingham and then perhaps go for their inter-campus exchange programme for my last year.

Anyway, thanks a lot for your info and comparison of CS and SE. It helped me make up my mind. thumbup.gif
*
That's a problem with local colleges/ universities -- they are calling their IT courses CS when it isn't (giving CS a bad name locally when it is such a desirable course internationally). CS will always have maths because a lot of the algorithms were inspired by maths and can be proven by maths. Most of the established universities have their school of computing and math together.

As for Nottingham, I can't comment much since I am not so familiar with the course structure there (I am from Monash myself). One thing to know is that in CS -- there is no one right answer; instead you are encourage to explore and try things out towards pushing the limits as what I always tell my students to do. As long as you are able to justify it then you are good to go =) Thus, your education focus is never about the knowledge gain but the skill to gain new knowledge.

All the best in your studies in the future!
evofantasy
post Jul 4 2017, 09:34 PM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
QUOTE(aBcD-| @ Jul 4 2017, 02:30 PM)
When it comes to assignment, an intermediary component is unlikely taught in syllabus.
I have too, who spent a lot of my time in YouTube for learning how to do integration.

I guess this is the goal of assignment, having amount of time in doing it at home while explore its needs.

As I'm aware, that my slides provided by lecturer always incomplete. Therefore, I have a reference book in case I need to.
*
Yup there is how it is. Assignments are meant for exploration, tutorials are to go through what you learnt in the lectures. While often it may not seem related, assignments are often designed to complement the sysllabus.
evofantasy
post Jul 5 2017, 02:56 PM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
QUOTE(LightKeyDarkBlade @ Jul 5 2017, 03:18 AM)
The lectures and lecture slides of my units are not really incomplete in my case. If the lecture slides do not have sufficient elaboration, the lecturers would explain things in details themselves. So I don't have to worry about the lack of information in the lectures as a whole.

As for assignments, yes they're meant to complement what you learn in your lectures, tutorials, and workshops and perhaps a certain proper amount of research might be required (they are called "assignments" or "projects" for a reason) but they definitely should not deviate too much.

In one of my units, even the tutor himself stated that he's upset about the design of the unit. There's only one class of a particular code and that class is literally asking you to go to a website and do the exercises yourself. In one of the assignments, you're actually required to have quite an amount of understanding of code to accomplish a certain task and requirement in the assignment. The unit covers a small bit of everything that you'll actually be confused and learn nothing in the end. There's no proper focus. The tutorials are also very disconnected from the lectures, and basically only the lectures have important information. There's also the "peer assessment" where a student can affect other students' marks, and it's in two of the assignments. This is in the tutor's words.

What I want to add about that unit is that the lectures and the exam have absolutely nothing about coding. So we have very less lessons on coding in the tutorials and they're all solely for one of the assignments.

Of course, I'm no blaming my possibly bad results for a couple of the units for this reason. Whatever marks that I couldn't obtain are totally my fault (except for the peer assessment). However, I have seen well structured and designed units and I have also seen units with messy structure and design with incompatibility between different aspects in the units as a whole.
*
Yup not all units would be well developed -- often an iterative process of enhancement. If you are in the first cohort when a unit is redesigned/ introduced then it would be really messy especially when the CE is in the Aussie campus. As for the coding part, just my personal opinion but the first year units are too light on coding now compared to when I was a student.
evofantasy
post Jul 5 2017, 11:42 PM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
QUOTE(LightKeyDarkBlade @ Jul 5 2017, 10:26 PM)
The unit is not new but I'm not sure how old is the unit. As for coding, I guess I can agree that it's actually not that difficult in the first year units. Initially, I had trouble with the Python unit as I had zero experience on coding prior to that but in time, I've grown accustomed to it and the logic behind coding as a whole so it makes it much easier and I guess the syntax is the only difficulty if I have to learn multiple computer languages. In that unit, the workshops may have some slightly difficult coding problems but in the exam, the coding is very less and simple. I don't really have any issue with the unit other than that.

For the unit that I mentioned earlier, we learn a couple of languages (only the basics) but the unit actually prioritises on theoretical and fundamental topics so the exam has zero coding most of the time. The issue is the tutorials have very little lesson on coding and the lesson is asking you to learn it yourself basically (making no sense as a unit in a CS university course) and one assignment has a lot of coding and that's the only place for you to show your coding skills in that whole unit.

I'm not sure the difference on coding difficulty between now and then though. Perhaps you're right on that.
It wasn't "peer assignment" where you team up with some students to work on the assignment. It was "peer assessment" where you give feedback on and assess other students which affects their marks. I have no issue on peer assignments and usually you need focus on your own work instead of depending on other students. But "peer assessment" is preposterous, in my tutor's words.

The unit that I was complaining about previously was actually not a coding unit. It's all about theory and our tutorials have very little coding (asking you to learn yourself). The only place with coding is one of the assignments and you need to understand much about coding for that assignment. It's ridiculous when the unit doesn't actually teach you coding. Then, the exam has zero coding.

I had another unit which teaches you about Python. So the lectures teach you both about the concepts and some coding, the tutorials focus on the concepts, and the workshops focus on coding. That unit is actually well structured where you can see the connection between everything that you learned. However, the exam turned out to have simple coding compared to what we learned in the workshops and everything else is theory.

Our units actually have less time on lectures most of the time. This is actually one of the major problems where even my lecturers state that they have very little time to explain and elaborate and they have to organise extra lectures. The unit that I complained about only has one hour lecture per week and everything that the exam asks is all from the lectures. The tutorials aren't much but they have three hours per week and the tutor doesn't need to use the whole duration every week (except when assessing our presentations).
*
I personally think there should be more coding in Year 1 Semester 1 because coding would be the tool you would use. Computer Science concerns less about coding by nature -- more to formal definitions, algorithms and data structure rather than coding. Often, you would find exams asking you to write algorithms than codes.

As for the peer-assessment, I do not agree with it but I can see where this is coming from. Code-reviewing is something you would do a lot in the industry and I guess they want to get this started early. Only by reviewing other's code you can improve your code as well besides the need to always work with others. I hate the fact it affect your marks of course but if there isn't marks, then no one would be doing it =(
evofantasy
post Jul 6 2017, 06:19 AM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
ah i think it is too early for such judgement to be in 1st year 1st semester. i personally enjoy tutorials more than lectures since lectures can be really dry.
evofantasy
post Jul 7 2017, 05:10 AM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
QUOTE(LightKeyDarkBlade @ Jul 6 2017, 11:27 PM)

You're a tutor of a 1st year and 2nd year units, right? Do you have any issues or things that you don't agree with in your units? And it's also kinda funny that I previously told you that I had issue with FIT1045 but eventually, it turned out that I have no issues on FIT1045 and instead it's the other units.  lol.gif

*
well there are but in general my units are really well developed (and hard lol)
evofantasy
post Jul 7 2017, 05:46 PM

Avadion of the Enders
*******
Senior Member
2,690 posts

Joined: Aug 2005
From: Penang/ Kuala Lumpur
QUOTE(ngaisteve1 @ Jul 7 2017, 08:19 AM)
Usually around how many students in your class? 30-40?
*
depends on units
- some units can have just around 10 (less popular)
- some units can have up to 200 (core units)
tutorials and labs are usually limited to 20-25 max unless special cases

 

Change to:
| Lo-Fi Version
0.1063sec    0.55    6 queries    GZIP Disabled
Time is now: 18th December 2025 - 08:52 PM