Advertisement

Final Year Degree Project - General Discussion - Fair or not?

Started by July 06, 2010 02:10 AM
29 comments, last by szecs 14 years, 4 months ago
Quote: Original post by LionMX
...is it fair that his analysis skills are holding him back?

Fair has nothing to do with it. He can either do what is necessary or he can't. If he can't why should he pass? He knows what the problem is so he can take steps to get help and improve in the areas he is weak in.
Dan Marchant - Business Development Consultant
www.obscure.co.uk
Quote: Original post by LionMX

didnt supply any statistical analysis.
Well, that's a pretty big failure - you cannot claim something is better without comparing with baseline.

Quote: But an extension of my question I guess is - he's persisting through this degree to get a job as a programmer (and he's a very good programmer I should add) but is it fair that his analysis skills are holding him back?
The difference between code monkey and engineer are exactly analytical skills.

Quote: as optimization is so critical in games.


The first step to any optimization, of either business process, code, or anything else is the establishement of baseline metrics.
Next, different approaches for improvement are tried.
Unless dealing with very specific code that is limited to a few cycles only, any benefits will need to be measured using statistical techniques, that includes cache effects.
For any non-trivial system, let alone distributed algorithms, there will be a lot of math trying to determine which version is better. Increasingly, tools like R are used to mine hundreds of megabytes of performance logs to determine correlations, or techniques like genetic programming or similar are used to test large batches and evaluate them based on many criteria.

Yes - it's important. Probability and statistics are perhaps the most important skill to have for anything optimization related. Without them, one may write the meanest code possible, yet will not be able to conclusively reason about which is better - all code today is used as part of very large systems, and effects of single change are completely non-trivial.

This is also true for any engineering roles, where it is necessary to evaluate performance of teams, techniques, methodologies and similar. They are needed when evaluating results of unit tests, deploying new versions, or determining quality of improvements made, especially to server software.

PS. If working on something not-quite-new. If merely including a third-party library, then it's back to the "why do I need a degree for this".
Advertisement
Yes I guess you're quite right, analytical skills are very important. I work as a build and release engineer so quite interestingly the coding skills i developed are not used as much as my analytical skills - I do feel for my mate though because he doesn't have anything to show for his ability to code - even if only for a code monkey job.
Quote: Original post by LionMX
he doesn't have anything to show for his ability to code


No side projects? No open source participation? No freelance work? No demos? No business operation on the side? No conferences or presentations? No articles? No certifications?

Then degree won't help a bit.

The software development industry has an absurd surplus of workforce. And things are getting worse, everywhere.
Quote: Original post by LionMX
he doesn't have anything to show for his ability to code

Does that mean what Antheus and I think it does? He didn't code anything else but for the school projects?
Does he like programming at all?
anyway, the two failures (2?? you can fail the driving test in the traffic 2 times. Or the philosophy exam 2 times) made it suspicious in the first place, that he doesn't really like/care-about the field.

Sorry to be harsh.
Quote: Original post by Antheus
Quote: Original post by LionMX
he doesn't have anything to show for his ability to code

The software development industry has an absurd surplus of workforce.

Unfortunately, it's pretty much the same with mechanical engineering.
BSC/MSC or the older system in Hungary lets someone to take the degree in 10 years!!
The 5 year-long course. Every idiots go to engineering university (low requirements to get in), and only half or 2/3 of them are tossed out. 80% of the remaining half or 2/3 (sorry, just guessing, not real statistics) is inadequate to call themselves "mechanical engineers".
And they will get the degree, and their CV:s and applications will look just like mine.
(Since it's pretty hard for an engineer to build a "portfolio": any idiots can draft or make 3D design, but who can afford to build a machine/tune_a_car/etc??)

And it decreases my chances enormously. It's like a lottery if you don't have contacts. And if you are bold enough to go to a foreign country. Even if you were a bright student (which I was. But they don't know it in Finland, they don't know the professors in Hungary)
If the only really adequate people got their degrees, all of them could get a job easily.

Sorry for whining, I usually don't do that, but it is related to the story.
Advertisement
Quote: Original post by szecs
anyway, the two failures (2?? you can fail the driving test in the traffic 2 times. Or the philosophy exam 2 times) made it suspicious in the first place, that he doesn't really like/care-about the field.


Given why he failed I don't think it shows that, I think that it shows he prefers to code rather than do the rest of the work, which I can kind of sympathise with; when I was 18-21 I didn't care about the rest either, I just wanted to code. As I got older I got more intrested 'the rest', in this case being design, optimisation, anaylsis of problems etc beyond simple 'sit down and code it' issue.

The thing is though, something like this doesn't require a huge amount of anaylsis. Going back to my project I produced a series of numbers from automated tests which just ran the code and took numbers for increasing mesh resolution (processing time and memory footprint iirc) then I just waffled about those numbers a bit (why the GPU was faster, bottle necks, that sort of thing) with some supporting graphs so I could say 'look at the pretties!'. [grin]
Quote: Original post by phantom
Quote: Original post by szecs
anyway, the two failures (2?? you can fail the driving test in the traffic 2 times. Or the philosophy exam 2 times) made it suspicious in the first place, that he doesn't really like/care-about the field.


Given why he failed I don't think it shows that, I think that it shows he prefers to code rather than do the rest of the work, which I can kind of sympathise with; when I was 18-21 I didn't care about the rest either, I just wanted to code. As I got older I got more intrested 'the rest', in this case being design, optimisation, anaylsis of problems etc beyond simple 'sit down and code it' issue.

The thing is though, something like this doesn't require a huge amount of anaylsis. Going back to my project I produced a series of numbers from automated tests which just ran the code and took numbers for increasing mesh resolution (processing time and memory footprint iirc) then I just waffled about those numbers a bit (why the GPU was faster, bottle necks, that sort of thing) with some supporting graphs so I could say 'look at the pretties!'. [grin]


Um... Sorry, I'm not good with terms. "Degree" means university degree for me. So I assumed he is not 18-21 any more, but 23-24.
And 2 main projects. Not just some project. He should have known why he failed the first. And I assume the presentation of second happened 1 year after the first. One year (or even just a half), and he failed it again.

Sorry, maybe I misunderstood the whole thing, and it's not the thesis he failed, just some project.
Quote: Original post by szecs
Quote: Original post by phantom
Quote: Original post by szecs
anyway, the two failures (2?? you can fail the driving test in the traffic 2 times. Or the philosophy exam 2 times) made it suspicious in the first place, that he doesn't really like/care-about the field.


Given why he failed I don't think it shows that, I think that it shows he prefers to code rather than do the rest of the work, which I can kind of sympathise with; when I was 18-21 I didn't care about the rest either, I just wanted to code. As I got older I got more intrested 'the rest', in this case being design, optimisation, anaylsis of problems etc beyond simple 'sit down and code it' issue.

The thing is though, something like this doesn't require a huge amount of anaylsis. Going back to my project I produced a series of numbers from automated tests which just ran the code and took numbers for increasing mesh resolution (processing time and memory footprint iirc) then I just waffled about those numbers a bit (why the GPU was faster, bottle necks, that sort of thing) with some supporting graphs so I could say 'look at the pretties!'. [grin]


Um... Sorry, I1m not good with terms. "Degree" means university degree for me. So i assumed he is not 18-21 any more, but 23-24.
And 2 main exams. Not just some exams.


Yes it is a university degree i'm refering to and he has only just turned 21.

He has a ton of demo's, games etc but unless things have changed on 1 year ago when I was looking for graduate jobs unless you have a 2:1 most companies wont even phone you back.
Quote: Original post by szecs
Um... Sorry, I'm not good with terms. "Degree" means university degree for me. So I assumed he is not 18-21 any more, but 23-24.


A BSc degree in the UK is, generally, taken between the ages of 18 and 21 for 3 year course (which probably the majority are) with optional industrial placement and foundation years (year 0) if you lack the initial enterance requirements.

This topic is closed to new replies.

Advertisement