Staying relevant as a programmer
Key Takeaways
The video discusses the importance of learning fundamentals in programming to stay relevant in the job market, rather than just focusing on popular tools and frameworks like Angular or React. It emphasizes the need to understand the principles behind tools and programming languages, and to learn skills that don't change often, such as data structures, design patterns, and programming languages.
Full Transcript
why yes Bob I did send you those TPS reports you might have noticed that I am wearing a suit at least on my upper body that is because we are not talking code today we are talking about your career as a programmer in this video I will talk about how to stay relevant in the job market as a programmer this video is not about learning the framework that is currently in Vogue it's not even about learning the upand cominging one no I am going to tell you to learn fundamentals I recently made a video titled two many tools and Frameworks I posted it because I was so often asked the question what framework should I learn in the video my response was that there is no such thing as the best tool in general if you try to find the ultimate tool to solve all of your problems you'll just end up with something that looks like a Leatherman which works but it's better to know a lot of specialized tools think the software equivalent of a screwdriver or hammer or so and pick from those setup tools when you are starting a new project depending on what that project is and What needs that project has I got a great response from that video a lot of it good but when looking at a lot of the answers it was obvious that I was just viewing the question from one perspective I was viewing the question from the standpoint of how to make the best possible software but a lot of people that ask the question what framework should I learn are really having an underlying question and that underlying question is what skills should I learn in order to stay relevant as a programmer the easy copout answer to that question is to just learn what is popular as H as of recording that would be angular angular is a bizly popular tool among organizations and you will have work for years to come if you know angular it would also work to learn something like Microsoft SharePoint or uh sap but the problem is that tools of today will become obsolete new tools are constantly being being developed so organizations constantly move on to new and better tools and the tools of today becomes the tools of yesterday okay I could tell you to learn a tool that is up and coming as of recording that would be react and flux which is most likely going to be in enormous demand in the coming years but it will happen again things change 7 years ago at apps on phones did not exist react will go away too eventually and even if it doesn't go away it will at least be dethroned and more modern tools will be in the Limelight so what to do are we forever cursed to do this constant tooling Rodeo where we try to hold on to the job market for dear life constantly learning new tools as they plop up all over the place like some bizarre game of whack-a-mole well instead of trying to predict the future which we humans are really bad at just look at Sci-Fi movies from the' 60s instead you should learn stuff that doesn't change around a lot learn the fundamentals that have been figured out in the' 70s and that has been true since learn programming in general don't don't try to be a better angular programmer or even a better JavaScript programmer try to be a better programmer period really take the time to learn the programming language that your tools are built with and learn the principles behind your tool learn it so well that you are able to build your own tools if you know angular take the time to really understand how JavaScript Works learn about its patterns learn about dependency injection but learn the pattern in general not just how angular does it learn why it was invented where it came from and also learn why a lot of people think it's a bad pattern don't get me wrong here I'm not saying that you shouldn't use tools you most definitely you most definitely should don't use this video as some excuse to start Reinventing Wheels what I I am saying is that you should always be picking a tool because you don't want to write that tool yourself you should not be picking it because you can't write that tool yourself take the time to learn another language that is way outside your comfort zone if you know C learn hll if you know Java learn rust or create your own programming language it's a lot easier than one might think and it is a great learning experience learn data structures learn what a binary tree is learn what a graph is learn about design patterns learn about the facade pattern or the Observer pattern and and more importantly anti patterns learn what a singlet ton really is and why a lot of people think it is bad learn about how Unicode actually works that alone puts you in the top 10% of programmers learn about different kinds of garb garbage collection learn what a touring machine is learn how memory works I am absolutely not saying that you need to go do all that to be a good programmer uh I certainly don't know half of them I'm just spouting a lot of examples to get you inspired and maybe you can pick one of them that speaks to you and and start doing that you can also learn even more stable skills like how uh humans work and interact in software development projects all the cognitive biases that we have that just makes us fail software development projects so often there is an excellent book called the mythical man month that was published in 1975 that dealt with that subject and it is amazing and just as relevant today you should read that learning a popular tool or the next big thing will get you a job but in order to be relevant in the long term you should learn program in not tools so that you know what tools to use or how to build them yourself if you can't find a tool that fits if you practice programming well not just individual tools or languages you will be a very sort-after programmer but you know this is the interwebs these are just my opinions what are your thoughts on this comment down below or tweet me at mpj me I'd love to hear from you in case you are new to this channel I publish one of these videos every Monday where we try to become better programmers by learning interesting things about programming that we did not know before make sure that you don't miss out on the next one hit the Subscribe button down below or follow me on Twitter until next Monday stay curious w
Original Description
💖 Support the show by becoming a Patreon
https://www.patreon.com/funfunfunction
You might notice that I’m wearing suit. At least on my upper body. This is because we are not talking code today, we are talking about your career as a programmer.
In this video, I’ll talk about how to stay relevant in the job market as a programmer. It’s *not* going to be about learning the framework that is currently in vogue, and not even about learning the up-and-coming one - I’m going to tell you to learn fundamentals.
# Why am I making this video?
I recently made a video titled ”too many tools and frameworks”.
I posted it because I was so often asked the question ”what framework should I learn”. In the video my response was that there is no such thing as a best tool in general. If you try to find the ultimate tool to solve all problems, you’ll end up with a leatherman, which works, but it’s better to know a lot of specialized tools, like screwdrivers, hammers and saws, and pick from them when you are starting a new project.
The problem with my answer was that it was viewing the question from the viewpoint of ”how to make the best possible software” but what a lot of people were actually asking is ”what should I learn in order to be attractive on the job market”.
# What skills are attractive on the job market?
The easy cop-out to that question is to just learn what is popular as hell. As of recording, that would be Angular. Angular is a bizarrely popular tool in organizations, and you’ll have work for years to come. You can also learn SAP or Sharepoint.
# Problem: Tools of today will be obsolete.
The problem is that new tools are constantly being developed, so organizations constantly move on to new and better tools, and tools of yesterday becomes obsolete.
# Solution: The next big thing
So, I could go one step further and tell you to learn a tool that is up-and-coming, like React and Flux, which is probably what is going to be in enormous demand in the coming years.
Playlist
Uploads from Fun Fun Function · Fun Fun Function · 11 of 60
1
2
3
4
5
6
7
8
9
10
▶
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Higher-order functions - Part 1 of Functional Programming in JavaScript
Fun Fun Function
Map - Part 2 of Functional Programming in JavaScript
Fun Fun Function
Reduce basics - Part 3 of Functional Programming in JavaScript
Fun Fun Function
Destructuring: What, Why and How - Part 1 of ES6 JavaScript Features
Fun Fun Function
Reduce Advanced - Part 4 of Functional Programming in JavaScript
Fun Fun Function
Closures - Part 5 of Functional Programming in JavaScript
Fun Fun Function
Too many tools and frameworks!
Fun Fun Function
Currying - Part 6 of Functional Programming in JavaScript
Fun Fun Function
Recursion - Part 7 of Functional Programming in JavaScript
Fun Fun Function
Promises - Part 8 of Functional Programming in JavaScript
Fun Fun Function
Staying relevant as a programmer
Fun Fun Function
Factory Functions in JavaScript
Fun Fun Function
Composition over Inheritance
Fun Fun Function
Software needs to be better - FunFunFunction #1
Fun Fun Function
Unit testing: How to get your team started - FunFunFunction #2
Fun Fun Function
Straight-line code over functions - FunFunFunction #3
Fun Fun Function
Clojure - FunFunFunction #5
Fun Fun Function
The growth stages of a programmer - FunFunFunction #6
Fun Fun Function
5 tips to quickly understand a new code base - FunFunFunction #7
Fun Fun Function
Semicolons cannot save you! - FunFunFunction #9
Fun Fun Function
Functors - FunFunFunction #10
Fun Fun Function
Functors: I was WRONG! - FunFunFunction #11
Fun Fun Function
Questions and Answers - FunFunFunction #12
Fun Fun Function
Streams - FunFunFunction #13
Fun Fun Function
Prototypes in JavaScript - FunFunFunction #16
Fun Fun Function
Fast or Flexible? - FunFunFunction #17
Fun Fun Function
Coders are herd animals - FunFunFunction #18
Fun Fun Function
Weekend Kubernetes Shenanigans - FunFunFunction #19
Fun Fun Function
Monad - FunFunFunction #21
Fun Fun Function
Moar Weekend Shenanigans - FunFunFunction #23
Fun Fun Function
Questions and Answers - FunFunFunction #24
Fun Fun Function
Losing motivation - FunFunFunction #25
Fun Fun Function
LONGEST KUBERNETES SHENANIGANS! - FunFunFunction #26
Fun Fun Function
Fast code is NOT important - FunFunFunction #27
Fun Fun Function
Pair Programming a Facebook Messenger Bot - FunFunFunction #28
Fun Fun Function
Writing unit tests for personal projects? - FunFunFunction #29
Fun Fun Function
Let's Code a Pomodoro Button - FunFunFunction #30
Fun Fun Function
What editor do you use? - FunFunFunction #31
Fun Fun Function
Arrow functions in JavaScript - What, Why and How - FunFunFunction #32
Fun Fun Function
Is Programming Art? - MPJ's Musings - FunFunFunction #33
Fun Fun Function
Generators in JavaScript - What, Why and How - FunFunFunction #34
Fun Fun Function
Haskell Basics - FunFunFunction #35
Fun Fun Function
Haskell - Baby's first functions - FunFunFunction #36
Fun Fun Function
Is Big O relevant to you? - Q&A Part 1 - FunFunFunction #37
Fun Fun Function
How much are you allowed to Google? - Q&A Part 2 - FunFunFunction #38
Fun Fun Function
Haskell lists - FunFunFunction #39
Fun Fun Function
var, let and const - What, why and how - ES6 JavaScript Features
Fun Fun Function
Why are some programming languages popular? - MPJ's Musings - FunFunFunction #41
Fun Fun Function
Does a developer need to be nice? - MPJ's Musings - FunFunFunction #42
Fun Fun Function
bind and this - Object Creation in JavaScript P1 - FunFunFunction #43
Fun Fun Function
Examples of this and bind - Object Creation in JavaScript P2 - FunFunFunction #44
Fun Fun Function
Prototype basics - Object Creation in JavaScript P3 - FunFunFunction #46
Fun Fun Function
Separation of concerns RANT - MPJ's Musings - FunFunFunction #47
Fun Fun Function
Cellular Automata - Pair Programming - FunFunFunction #49
Fun Fun Function
The 'new' keyword - Object Creation in JavaScript P4 - FunFunFunction #50
Fun Fun Function
__proto__ vs prototype - Object Creation in JavaScript P5 - FunFunFunction #52
Fun Fun Function
Unity game pair programming - Let's code - FunFunFunction #53
Fun Fun Function
Throw out your tools - MPJ's Musings - FunFunFunction #54
Fun Fun Function
Unit tests vs. Integration tests - MPJ's Musings - FunFunFunction #55
Fun Fun Function
Object.create - Object Creation in JavaScript P6 - FunFunFunction #57
Fun Fun Function
Related Reads
📰
📰
📰
📰
A tabbed form that silently refused to submit — required fields hidden behind another tab
Dev.to · Susumu Takahashi
The DOM Isn’t Slow. The Way Most Code Talks to It Is.
Medium · Programming
The DOM Isn’t Slow. The Way Most Code Talks to It Is.
Medium · JavaScript
Vanilla JavaScript — Why It Still Matters in the Age of React and Next.js
Dev.to · Osama Abu Motlaq
🎓
Tutor Explanation
DeepCamp AI