What do you learn in Computer Science courses?

Which university in the world offers the best or at least updated courses/programs to learn the fundamentals of computer science or modern web development?

  • Preferably physical university but of course open to online or MOOC (I've tried Coursera before) if it's valid.

  • Answer:

    The MIT has a multitude of their courses available online, and for free. http://Ocw.mit.edu , then select electrical engineering and computer science. You will find all you are looking for... And lots more.

Carsten Schlimm at Quora Visit the source

Was this solution helpful to you?

Other answers

There are two approaches to learning about computing and computer science.  One is to learn all the latest gizmos and buzzwords — become facile with the latest techniques and technologies.  This the equivalent of learning to code in 30 days, and then spending another 30 days on learning web design.If you take this path, you can meet the description of what many companies say they're looking for.  However, unless you spend a lot of your time learning the "next big thing" that comes along, you will find your skills quickly getting stale.  And without a deeper background, it may be difficult to pick up the new skills — or recognize what is really important to learn.Furthermore, without a deeper understanding of concepts, the code (or web sites) you produce are likely to be more complex and slower than they need to be.  Plus, issues of security and privacy won't even be recognized…although that won't mean much to the developers, because their code "works" but ultimately it's not a good thing. The second approach is to learn fundamentals — algorithm design, data structures, architecture, software engineering.  Learn at least 3-5 languages, do programming in machine language and in an OS, and maybe build a compiler and a DBMS.  This may not mean being conversant with the latest buzz words or the hot new tools on the market.  However, it does mean that it will be simpler to pick those up and use them efficiently over time.What's more, a deeper education  means that there is a greater likelihood (but not assurance) that whatever is produced is more efficient and safer than it might otherwise be.  People with the more comprehensive education also tend to "age" better in the job market — it is simpler for them to pick up new skills and concepts along the way than people without that foundation.People who take the first approach — including the self-taught — often denigrate the second approach.  That's ether because it is too early in their careers for the difference to be seen, or perhaps a demonstration of https://en.wikipedia.org/wiki/Dunning%C3%A2%C2%80%C2%93Kruger_effect.  A few, very good individuals may  succeed for a while without depth, but unless very lucky, a career is an adult lifetime long and they will eventually run into issues with their knowledge.So let's return to your question.  "The best" is rather subjective.  "best" according to what metric?  And how much less is "next best" or "10th best"? Would one of those meet the same goals?  In a way, "modern web development" and "updated" are also vague.   "Modern" relative to when, and what measure?  Would the very latest version of a bridle and saddle, made with titanium, with built-in biometrics and LEDs, be "modern transportation technology"? Would a solar-powered butter churn with its own automatically-updated webpage via bluetooth in the cloud be "modern food processing technology"?There are hundreds, if not thousands, of colleges that teach a comprehensive CS curriculum.  Many of them will include some "updated" technologies in the courses, but few colleges can afford to pay for the very latest tools and software (few companies donate items for education, and most colleges are cash-poor) — especially as the newest tech isn't needed to teach fundamentals.  In cyber security (at least) many of the most "modern" technologies are actually garbage, so it isn't worth training students in their use.If you want a career in computing, find colleges with an accredited, established CS department that is able to https://www.cs.purdue.edu/corporate/partners/index.html with the kinds of companies you might want to work for; companies rarely devote money and their reputation to programs that don't consistently turn out well-qualified graduates.  (I'd suggest you avoid for-profit trade schools — most offer far less for the money than traditional colleges.)   Decide what you want to do as a career, and maybe have as a second concentration area (major), then determine if the colleges you are looking at offer those things.  Look at the profiles of the faculty — what are their backgrounds and skillets?  See what the school's placement of graduates is like.  Then pick the one that s the best match and you like best (and can get into) to pursue your degree.  You can always teach yourself the "latest" over summers or after you graduate.  You will have a longer and more satisfying career as a result.  (See also my post https://spaf.quora.com/How-do-I-get-into-a-top-program-universityAs to MOOCs/online education, I have discussed that at length here:https://spaf.quora.com/MOOCs-vs-Traditional-Courses

Gene Spafford

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.