top | item 24374979

List of YouTube channels for improving web development and programming skills

298 points| bojanvidanovic | 5 years ago |devandgear.com

93 comments

order
[+] 127|5 years ago|reply
I think a lot of educational Youtube channels aren't that great in actually teaching you anything. What they are great at is sparking the interest and planting the seed for your own work. At least my experience is that actually doing things is how I learn them. Youtube can be a great springboard for that.

Things to look out for: a person you like and who has enthusiasm and knowledge.

For example EEVBlog Youtube channel was a great way to get into electronics. It's very surface level, and you have to do the learning yourself, but the surface level of what you get is a broad overview which you can choose how to deepen and iterate on. Get that surface level from Youtube, so that you can understand the whole picture, then go through the parts yourself.

For just learning web efficiently, things like https://fullstackopen.com/en/ seem a lot better.

[+] theonemind|5 years ago|reply
"If you want to build a ship, don’t drum up the men to gather wood, divide the work and give orders. Instead, teach them to yearn for the vast and endless sea." - Antoine de Saint—Exupery
[+] GuB-42|5 years ago|reply
I think that YouTube is great for culture. It includes programming culture. Basically telling you that things exist.

However if you really want to do something, you need practice, and YouTube is not ideal for that.

For programming, what you need is a computer, a development environment (preferably something well integrated if you are beginning) and a project (if you are a beginner, the simpler the better). Text documentation you can refer to at any time is I think the best. Paper books vs online articles and manuals is debatable but they are all better than video for practicing.

[+] lowdose|5 years ago|reply
This but it is in general better to pay for a course at Udemy. You get your money back when you haven't learned anything and those teachers are paid by people like you. They have skin in the game. Youtubers get paid by the minute so they are maximizing your eyeball time.
[+] narwally|5 years ago|reply
This has been my experience as well. In that introductory period when you're first dipping your toes into a new topic I think youtube videos are great at getting you introduced to the vocabulary you're going to need to pick up. Sometimes a new topic can seem much more complex than it really is because there's a lot of unfamiliar terms being used and not because of the actual complexity of topic. Youtube is a pretty gentle way of getting familiar with the lingo so that you have an understanding of what exactly it is you don't know, and what to search to figure it out on your own.

There are some videos that are useful on an even higher level because they cause you to question your way of thinking on a subject. Rich Hickey's talks were like this for me and I think the video format really was the best for that. Some people are just really talented orators and things wouldn't translate as well to text only.

[+] dorkwood|5 years ago|reply
The thing that makes YouTube a bit crap for learning is that content creators are incentivized to make their videos longer than they need to be, so something that should take less than a minute to explain now takes 10 minutes.

I stumbled across a good example of this today while trying to figure out how to undo a camera move in Cinema4D, a software package I don't usually use. Now, the answer to this question is "ctrl+shift+z". But if I search the question on Google, the first result is a 3 minute YouTube video titled "Cinema 4D Quick Tip: How To Undo Camera Move In Cinema 4D", where the first mention of the shortcut is 2 minutes into the video. At this point, both YouTube and Google are purposefully surfacing the least helpful links in order to increase engagement.

[+] petercooper|5 years ago|reply
The same with podcasts. Even if I listen to some reasonably dry technical podcasts I always find I'm brimming with ideas afterwards having been inspired by some random comment made by the host or the interviewee. Do I ever remember much of the actual content? Not really.
[+] dwoot|5 years ago|reply
Like someone else had mentioned, the list is comprised of channels geared heavily at web development featuring content for early career developers.

There are a ton of channels that dig deeper in more general software and particulars: 1. Algorithms Live! for those that are into competitive programming

2. PapersWeLove for those that are into white papers and the research that underpins some of the systems that we use today

3. 3Blue1Brown for mathematics

4. ThePrimeagen for Vim and other software things

5. Gaurav Sen for digestible chunks of system design components

6. code_report for just programming. The author is going through Structure and Interpretation of Computer Programs (SICP) at the moment

7. commaaai archive for following George Hotz, founder and creator of comma.ai, a self-driving car company. He was a former Googler working on zero days (security)

8. Jon Gjengset for Rust. He's got a lot of great videos as an open-source contributor in Rust projects and was most recently at MIT doing his PhD

9. Bitwise is a bit old (last post was a year ago), but former Oculus lead dev teaching folks about compilers, simulators, FPGA-based hardware, and other low level topics from a practitioner

10. Two Minute Papers for quick high level hits/overviews of whitepapers

11. Engineer Man for great short introductions into various parts of the stack, scripting, Unix, and other abstractions

There are many more and recorded streams from other programmers teaching random things. There are tons of engineers on Twitch representing a multitude of companies like Lyft, CockroachDB, Netflix, and others working on open-source projects.

As a more experienced developer, I much prefer these channels over the ones listed, but my point is that the content is there when people actually search. The YouTube algos may not pick up all of them immediately and is most certainly more dominated by content directed at less experienced devs, but I much prefer some of this to the course recommendations that others are stating. Courses are really good, once you're convinced you want to do a deep dive into something, but most people do not finish MOOCs.

[+] searchableguy|5 years ago|reply
If I may, I also suggest:

Ben Eater: electronics, networking, computer architecture, breadboards, and information theory.

Missing semester: Great introduction to computer science and basic programming skills. Good as a reference.

BPS.space: Aerospace engineering, rockets and stuff.

Andreas Kling: computer OS from scratch.

Numberphile, computerphile and so on for quick bites.

Edit: fixed typo

[+] mattgreenrocks|5 years ago|reply
Thanks for this. As is often the case, webdev seemingly seems to suck the air out of the room at times in discussions of programming, and there are a lot of other super interesting domains out there.
[+] blisterpeanuts|5 years ago|reply
dwoot's posting (and replies) seems much more useful than the article, which simply lists a whole bunch of links with no description or commentary. A curated list is, to my mind, much better than a simple search result that anyone can come up with.
[+] mg|5 years ago|reply
I clicked on a few and they all turned out to be tutorials for beginners.

I would use it if it had a filter for "How long have you been programming:"

[ ] Never [ ] 1 Year [ ] 3 Years [ ] Over 10 years

Then I would tick the "Over 10 years" option and hope to find channels that update me on the latest developments. While somebody else would select the "Never" option and will find beginner tutorials.

[+] Someone1234|5 years ago|reply
This is also a problem with paid educational content e.g. Pluralsight.

You want 101 tier material? They have it in droves, for every language/framework/concept.

You want high level system design/architecture? Team management training? Project scheduling/estimation? Or other software engineering topics: Good luck with that.

I mean, I get it, you're selling shovels to gold miners. But at some scale, it must make sense to target smaller niches.

[+] Swizec|5 years ago|reply
As an online educator, this is the nut I’m trying to crack. Beginner stuff doesn’t interest me and advanced stuff is often so specialized you can’t really teach it. And selling to intermediate engineers is crazy hard it turns out.

Everyone thinks they can figure it out on their own and doesn’t want to be taught. Or works in areas so specialized only their teammates can help.

And you’re always fighting against a sea of $10 Udemy courses and free resources.

That said, I think it’s a crackable nut. It’s just a longer slog than beginner stuff.

[+] gonzo41|5 years ago|reply
But if you've been programming for over ten years doesn't looking at say, javascript. make you feel like you've been programming for never. I totally understand that it's all been done. And you've probably done it all as well. But things really do move fast out there. Even if it's in silly circles.
[+] raxor53|5 years ago|reply
Completely agree. I watch various programming/software videos on YouTube, but afterwards my recommendations is filled with "Intro to JS".
[+] robjan|5 years ago|reply
When the list is this big there almost might as well not be a list. Some level of curation is required to make it more useful.
[+] azangru|5 years ago|reply
That was my initial thought as well, but then I realised that some resources wouldn't fit into this simple categorizaiton.

Take the Google Chrome Developers channel as an example. Most of the content creators there are fantastic, experienced, and smart developers. But then, they may discuss some fundamental issues such as browser apis or web components that are equally valuable both for novices and for experienced developers. I remember one video by the http203 crew about for-loops. I mean, for-loops! who doesn't know those! And yet, that video, as it progressed, got into deeper and deeper crannies of for-loops that I had never considered. I may not remember much from the video, but I do remember that I was very pleasantly surprised when watching it.

I don't know whether there are many other resources like that in that list.

[+] DarthGhandi|5 years ago|reply
Is that not just conferences in your fields? I download plenty of the major ones and end up with way more than I can ever hope to watch.
[+] wonder_er|5 years ago|reply
I'm working on something similar, but laser-focused on:

- early-career software developers

- familiar with ruby/rails

https://intermediateruby.com/make-oss-contributions-part-1-f...

I'm working on resources to help early-career software developers feel like they're no longer early-career developers.

"pair with seniors" is the go-to recommendation for learning, so I paid a senior rails dev to pair with me on an OSS contribution (we fixed a bug in Jekyll)

I recorded the whole process, end-to-end. It's about 90 minutes of video.

Neither of us had prior knowledge of the application.

There's a lot of good stuff in it, but I'm still working on how to best show the "path" someone should take through it.

I plan on adding "obstacle courses" for certain skills that are amenable to that kind of approach.

If this is of interest to any of you, I'd love for you to click over and follow along.

Matt (the senior rails dev) and I start coding and part 2: https://intermediateruby.com/matt-swanson-jekyll-bug-p2

[+] PretzelFisch|5 years ago|reply
Do people find success learning from video? As a class lecture along with a pros I find it ok but not as well as a book. I am not sure if I am old or an outliner. Most youtube/videos lessons seem to move to fast and gloss over details.
[+] dorkinspace|5 years ago|reply
I'm the same way. Videos either move too fast or too slow and generally both at the same time. That and I hate having to pause a video to view the code.

I've asked this question in other programming forums and always get a mixed response. For some people, videos are the only way to learn. For others, text is the only way to learn. And then there are many in between that choose the form of learning based on the topic.

[+] Yoofie|5 years ago|reply
Interesting, I find most videos and the pace of content too slow. If the playback speed setting was not available, Youtube would be borderline painful to use as a learning platform.

What bothers me is that most other instructional videos (outside of Youtube) never have a playback speed option, especially corporate training & overview videos.

[+] ducaale|5 years ago|reply
I have recently discovered [tsoding twitch channel](https://www.twitch.tv/tsoding/) which describes itself as Recreational programming. The topics range from webassembly and Game development to functional programming in haskell and ocaml. Some of the interesting random things I found there include:

* [a parser combinator in haskell](https://www.youtube.com/watch?v=N9RUqGYuGfw)

* [stack based language compiler in ocaml](https://www.twitch.tv/videos/654258168)

You can find all the things that were done during the streams in https://github.com/tsoding. You can also find his schedule at https://tsoding.org/schedule/

[+] dewey|5 years ago|reply
I don't see how this list is going to help anyone if they are not in someway tagged or organized into levels, technologies or topics.
[+] ThinkBeat|5 years ago|reply
This list would have been considerably more helps with description of what each channel was about and other surrounding details
[+] sustbird|5 years ago|reply
Completely agree on this. At least the major topic/language/framework discussed in those channels could be mentioned.
[+] semicolonandson|5 years ago|reply
If you're an experienced programmer whose interests lean towards more timeless technologies (unix, system design, vim, databases, uptime etc.) and/or have an entrepreneurial bent and want to learn how software businesses are run (complete with the marketing side), my channel Semicolon&Sons might be for you: https://www.youtube.com/channel/UC17mJJnvzAa_e9qQqLIfIeQ

The overall idea is to teach via setting the screencasts in live production code used by a real business for over a decade, rather than via toy examples set in the fad framework of the now. Basically it's a behind-the-scenes tour of a production codebase.

[+] srcreigh|5 years ago|reply
I really love Ben Awad on YouTube. Really funny smart guy. The content is always basic but it goes deep.

One video is about best practices. He mentions that some people use best practices because they are scared their code will be bad if they don't. To which he responds: "The first law of programming is that in order to write good code, first you must write bad code. You need to stop skipping steps!"

https://youtu.be/gc8mDZwUlfo

[+] dwoot|5 years ago|reply
Good maxims, but I find that Ben's videos lack depth -- don't get me wrong, but you're just not gonna get the expert domain knowledge in any particular area watching his videos. It's also primarily for those with less experience. I still watch them as they're entertaining from time to time.
[+] dontremeber|5 years ago|reply
quick poll: do the people of HN prefer resources like this in video format or written formats like blogs or actual docs? i’ve personally found it difficult to self-learn from YouTube videos so if you prefer that, what about it do you like?
[+] asciimov|5 years ago|reply
Both have their places.

For me I'd rather have a good speaker talk and walk through the subject matter than read about. As I can process audio faster than text.

The other side to this is that blog posts are full of people that don't write well or who are optimizing for search engines. An extreme version of this is cooking recipe posts, but I've seen tech articles that are moving this direction.

[+] larntz|5 years ago|reply
I personal prefer reading docs/books/blogs in that order.

I also occasionally watch some live programming videos casually when I'm not focusing on anything and I've learned some things that way. For example, if they do something differently than I would have it's cool to see how it works and why they choose to do it that way.

[+] numbers|5 years ago|reply
If I'm just interested in something, Youtube/video formats are great. If I am an intermediate/advance user of a technology, I want docs and API references that I can search around on from time to time when using the technology.
[+] foxdev|5 years ago|reply
Video for getting started on a new topic, text for everything else. I find text guides hard to follow without a strong foundation.
[+] wilsmex|5 years ago|reply
While not on that list my channel has lots of css related content: https://YouTube.com/FollowAndrew

Check out my css grid video. It’s the best you’ll find!

Agree with many comments that most channels are geared towards beginnerS (mine included), as when folks get more advanced they tend to then use stackoverflow/blogs to find solutions to very specific problems

[+] idrios|5 years ago|reply
This list needs thenewboston [1]. I got into programming by learning Android development, and learned entirely by watching his channel. He has hundreds of tutorial videos on everything from Adobe suite products to Angular to PyGame and he's incredibly thorough on each one.

[1] https://www.youtube.com/user/thenewboston

[+] tacheiordache|5 years ago|reply
The most concise web learning channel I found on the internet is made by an Indian guy and his videos are absolutely amazingly built. The content might not interest you but the format is fantastic. They are in small chunks and there's a slide review a the end. I wish more content makers took up to this guy. Take this angular for beginners course: https://www.youtube.com/watch?v=CusfUmB6mkY&list=PL6n9fhu94y...
[+] tootie|5 years ago|reply
I'll tell what my big blank spot is that I've never found a good tutorial for is how to break down a design file into a working page. I do mostly backend and architecture kinda work, but frontend/mobile UI dev has gotten more and more important. I understand the tech and can write code that functions, but when I look at a Sketch or Figma design, I just have no idea what to do with it.