Comment More of the same (Score 4, Interesting) 117
And Mars continues to give Russia a big, fat middle finger. No Russian/Soviet probe has successfully completed a mission to the Red Planet...
And Mars continues to give Russia a big, fat middle finger. No Russian/Soviet probe has successfully completed a mission to the Red Planet...
If you want to learn controls, it seems Electrical Engineering would be a better fit than Computer Science. While Mechanical Engineers have to learn a fair degree of controls theory, the EE guys live and breathe controls, so it would make you more proficient in that area, at least on paper.
Have you considered using Fortran? Matlab is much closer to Fortran than C (arrays start at 1 instead of 0, to pick a rather annoying bug), has plenty of libraries available (just like C) and the newer versions of the language standard are not the spaghetti-laden soup they used to be.
Heh, I was wondering what K'Breel was going to say about this. You seriously should put all of these in an eBook or something similar... if nothing else to ensure that all the gelsacs that have been sacrificed during the Blue Planet's invasion are memorialized properly.
Awesome post. Let me add one thing, though: If you like BASIC, you will love FORTRAN. It is procedural, so it is similar in concepts to BASIC; and it is extensible, so you can start with a Hello World program in Fortran with a PRINT *, "Hello World", similar to BASIC's PRINT "Hello World".
You can then gradually introduce concepts, such as loops and conditionals in the same way with BASIC; then, you can take on more complex ideas, such as variable typing and allocation (IMPLICIT NONE ftw!), pointers, modules/classes, and you can go all the way to object oriented fluff with the latest standards.
Moreover, FORTRAN is still being used in industry, and not just as a legacy language. There is extensive development of parallel code in Fortran, and the language still reigns king in High-Performance Computing. Thus, the language can grow and be anything from a crayon to a calligraphy quill as desired.
The big drawback is that once they're lit you have no control, you can't turn them off, or even throttle them down.
Something I've always wondered, if one of the shuttle's SRBs fails to lit and the other one starts up, what happens?
At that point, you're fucked...
The major problem with adoption is probably that most of the people running jobs on SC's are scientists not computer scientists. They use large piles of ancient, well tested libraries and only tweak small parts of the code that are specific to their problem. This means that most of those libraries will need to be ported to OpenCL and CUDA before adoption really picks up.
And we have a winner!
Most people do not want to write their eigensolvers, Poisson system solvers, matrix multiplication routines, and the like. They just want to use code that already does that, and that has been tested to do its job well. Code verification is important. So, the libraries that do so need to be ported before anyone in HPC switches to GPU architectures seriously. (Remember: this is the land where FORTRAN is still king...)
Next Wednesday: http://www.optoutday.com/
Obligatory: http://xkcd.com/779/
Only through hard work and perseverance can one truly suffer.