Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
cs-topics
My personal curriculum covering basic CS topics. This might be useful for self-taught developers... A work in development! This might take a very long time to get finished!
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Exercism - Scala Exercises
Crowd-sourced code mentorship. Practice having thoughtful conversations about code.
I'm still partial to LearnXinYMinutes[0]. It's how I learned enough MatLab/Octave in a couple hours to test out of an intro CS course.
Here's their article on Elixir[1]
[0]: https://learnxinyminutes.com
Advent of Code (https://adventofcode.com/)
It's not a programming course per-se, but it's a great resource to master the skill of coding and problem solving.
It's just one part though, it won't teach you anything about architecturing a bigger system.
Hello, recently I've enjoyed Casey Muratori's Performance-Aware Programming course[0]. You could read Algorithms for Modern Hardware[1] to learn similar set of stuff though. Casey's course is aimed at bringing beginners all the way to a nearly-industry-leading understanding of performance issues while the book assumes a bit more knowledge, but I think a lot of people have trouble getting into this stuff using a book if they don't have related experience.
I've also found Hacker's Delight Second Edition[2] to be a useful reference, and I really wish that I would get around to reading What Every Programmer Should Know About Memory[3] in full, because I end up reading a bunch of other things[4] to learn stuff that's surely in there.
[0]: https://www.computerenhance.com/p/welcome-to-the-performance...
[1]: https://en.algorithmica.org/hpc/
[2]: https://github.com/lancetw/ebook-1/blob/80eccb7f59bf102586ba...
[3]: https://people.freebsd.org/~lstewart/articles/cpumemory.pdf
[4]: https://danluu.com/3c-conflict/
Hello, recently I've enjoyed Casey Muratori's Performance-Aware Programming course[0]. You could read Algorithms for Modern Hardware[1] to learn similar set of stuff though. Casey's course is aimed at bringing beginners all the way to a nearly-industry-leading understanding of performance issues while the book assumes a bit more knowledge, but I think a lot of people have trouble getting into this stuff using a book if they don't have related experience.
I've also found Hacker's Delight Second Edition[2] to be a useful reference, and I really wish that I would get around to reading What Every Programmer Should Know About Memory[3] in full, because I end up reading a bunch of other things[4] to learn stuff that's surely in there.
[0]: https://www.computerenhance.com/p/welcome-to-the-performance...
[1]: https://en.algorithmica.org/hpc/
[2]: https://github.com/lancetw/ebook-1/blob/80eccb7f59bf102586ba...
[3]: https://people.freebsd.org/~lstewart/articles/cpumemory.pdf
[4]: https://danluu.com/3c-conflict/
I came here to mention Dave Beazley's courses and talks.
In particular, I recently prepped/ran a week-long, in-house training session of Dave's Python-Mastery[1] course at my day job. We had a group of 8 with a mix of junior and senior Software Engineers and while the juniors were generally able to follow along, it really benefited the senior SEs most. It covers the whole language in such depth and detail that you really feel like you've explored every nook and cranny by the time you're done.
[1] https://github.com/dabeaz-course/python-mastery/
(I enjoyed teaching the class so much that I've considered offering my services teaching it on a consulting basis to other orgs. If that interests anyone, feel free to reach out to the email in my profile.)
This is a really good fundamentals resource: https://teachyourselfcs.com/ They list books and videos.
If you're learning Python, and know other programming languages, I have this online ebook [1] that I use with my students so that they learn Python fast enough so that I can teach them about socket programming.
Basically, in each chapter I give a small detailed introduction to the topic and then students do some exercises to solidify things.
[1] https://github.com/joaoventura/full-speed-python
You might like https://exercism.org/
Learning by doing, with the help of mentors. Excellent way to learn a next language (as you are already familiar with the programming concepts).