I think everyone has their own preference to learn but I second this recommendation. Videos work well to have a friendly face explain how things work and get interest generated, but if you intend to level up your programming skill you are better off reading code documentation and googling your way through every concept that needs explaination. Videos don't allow you to navigate away from the original learning path. I personally keep finding myself in situations where I am reading something up and want to fork out to get a good grasp on a concept being discussed. Text is your friend.
My main complaint with learning to code from videos is that it's really difficult to match the pace at which information is entering your head to the pace at which your head wants to absorb information. I believe (but cannot prove) that that mismatch is a major impediment to knowledge retention. With written material, by contrast, it happens so naturally that you don't even realize you're doing it. You unconsciously slow down or even re-read difficult bits, and skim over the stuff you already know.
I'm also a big proponent of active reading techniques for learning new material efficiently. It's nigh impossible to scribble notes on a YouTube video. With written material, virtually anything can be converted to PDF and read on a tablet with a stylus in hand.
That isn't to say that videos are useless. Lectures are great for learning things at a high level. And there are some YouTubers like 3blue1brown that make excellent use of the medium. But, unless you really just can't even with reading, even the best of them are probably still best used as supplementary rather than primary materials.
I'm an avid consumer of recorded conference talks and the like, too, but I recognize that as being a form of entertainment as much as anything else.
>My main complaint with learning to code from videos is that it's really difficult to match the pace at which information is entering your head to the pace at which your head wants to absorb information.
My way around this is by placing my fingers on the J, K and L keys, in case I need to go few seconds back to listen again, or pause to search more information/take notes, or resume where I was.
Sometimes a 15 minutes video can be easily stretched to 40 mins/1 hour.
I use this for learning code/design/guitar, and I think it works really well!
>, I have tried learning to code from YouTube videos but I really don't recommend it
Videos can work better for learning visual UI tasks of programming. E.g. learning how to navigate visual IDEs such as Jetbrains, MS Visual Studio, Apple Xcode, Qt Creator, Amazon AWS dashboard, etc.
If the above were all reduced to text-based materials, you'd end up with a bunch of static screen shots which misses the movement of the mouse and the button clicks that showed how the IDE changed from one state to the next.
On the other hand... if you're primarily learning the syntax of a language or studying the Big-O properties of an algorithm, you don't need a talking head on a video to explain it. It's more efficient to just read the text.
I've found one YouTube-based technique that helps me sometimes.
Basically, search youtube for some specific topic (eg "MediatR" b/c I'm working in .NET)
Using the relevant results, create a playlist and order it with the shortest videos first, or in numerical order if some are part of a series.
Then, start watching the video's. You'll get some garbage, some useful insights, and some really solid advice. Stop when you've had enough and you're at least in a better place to get on with your own work in that particular topic.
Good youtube videos give you the benefit of some context and opinion around the topic. You can't get that with documentation because it typically takes too much of a "reference" approach that isn't helpful if you're just starting but need to get something done.
Stackoverflow works if you got a specific question and can navigate past the smug a-holes, but it also eschews context and advice though in a different way than reference documentation.
Of course, the best thing you can do is to have a kind mentor that will patiently answer your questions, or better, ask YOU questions to guide your learning. Sadly, that's not always possible.
Yeah, this article oozes of "we need to create content that gets eyeballs and backlinks to market our website/product", which unfortunately is all too common these days.
Next time someone tries to find youtube channels for programming, they will end up on this list, rather than finding some real recommendations by real persons.
The "author" of this article is even "Team Codegiant", it's a red flag when no real person wants to put their name on content. Which is especially funny since throughout the article the author refers to themselves in first person.
I was just watching an old YouTube video of a couple guys throwing a giant rock off a bridge into a river in a remote part of the U.S with no one around. It was 20 seconds long.
If it were produced in 2020, you'd have 10 minutes of useless preamble including discussion about how hyped they are to throw a rock, how difficult it is to carry a rock, fake drama about being followed by non-existent security, a drone shot of the environment, how awesome it was to throw a rock, and random memes. Use my promo code ROCKMAN to post your first job free on ZipRecruiter and hire your own rock thrower, and don't forget to Like this video to smash that Subscribe button!
Hey, what's up everyone, it's your man Todd. I'm back with another video and, today, we're gonna throw a giant rock off this bridge! But first, a word from our sponsor.
Now, I don't play games very much, but I've been playing Raid: Shadow Legends and I can't get enough! It's got all sorts of shit that other games have, but Plarium let me play Raid: Shadow Legends for free. Boo yah! Trust me, you won't want to leave your mom's basement again once you've played Raid: Shadow Legends. Use my exclusive code right now to get 3% off and a free wrist brace for carpal tunnel.
OK guys, so I'm gonna tell you a story about how I've been throwing rocks off this bridge for years. You see, my ol' grandpappy showed me how to throw rocks into the river when I was 10, and he told me "Boy, life's a lot like these rocks. It goes up and up, and one day you find it plunging straight into an icy river of death." And that just really inspired me, y'know? Rest in peace, ol' man. I love ya! Hey Frank, did your grandpa ever teach you to throw rocks into a river?
3 minutes later at a convenience store
Sorry, we can't film in here? We just wanted to buy some snacks. Yo, we're just a youtube channel, alright? It's not cool? Okay, fine, we'll turn it off. You coulda just been cool about it, jeez.
8 minutes of nonsense later
(couple walks by)
How y'all doin'? Oh, we're just having some good wholesome fun here, throwing rocks into the river.
Oh shit, I hope we don't see Officer Bradley around here again. The last time we throw a rock off the bridge he was like "You darn kids" and I was like "Whoa, bro, chill!"
3 minutes later
Alright, here goes nothin'!
(throws giant rock off bridge)
Guys, this was incredible! That's actually one of the BIGGEST rocks we've ever thrown in here! Unbelievable, dude. Oh. My god. WOOOOOOOOOOOO!
Another 3 minutes of bro'ing around
So guys, if you want to see what happened after we threw that rock into the river, stay tuned for my "Tossing a Rock into the River AFTERMATH" video.
Don't forget to like, share, and subscribe! Also, don't forget to hit the bell icon and select "All".
I try and keep myself insulated from this kind of garbage YouTube but sometimes it starts to leak into channels I used to love. It's made me unsubscribe more than once.
The formula is so recognizable now that I assume it has to work on the majority of people?
Every time I cook and look up a recipe for the ingredients I have on hand my whole family has to listen to me rant and rave about this phenomenon. I clicked through the link above, scrolled and scrolled, figured out I had been duped, and gave up to come back here for the comments to commiserate.
I know a guy who apparently has photographic memory. When a new programming language comes out, he buys the book, and reads it, and then he's fluent in that language.
It's terrifying to watch.
And the guy had no idea that's not how people do it. He saw me fiddling with a new language, and was baffled with what I was doing.
To be honest, it's weird after learning 5-6 programming languages how quickly you can pick up a new language.
Grab your variable declarations, inheritance support, static typign, flow control, loop forms, your variable casting, your i/o for files and the standard output for strings and you can learn any language pretty easily.
Edit: String concatination if it's not Java-like (because . concatination is a thing)
I'm in a similar boat; I've spent time working with such a wide range of languages that they all feel familiar to me. However, getting comfortable with a new standard library still takes me a year or two.
IMHO most languages are fairly similar to one another. Once you understand the underlying concepts and paradigm-level ideas, syntactical differences are pretty trivial to pick up.
What slows you down is when new ideas are introduced, like when you go from multi-paradigm languages like Python & Typescript to a more purely functional language like Haskell, or learning about ownership in Rust where there may be no equivalent in other languages. But ideally you only need to learn them once, and in a way that allows you to identify and apply them in a variety of contexts.
Syntax may be trivial, but writing idiomatic code in that language isn't. Back in the late 90s for a class we had to write all our assignments in both Java and C++. The syntax translation was trivial. So in your sense, yes it was trivial.
But a professional C++ programmer would have designed their program a lot differently than the professional Java programmer. Simple syntax translation isn't good enough here.
The good thing is that it's well documented. As opposed to something like ruby, which doesn't have any complete language reference documentation, for bash everything is in the manpage, and it's not that long either.
There's also the info-manual, but I'm doubting it offers any more detail than the manpage. They're both probably equally complete.
I never thought to look at the man page for bash to learn bash. Turns out it's 78 pages and looks excellent based on a quick scan. Thanks for the recommendation!
I enjoy learning from videos and have paid in the past for some courses. My library has a free subscription to LinkedIn Learning (the old Lynda platform) and highly recommend it.
Learning from videos never really worked for me. Plus on top of that, youtube probably has more distractions than a platform dedicated to educational videos.
In my case, I just pick up a book and start coding along with it.
As an online coding educator, here’s my beef with online coding education:
Most videos, courses, and articles you find don’t teach you much. They’re a recipe for you to follow. Do this then that then this.
If you’re building exactly what the author is building, great! You’ve built it.
Then comes a new problem. Or an interview question. It’s actually the same thing you just built, but you don’t have the understanding to realize that. So you look for a completely new tutorial to follow.
This is a losing proposition. You’re learning a lot of recipes by rote and not understanding much. With months or years of pain, you’ll start to pick up patterns by induction.
Not a great way to learn.
It’s like learning to cook an italian risotto and then being flumoxxed by veggie rice. Even though they’re the same thing.
Now here’s where it gets worse: It seems the market (or at least google searches) wants these rote recipes. It’s what gets you the most traffic.
I don’t know that there’s a solution. It’s probably the same problem as crash diets and everyone asking for the best font to use on a VC pitch deck.
> You’re learning a lot of recipes by rote and not understanding much.
I partially disagree because that is how many technical skills are formed - cooking, music, dance, martial arts, etc. Soloway describes programming as a set of "recurring basic plans", where problem solving is break things down into actionable items [1]. Those recipes help establish your foundation of recognizing problems that allow you to pull a particular "recipe" out of your rolodex (my word for it) and apply it. I wrote a paper on simple typing exercises as an additional practice and students performed better in the course and made less mistakes in coding [2].
> With months or years of pain, you’ll start to pick up patterns by induction.
This is where I agree and see the divide. After 6 months of training, I don't recognize someone as mastering the skill. You can be competent at it, but when I think about 6 months in martial art terms, those students are still very uncoordinated.
I would say the issue with CS is the Problem Solving skill. THIS is what people want, but we (the educators) are not appropriately teaching it. And that doesn't mean teach it earlier persay, but that we aren't teaching it the correct way. I don't assume my approach solves the issue, but rather focus on building up students' rolodexes with a large set of recipes they can pull from. This in turn helps build a more abstract mental model [3] for students to work from.
Watching highly-effective programmers navigate, explain, and modify code can be a career-changing experience.
If you're not working in a place where these kinds of programmers accrue, you might never get the experience. Thank goodness for youtube and screen-recorders!
If you're reading this, antirez: thank you for making these, they're really special!
This is great! Can we replace the original article with this, it's much higher quality than most of the ones listed and fills a gap in Youtube content I'd never been able to find (though I haven't tried recently) - that is: legitimately intermediate/advanced content.
I also recommend "Hacking with Andrew and Brad: tip.golang.org" [1]. They are part of the Go team. It's just something to watch the pros doing live coding. By the way, what's with antirez's colorscheme? I wonder if he really uses that blue background or is it just for the video.
> By the way, what's with antirez's colorscheme? I wonder if he really uses that blue background or is it just for the video.
I don't know what you were expecting but those all look like colors from the original DOS and Windows color schemes. It's probably just a guy using colors he grew up with.
I wasn't expecting anything. It's just unusual. Anyway, seems he's just experimenting with colors. There's another video with a yellow background in his YT channel and all the latest ones have dark color schemes.
I remember seeing some videos of notch (creator of Minecraft) working on Minecraft.
Watching that video I was impressed how much "courage" he had to try weird ideas immediately, see what happens, and not be afraid to mess up progress he has made, etc.
Of course, notch, like antirez, are gifted, way above average, people. So we have to keep that in mind.
One thing that I think these types of channels and content don't do well is show all of the pitfalls and failures along the way. The missteps are vitally important to learning. This is also a potentially harmful side effect of newly remote teachers moving to pre-recorded lectures.
When you watch a 15-30 minute video(or even an hour long video) and it's highly polished. You do learn how to go through the exact same problem they're working on. What you lose is the methodology of how they retraced their steps when they got stuck. What did they read and reason through to be able to provide their carefully worded tutorial? How did they reason through the misinformation they had in their mind or that they read online?
When starting my undergraduate education I came into the program with a woefully inadequate grounding in mathematics. The calculus professor I had did at least two things right with his teaching that took me from failing algebra courses to completing really in depth 30-40 page projects several times per semester.
1. He had high expectations of those learning from him.
2. He showed his failures by working out problems he didn't work out before the class started. And critically he attached real emotion to those failures.
Focusing on #2:
There was nothing quite like seeing this professor get on the white board and work through a problem from first principles, explain his reasoning at each step... and then SHRIEK.
He would let out a high pitched scream that I can still hear today when he'd notice an error. Then he would carefully show us him backtracking through his entire process until he found the source of error. When he'd finally find it he would circle it and let out an "aha". Then he would continue on back through the problem fixing the errors along the way.
Seeing this process did several things for me as a student: It showed me that I am going to run into problems even if I have a PhD. Basic problems even. But more importantly it showcased the thought processes you need to be able to solve not just the problems you're given, but ALSO the problems you create yourself that come along with a human's fallible reasoning.
So he'd give us these insane Calculus projects to work through and inevitably I'd make some mistake that would ripple through the entire project. But knowing at least he would find the source of the error, check for errors, and being given some of his intuition first hand on where the errors were sourced was infinitely valuable. Without that knowledge I surely would've gotten frustrated and just given up.
Humans need both positive and negative cases in my opinion to learn effectively. Right now we're optimizing for positive cases only. Those are important, but the negative cases are also extremely important.
Given that many readers of HackerNews have an entrepreneurial side and are therefore interested not just in software — but in the business of and marketing of software —, you might get value out of my channel.
Basically my story is that is that I solo-bootstrapped a web-app and have lived from it independently for over a decade. Because of these circumstances I face no red tape in showing the code, the analytics, or the online advertising campaigns I use on screen, and this makes for a more concrete, example-filled treatment of the full gamut of what goes into running a web-based software business.
So if you're an indie-hacker or software founder that does (or at least _should_ be doing) online marketing, I think you'll get something out of my story:
126 comments
[ 3.1 ms ] story [ 176 ms ] threadI'm also a big proponent of active reading techniques for learning new material efficiently. It's nigh impossible to scribble notes on a YouTube video. With written material, virtually anything can be converted to PDF and read on a tablet with a stylus in hand.
That isn't to say that videos are useless. Lectures are great for learning things at a high level. And there are some YouTubers like 3blue1brown that make excellent use of the medium. But, unless you really just can't even with reading, even the best of them are probably still best used as supplementary rather than primary materials.
I'm an avid consumer of recorded conference talks and the like, too, but I recognize that as being a form of entertainment as much as anything else.
My way around this is by placing my fingers on the J, K and L keys, in case I need to go few seconds back to listen again, or pause to search more information/take notes, or resume where I was.
Sometimes a 15 minutes video can be easily stretched to 40 mins/1 hour.
I use this for learning code/design/guitar, and I think it works really well!
Codingtrain youtube has some decent series, but I like buying courses on Udemy. They’re usually like $10 since there are always promotions.
Videos can work better for learning visual UI tasks of programming. E.g. learning how to navigate visual IDEs such as Jetbrains, MS Visual Studio, Apple Xcode, Qt Creator, Amazon AWS dashboard, etc.
If the above were all reduced to text-based materials, you'd end up with a bunch of static screen shots which misses the movement of the mouse and the button clicks that showed how the IDE changed from one state to the next.
On the other hand... if you're primarily learning the syntax of a language or studying the Big-O properties of an algorithm, you don't need a talking head on a video to explain it. It's more efficient to just read the text.
Basically, search youtube for some specific topic (eg "MediatR" b/c I'm working in .NET)
Using the relevant results, create a playlist and order it with the shortest videos first, or in numerical order if some are part of a series.
Then, start watching the video's. You'll get some garbage, some useful insights, and some really solid advice. Stop when you've had enough and you're at least in a better place to get on with your own work in that particular topic.
Good youtube videos give you the benefit of some context and opinion around the topic. You can't get that with documentation because it typically takes too much of a "reference" approach that isn't helpful if you're just starting but need to get something done.
Stackoverflow works if you got a specific question and can navigate past the smug a-holes, but it also eschews context and advice though in a different way than reference documentation.
Of course, the best thing you can do is to have a kind mentor that will patiently answer your questions, or better, ask YOU questions to guide your learning. Sadly, that's not always possible.
https://news.ycombinator.com/item?id=24374979
Then, waaay down at the bottom, the actual list of YouTube channels.
Seriously, this is worse than those recipes where you have to get through three anecdotes about cooking with grandma.
Next time someone tries to find youtube channels for programming, they will end up on this list, rather than finding some real recommendations by real persons.
The "author" of this article is even "Team Codegiant", it's a red flag when no real person wants to put their name on content. Which is especially funny since throughout the article the author refers to themselves in first person.
Edit: and check out the submitter's post history. 15 submissions - all for codegiant.io: https://news.ycombinator.com/submitted?id=spiderjako22
But yeah seems like an SEO grab.
Would love if Google changed their algorithm just to screw all these companies who have the resources to dedicate to SEO perfection.
If it were produced in 2020, you'd have 10 minutes of useless preamble including discussion about how hyped they are to throw a rock, how difficult it is to carry a rock, fake drama about being followed by non-existent security, a drone shot of the environment, how awesome it was to throw a rock, and random memes. Use my promo code ROCKMAN to post your first job free on ZipRecruiter and hire your own rock thrower, and don't forget to Like this video to smash that Subscribe button!
The algorithm makes it hard to find the videos without the cruft but I imagine they are uploaded by the millions.
https://www.quora.com/How-does-making-a-10-minute-video-on-Y...
Now, I don't play games very much, but I've been playing Raid: Shadow Legends and I can't get enough! It's got all sorts of shit that other games have, but Plarium let me play Raid: Shadow Legends for free. Boo yah! Trust me, you won't want to leave your mom's basement again once you've played Raid: Shadow Legends. Use my exclusive code right now to get 3% off and a free wrist brace for carpal tunnel.
OK guys, so I'm gonna tell you a story about how I've been throwing rocks off this bridge for years. You see, my ol' grandpappy showed me how to throw rocks into the river when I was 10, and he told me "Boy, life's a lot like these rocks. It goes up and up, and one day you find it plunging straight into an icy river of death." And that just really inspired me, y'know? Rest in peace, ol' man. I love ya! Hey Frank, did your grandpa ever teach you to throw rocks into a river?
3 minutes later at a convenience store
Sorry, we can't film in here? We just wanted to buy some snacks. Yo, we're just a youtube channel, alright? It's not cool? Okay, fine, we'll turn it off. You coulda just been cool about it, jeez.
8 minutes of nonsense later
(couple walks by)
How y'all doin'? Oh, we're just having some good wholesome fun here, throwing rocks into the river.
Oh shit, I hope we don't see Officer Bradley around here again. The last time we throw a rock off the bridge he was like "You darn kids" and I was like "Whoa, bro, chill!"
3 minutes later
Alright, here goes nothin'!
(throws giant rock off bridge)
Guys, this was incredible! That's actually one of the BIGGEST rocks we've ever thrown in here! Unbelievable, dude. Oh. My god. WOOOOOOOOOOOO!
Another 3 minutes of bro'ing around
So guys, if you want to see what happened after we threw that rock into the river, stay tuned for my "Tossing a Rock into the River AFTERMATH" video.
Don't forget to like, share, and subscribe! Also, don't forget to hit the bell icon and select "All".
I try and keep myself insulated from this kind of garbage YouTube but sometimes it starts to leak into channels I used to love. It's made me unsubscribe more than once.
The formula is so recognizable now that I assume it has to work on the majority of people?
And 1 second
I must ask: what led you to view this video?
* Traversy Media: https://www.youtube.com/user/TechGuyWeb
* 3Blue1Brown: https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw
* ThePrimeagen: https://www.youtube.com/channel/UC8ENHE5xdFSwx71u3fDH5Xw
* Gaurav Sen: https://www.youtube.com/channel/UCRPMAqdtSgd0Ipeef7iFsKw
* Jon Gjengset: https://www.youtube.com/channel/UC_iD0xppBwwsrM9DegC5cQQ
* Two Minute Papers: https://www.youtube.com/user/keeroyz
* Raymond Hettinger (no channel): https://www.youtube.com/results?search_query=Raymond+Hetting...
* Simple Programmer: https://www.youtube.com/channel/UCRxWW_Ncs308nW4An23Yeig
* The Coding Train: https://www.youtube.com/user/shiffman
* Academind: https://www.youtube.com/channel/UCSJbGtTlrDami-tDGPUV9-w
* Derek Banas: https://www.youtube.com/user/derekbanas
* Mark Lewis: https://www.youtube.com/user/DrMarkCLewis
* Dev Ed: https://www.youtube.com/channel/UClb90NQQcskPUGDIXsQEz5Q
* The Net Ninja: https://www.youtube.com/channel/UCW5YeuERMmlnqo4oq8vwUpg
* Fun Fun Function: https://www.youtube.com/channel/UCO1cgjhGzsSYb1rsB4bFe4Q
* Computerphile: https://www.youtube.com/user/Computerphile
* Bisqwit: https://www.youtube.com/user/Bisqwit
* ThinMatrix: https://www.youtube.com/user/ThinMatrix
* Gary of Destroy All of Software (non-youtube): https://www.destroyallsoftware.com/screencasts#:~:text=Destr....
* PatrickJMT: https://www.youtube.com/user/patrickJMT
* Ben Awad: https://www.youtube.com/user/99baddawg
* Google Chrome Developers: murgaan ↗ Every time I cook and look up a recipe for the ingredients I have on hand my whole family has to listen to me rant and rave about this phenomenon. I clicked through the link above, scrolled and scrolled, figured out I had been duped, and gave up to come back here for the comments to commiserate.
It's terrifying to watch.
And the guy had no idea that's not how people do it. He saw me fiddling with a new language, and was baffled with what I was doing.
Grab your variable declarations, inheritance support, static typign, flow control, loop forms, your variable casting, your i/o for files and the standard output for strings and you can learn any language pretty easily.
Edit: String concatination if it's not Java-like (because . concatination is a thing)
Programming is easy, learning the fancy tricks is the hard part.
What slows you down is when new ideas are introduced, like when you go from multi-paradigm languages like Python & Typescript to a more purely functional language like Haskell, or learning about ownership in Rust where there may be no equivalent in other languages. But ideally you only need to learn them once, and in a way that allows you to identify and apply them in a variety of contexts.
But a professional C++ programmer would have designed their program a lot differently than the professional Java programmer. Simple syntax translation isn't good enough here.
There's also the info-manual, but I'm doubting it offers any more detail than the manpage. They're both probably equally complete.
The next human evolution should be synthesized to traject towards this prototype.
You should tease him a bit, somehow convince him he is behind on something, ask him where is his language book, everyone has one..
step 3. ???
step 4. profit
Game Design and Design Criticism:
Design Doc https://www.youtube.com/channel/UCNOVwMpD-5A1xzcQGbIHNeA
TB Skyen https://www.youtube.com/user/TBSkyen
Game Development
HeartBeast https://www.youtube.com/channel/UCrHQNOyU1q6BFEfkNq2CYMA
Brackeys https://www.youtube.com/user/Brackeys
Sebastian Lague https://www.youtube.com/user/Cercopithecan
GDQuest https://www.youtube.com/channel/UCxboW7x0jZqFdvMdCFKTMsQ
Javidx9 https://www.youtube.com/channel/UC-yuWVUplUJZvieEligKBkA
In my case, I just pick up a book and start coding along with it.
https://www.youtube.com/c/javidx9/
Dynamic Programming for Beginners: https://www.youtube.com/playlist?list=PLVrpF4r7WIhTT1hJqZmjP...
Most videos, courses, and articles you find don’t teach you much. They’re a recipe for you to follow. Do this then that then this.
If you’re building exactly what the author is building, great! You’ve built it.
Then comes a new problem. Or an interview question. It’s actually the same thing you just built, but you don’t have the understanding to realize that. So you look for a completely new tutorial to follow.
This is a losing proposition. You’re learning a lot of recipes by rote and not understanding much. With months or years of pain, you’ll start to pick up patterns by induction.
Not a great way to learn.
It’s like learning to cook an italian risotto and then being flumoxxed by veggie rice. Even though they’re the same thing.
Now here’s where it gets worse: It seems the market (or at least google searches) wants these rote recipes. It’s what gets you the most traffic.
I don’t know that there’s a solution. It’s probably the same problem as crash diets and everyone asking for the best font to use on a VC pitch deck.
I partially disagree because that is how many technical skills are formed - cooking, music, dance, martial arts, etc. Soloway describes programming as a set of "recurring basic plans", where problem solving is break things down into actionable items [1]. Those recipes help establish your foundation of recognizing problems that allow you to pull a particular "recipe" out of your rolodex (my word for it) and apply it. I wrote a paper on simple typing exercises as an additional practice and students performed better in the course and made less mistakes in coding [2].
> With months or years of pain, you’ll start to pick up patterns by induction.
This is where I agree and see the divide. After 6 months of training, I don't recognize someone as mastering the skill. You can be competent at it, but when I think about 6 months in martial art terms, those students are still very uncoordinated.
I would say the issue with CS is the Problem Solving skill. THIS is what people want, but we (the educators) are not appropriately teaching it. And that doesn't mean teach it earlier persay, but that we aren't teaching it the correct way. I don't assume my approach solves the issue, but rather focus on building up students' rolodexes with a large set of recipes they can pull from. This in turn helps build a more abstract mental model [3] for students to work from.
[1] https://ieeexplore.ieee.org/iel5/32/5010265/05010283.pdf
[2] https://dl.acm.org/doi/pdf/10.1145/3373165.3373177
[3] https://telearn.archives-ouvertes.fr/docs/00/19/73/76/PDF/Ge...
Yikes.
Covers: - DeFi (Decentralized Finance) Development
- Ethereum
- Web3
- Truffle
- Solidity smart contracts
https://www.youtube.com/c/eattheblocks
Episode 1: https://www.youtube.com/watch?v=VBrnmciV9fM
Watching highly-effective programmers navigate, explain, and modify code can be a career-changing experience.
If you're not working in a place where these kinds of programmers accrue, you might never get the experience. Thank goodness for youtube and screen-recorders!
If you're reading this, antirez: thank you for making these, they're really special!
[1]: https://news.ycombinator.com/edit?id=24590896
[1]https://www.youtube.com/watch?v=1rZ-JorHJEY
I don't know what you were expecting but those all look like colors from the original DOS and Windows color schemes. It's probably just a guy using colors he grew up with.
Watching that video I was impressed how much "courage" he had to try weird ideas immediately, see what happens, and not be afraid to mess up progress he has made, etc.
Of course, notch, like antirez, are gifted, way above average, people. So we have to keep that in mind.
And it could be that that courage is one of the things that enable them to become above average.
When you watch a 15-30 minute video(or even an hour long video) and it's highly polished. You do learn how to go through the exact same problem they're working on. What you lose is the methodology of how they retraced their steps when they got stuck. What did they read and reason through to be able to provide their carefully worded tutorial? How did they reason through the misinformation they had in their mind or that they read online?
When starting my undergraduate education I came into the program with a woefully inadequate grounding in mathematics. The calculus professor I had did at least two things right with his teaching that took me from failing algebra courses to completing really in depth 30-40 page projects several times per semester.
1. He had high expectations of those learning from him. 2. He showed his failures by working out problems he didn't work out before the class started. And critically he attached real emotion to those failures.
Focusing on #2: There was nothing quite like seeing this professor get on the white board and work through a problem from first principles, explain his reasoning at each step... and then SHRIEK.
He would let out a high pitched scream that I can still hear today when he'd notice an error. Then he would carefully show us him backtracking through his entire process until he found the source of error. When he'd finally find it he would circle it and let out an "aha". Then he would continue on back through the problem fixing the errors along the way.
Seeing this process did several things for me as a student: It showed me that I am going to run into problems even if I have a PhD. Basic problems even. But more importantly it showcased the thought processes you need to be able to solve not just the problems you're given, but ALSO the problems you create yourself that come along with a human's fallible reasoning.
So he'd give us these insane Calculus projects to work through and inevitably I'd make some mistake that would ripple through the entire project. But knowing at least he would find the source of the error, check for errors, and being given some of his intuition first hand on where the errors were sourced was infinitely valuable. Without that knowledge I surely would've gotten frustrated and just given up.
Humans need both positive and negative cases in my opinion to learn effectively. Right now we're optimizing for positive cases only. Those are important, but the negative cases are also extremely important.
Basically my story is that is that I solo-bootstrapped a web-app and have lived from it independently for over a decade. Because of these circumstances I face no red tape in showing the code, the analytics, or the online advertising campaigns I use on screen, and this makes for a more concrete, example-filled treatment of the full gamut of what goes into running a web-based software business.
So if you're an indie-hacker or software founder that does (or at least _should_ be doing) online marketing, I think you'll get something out of my story:
https://www.youtube.com/watch?v=gOE_sQTyQOo
"The page you were looking for doesn't exist (404)."
https://www.youtube.com/user/eaterbc
https://old.reddit.com/r/learnprogramming/comments/iz064h/li...
Tech with Tim (Beginner) https://www.youtube.com/c/TechWithTim/videos
George Hotz (Advanced) https://www.youtube.com/c/commaaiarchive/videos
BNT (Life Risking) https://www.youtube.com/c/BNTfullHDvideo/videos