It's not only Databases but Machine Learning and AI as well. I'm really looking forward to these Stanford classes and hope to take them successfully while doing my actual studies.
This was one of my favorite CS classes I took at Stanford. It will do a great job teaching you the theory behind dbs then bridge that theory with real-world examples. If you want to get an idea about how databases operate behind the scenes AND how they should be properly used, this is a great class for you.
The relational algebra sections of the course are intriguing because it forces you to solve problems using a set of constraints that aren't present in other programming languages—really interesting stuff.
Can anyone offer some advice in choosing between the three courses?
My background: I've only completed CS 1, and read LPTHW and Kochan's Objective-C book. I have about an hour's worth of Khan Academy videos in linear algebra, and have taken a basic prob/stats course. My university offers a database class, but not ML or AI. Based on my minimal knowledge of the subjects, ML/AI sound more interesting than databases.
You're more likely to need and use the DB course topics earlier in your career, unless you specifically get a job in ML or AI. However, those topics are also easier to learn and understand on your own without guidance. If you post your school's db course curriculum, we can help you compare it with the Stanford one.
Initial instinct - go with the ai or ml course (or take a reduced course load this fall and take both, then see if you can get the Stanford completion certificate to transfer as credits to your school).
I did my PhD at Stanford and took all three classes. DB is a more fundamental class, and probably easier. AI and ML are both great but they are designed to be taken in sequence with AI first then ML (which is a sub-field of AI).
>However, those topics are also easier to learn and understand on your own without guidance.
Yeah, by 'those topics' I meant the ones covered in the DB course, not the other two. Most aspiring programmers usually find relational theory and XML relatively easy to grok.
Thanks for your help! The syllabus for DB isn't up yet at my University, so I can't give more details [1]. But given that you say DB should be easier, and that I can take it at my school, I think I should take AI. Besides--I had the same gut feeling.
[1] writing this I now realize I could easily get last year's course, but I'm satisfied with my current decision
That was a great way to make me google MemSQL. Are you guys affiliated with the course at all, or just being helpful and doing marketing at the same time?
anybody know if it's inappropriate to sign up to be able to watch the lectures and check out the homework, but not actually intend to submit all the assignments? it's not clear if the course materials will be accessible without being officially "enrolled". I want to check it out at my own pace but I can't guarantee I'll have the free time each week for the assignments.
Even though I usually scoff at pre-registration signup forms, I was very excited to fill this one in.
I'm sure there's a lesson to be learned about my own sampling bias and it might be time to rethink this stance (how ever hard it may be to recognise that people can actually find enjoyment in hearing about product launches and events!)
All of these online Stanford classes seem very cool. I hope that enough people sign up for these that grading and certificates become more popular from all of the highly respected schools.
A quick look through the syllabus shows that the last video is "NoSQL Systems". Nothing specific in the Course Materials though. Maybe an Intro to Databases class should talk a little more about other approaches such as document-oriented databases. I know they (academia) are sticking to classical CS, but maybe some parts of relational databases could be covered in a second class on databases, to make room for more exploration on other DB approaches in an intro class.
I'd love to sign up for both this and the ml class (though, I think I will sign up for the ml class...).
However, I've already committed to the AI class, and in addition to my regular coursework (Entering second year of uni, go me!), I don't think I'll be able to handle this.
for what it's worth, if you take the ML class, you will learn most of the things you would learn in the AI class and more - although it does get a bit rigorous, and will take more time than the AI class would.
this is easily one of the best classes i've been able to take - as i said in the other thread, i was surprised to enjoy a 3-hour midterm! i think it's awesome they're making this available to more people.
I wonder how the assignments will work? Will they all be automated grading (based on some sort of validated output?) If the users gets to thousands, hand-grading is out of the question...
This is great- I'm taking Into to Databases and AI at my university this semester, and I'm sure working the Stanford courses alongside those will give me some awesome perspective.
Anyone know if there are any prerequisites for the class? Would someone with programming knowledge but no database knowledge be able to take this class?
I just signed up and have some programming knowledge but practically no database knowledge. From reading the description and looking at the syllabus, I don't think any coding knowledge is required. I do think though that this is critical for learning to code because you're always going to be dealing with db's in some form or another, so I'm excited.
Direct links:
- Databases: http://www.db-class.org/
- Machine Learning: http://www.ml-class.org/
- Artificial Intelligence: http://www.ai-class.com/