Intro to Relational Databases
Relational databases are a powerful tool used throughout the industry.
Reddacity may receive an affiliate commission if you enroll in a paid course after using these buttons to visit Udacity. Thank you for using these buttons to support Reddacity.
Reddit Posts and Comments
0 posts • 30 mentions • top 10 shown below
3 points • firecopy
Here is a guide on what to learn:
- Learn about ER diagrams
- Learn about SQL. https://www.udacity.com/course/intro-to-relational-databases--ud197 has been my favorite (free) course so far.
- Learn what programming language your company is using with MySQL, and learn how to manipulate the MySQL tables with this programming language.
- Learn how to create tests that don't touch the production database, but spins up its own database for testing.
- Learn what database migration tool your company uses, and learn it.
- Learn how to deploy an app to the cloud with database functionality.
- Become the best database developer at your company.
Bonus: 8. Write a guide teaching other developers on how to use databases with their apps.
2 points • Saucemann
22 points • my_password_is______
all these are free -- don't know how good they are
this is free -- you only pay if you want a certificate
1 points • Thenatic
You're facing an uphill battle without a degree. It is entirely possible that you get a job without one, but you're competing against every CS and IT grad in the country. Not only that, you're going to have to prove that you're just as good. Unless you're one of those rare self-taught prodigies that can build a full video game with no experience, this is going to be very difficult.
My personal recommendation is that you look into becoming a DBA (Database Administrator). It's not a programming-heavy job, but it pays well and most CS grads are overqualified for it. Your SQL, MongoDB, and web dev experience will be helpful here. You'll just need to pick up some Database Theory and build a few portfolio projects. Take this free Udacity course for a good once-over.
Java, Swift, MongoDB, SQL, and all the others are Technologies. They're tools that programmers and others can use to accomplish tasks (like building apps).
Being a good programmer is about recognizing the patterns and best practices between Technologies. If you know loops, functions, classes, API's, and such, it isn't too hard to switch tools. Don't get caught up in learning how to be the best Swift programmer or you'll suffer the same fate as the legions of unemployed COBOL programmers (it was supposedly the world's most popular programming language in 1970). If you really want to be a good programmer, you need to spend a lot of time (years) building things and getting feedback on them. It isn't something you're going to pick up in three months.
3 points • Kumagor0
>Things that I wish I spent more time learning
I second RegEx, it just happened that I got some experience in that before getting my first JS job and it helped A LOT.
Regarding databases, I had experience with both SQL and Mongo and they are just suited for different tasks. That being said, if you don't know what you need, you probably need SQL because it just saves you from so much consistency-related problems in the future. This course helped me to learn basics and from there I just googled whatever operators I needed.
Two things I'd like to add are:
1) Good text editor with plugins and stuff. I recommend VSCode, it just has more quality of life features than I've ever dreamed of when I started using it.
2) This is probably a matter of taste, but what truly changed my perception of JS and programming in general was Ramda. I think for many "real" (as in not web) programmers functional programming has been a thing for many years, but for me as a newbie JS developer it was a mindblowing concept and now I can't imagine my work without it.
22 points • SenyorHote
Entry-Level Job hunting
Is it enough to land an Entry-Level Developer job? Is there a minimum requirements for qualifying as a dev? I asked this cause i rarely got replies on my email application(could be my resume tho). and also is it worth changing language as most jobs here in my country wants PHP instead of Python. Here are the lessons on the course on Udacity. I would also appreciate it if you could suggest another course to follow or take to help me become better.
Part 1: Developer Tools
Part 2: Databases with SQL & Python
Part 3: Servers, Authorization, and CRUD
Part 4: Deploying to Linux Servers
Im now at "Authentication & Authorization"
1 points • RossumEcho
SQL is important to know, but getting certified in it is definitely overkill.
For SQL, I think knowing how to do these aspects would be more useful:
Designing a relational database - great for thinking about how to satisfy business requirements on a database, as well as thinking about the architecture your app would need.
Defining a schema, entering values, querying using JOIN (Inner Join, Natural Join), aggregates (SUM, COUNT), maybe sub query's (Although admittedly I don't use them a lot in real-life applications).
Querying a database to display on an application, then edit values, save to a database using a REST API
If you know how to do all these, you're pretty much set.
As for the course itself, the first module is very very basic. You can learn all that in 1-2 hrs max. In fact you probably already know how if you took the code academy one. it may help with #2, especially with joins, but I don't think it would help beyond that.
I just checked Udacity, and I think their Intro to Relational Databases may be more useful, as well as Database Systems concepts and designs - and both are free! The intro course also uses python which could be great to deepen your python knowledge.
If you really want paid though, this is just a glance at their course, but their Full Stack Web Developer Nanodegree doesn't sound too shabby. They use MVC architecture as well as python so it might be a good fit. It is a little bit more expensive though, so definitely start with the free ones. Also check Udemy to see if there are more affordable courses.
1 points • Nater5000
What's the context? What constitutes the "basics" of SQL (or really any concept, for that matter) depends on the context.
In general, Udacity (and I'm sure other MOOCs) work well as an introduction to technical concepts. Their Intro to Relational Databases course is probably the place to start, but to reiterate my above sentiment, they also have a SQL for Data Analysis course and an Intro to Backend course, both of which go over SQL from different perspectives.
Depending on your usage, you may need to learn some coding, first, before delving directly into SQL. Those courses highlight the expected prior experience, but you'll need to determine what you need to do on your own.
1 points • fluff12321
Sure, here's a few I'd recommend that were a good combination of fun/interesting & well explained:
Intro to Python: I took several short/interactive tutorials to get the basics down: - https://www.codecademy.com/learn/learn-python - https://www.codeschool.com/learn/python
Introductory CS: - https://www.udacity.com/course/intro-to-computer-science--cs101 - https://www.udacity.com/course/intro-to-relational-databases--ud197
AI: - https://www.udacity.com/course/intro-to-artificial-intelligence--cs271
Machine Learning: - https://www.coursera.org/learn/machine-learning
Algorithms: - https://www.coursera.org/learn/algorithms-part1 - https://www.coursera.org/learn/algorithms-part2
More intermediate/advanced, but really excellent: https://www.udacity.com/course/design-of-computer-programs--cs212
After the introductory stuff, you can take AI, ML, or Algorithms in any order you find appealing. Enjoy!
1 points • anseho
I think you should be in a good position! In my case got started by tooking a few Udacity courses and reading a few books. Then I took more courses and read nearly every book I could my hands on. Today I might look into Coursera as well.
You have to choose a language to get started with. I recommend Python since it's easy to pick up. Also Python has powerful data science libraries, so you might find ways to apply it to your own work.
In my case I figured I like web development and natural language processing, so I took courses and read books on those topics. I found a way to use Python for my own research and managed to build a toolset with another colleague. We wrote a couple of articles about that and gave some presentations. This is one publication we made: (https://www.degruyter.com/view/book/9783110376517/10.1515/9783110376517-010.xml)
Some material I can recommend:
- To learn Python, I'd recommend Python Crash Course by Eric Matthes and Automate the Boring Stuff with Python by Al Sweigart.
- For SQL I'd recommend Learning SQL by Alan Beaulieu. There's also a good SQL course in Udacity.
- For Linux I recommend Beginning the Linux Command Line by Sander van Vugt. There's also a good course on this in Udacity
- For Git I recommend this course in Udacity.
I also recommend that you read some book about writing good quality software, such as Clean Code by Bob Martin.
[I can help but recommend by own book as well :D: Developing Microservice APIs with Python]
The previous list is by no means exhaustive, and you may yourself find better material once you start searching.
The journey is tough. There's a lot to take in and to digest, so take it easy, one step at a time. Like everything else, including the PhD, the key is persistence. The key to making it well into IT is having some genuine interest. I know many people who've done it only for the money and they live miserable lives and don't really grow into the field.