My weekly programming/tech newsletter is now live. Go and subscribe - geni.us/WfAml
@MazBringsby3 күн бұрын
You must clean the your tea cup before you drink it.
@softcolly875310 ай бұрын
As a dev for over 20 years, the majority of my knowledge is self taught, and that's after studying at University.
@vitalyl132710 ай бұрын
Knowledge is transient and unimportant. The real reason for the difference between the educated and uneducated ones is in structure and rigour.
@softcolly875310 ай бұрын
@@vitalyl1327 in 20 years I have seen no correlation between educated and (experienced) self taught developers and their abilities. An education is a good place to start and will help point you in the right direction, but self taught developers often have a passion that has led them to become developers.
@Daniel-ym3fi10 ай бұрын
@@vitalyl1327 nah
@Rexvideowow9 ай бұрын
Yeah, I take issue with him calling CS majors "traditional programmers". Actual traditional programmers read through the manuals and learned to code that way. There were no Computer Science degrees back then. Every contributor to the field back then had degrees in engineering or mathematics. No one was holding your hand to teach you anything.
@vitalyl13279 ай бұрын
@@Rexvideowow key word here is *engineers*.
@TuanNguyen-ed9rb7 ай бұрын
Graduated from college, and they didn't teach much, pretty much all of my knowledge is self-taught
@WojciechowskaAnnaАй бұрын
there is lots of bad colleges, most likely you picked one. Smart college is a huge advantage, but the smart colleges are also picky on choosing students. Like attracts like, sorry
@GMOTP573821 күн бұрын
@@WojciechowskaAnna Couldn't be any more wrong, all colleges are a massive scam to give you student loan debt. I went to a good reviewed university and most of the professors were terrible and only focused on giving a rubric to follow, never really taught anything. Most professors don't really care about teaching the material they just want a paycheck at the end of the day. Rarely you'll get professors that actually care but its very random. However "smart colleges" do not exist even people graduate from said "smart colleges" aren't even knowledgeable to begin with its all about just paying more and being scammed into thinking if I graduate here I'll have a better chance at landing a job which degrees are meaningless.
@Xiquinhodasilva9917 күн бұрын
I was taught pascal in 1 year, vb in 2 year, 3 yesr php... this was around 2012, I still hate php today.
@BitMan101013 күн бұрын
@@Xiquinhodasilva99 yea php is ugly
@WojciechowskaAnna13 күн бұрын
most likely you work with easy business software, without going through architecture design, database design, any threading thuncionality or actual math. Good universities and CS prepare students for that. Most business development is however very easy text processing without any requirement for correctness or preformance. For this kid of job - very little education is required. It similar to being an engineer and getting hired for a simple construction work - where no phycis model derivation is ever required, just hammer and dirller skills.
@georgewashing109 ай бұрын
I have a CS degree and manage an engineering team at a top tech firm. Anyone who thinks that non-traditional developers are somehow lesser or "need to be purged" is naive (to be overly generous) and more likely just arrogant to the point of being a detriment to their team. Having people with diverse backgrounds (e.g. chemical engineering, geology, finance, etc.) adds perspectives to technical problem solving that results in better overall solutions.
@willneve9 ай бұрын
What about no degree at all :( ?
@traveller23e9 ай бұрын
@@willneve That's my case, and tbh I haven't really had a problem with it yet. There are companies that will only hire people with a degree, but considering that it's fairly widely recognized that universities unfortunately don't do a tremendously good job of preparing software developers I figure more fool them.
@mrfixitm33459 ай бұрын
@@willnevesome of the richest people in the world were dropouts. College is a business.
@vitalyl13279 ай бұрын
People with degrees are not "self-taught". They were taught how to learn. It is people without any education who are the root of all problems.
@JimmieFulton9 ай бұрын
@@willneveMy typical role is Chief Architect at organizations that build sophisticated Service-Oriented Architectures in FinTech, banking, payments, fraud detection, ML, etc. My specialty is in 0-1 projects, and un-f@#$%ing technical debt, monoliths, and spaghetti code, using world-class code generation and automation techniques. Among many roles I’ve had, a previous role was the Software Architect overseeing both the Commerce and Payments platforms at Sony PlayStation, processing billions of dollars a year. My current company builds software ventures. So not just one start-up, which is hard enough, but multiple start-up as a commodity. The gentleman above is right: it’s not what you were spoon fed in college… it’s the knowledge and discipline you learn on the job. You’ve either got it, or you don’t. I have no degree at all.
@lawrencecollins89999 ай бұрын
Very refreshing to read all these comments. I am 87 and started coding/learning computing in the 50’s using machine code, assembler, pseudo code, cobol. What I am learning here is that the greater mass of interested and active people in the coding business are following a strong discipline. It was the Wild West in my day and a wonder anything functioned properly at all. Congrats from me to all readers here. Keep learning. Do it as simply as possible. Remember some poor guys and gals have to fix your work some day. Have great and interesting careers. Well done getting this far. Keep going and enjoy. BTW when I first visited the Central library in Scotland for a book about computing they had nothing. NOTHING.
@blackstreak029 ай бұрын
with the advent of AI and our processing power getting so much more powerful, its a new gold rush.
@torf17468 ай бұрын
I agree! I see a lot of people (myself included) way overcomplicate things for no good reason. It's always really inspiring for me to read about the beginnings of computers... there was some ingenious stuff (like the old fully electromechanical TTYs), but a lot of those early innovations were just regular people coming up with clever workarounds.
@heiscalledinvinciblenotinv687 ай бұрын
Wtf based boomer detected?
@thomasmaughan47987 ай бұрын
Doubtless you remember the arrival of "Structured Coding" -- wow, what a concept! Have some structure! Avoid "goto". Beware global variables.
@thomasmaughan47987 ай бұрын
@@torf1746 "like the old fully electromechanical TTYs" I was a mechanic (?) on the IBM 407 Accounting Machine. Fully electromechanical; it was a BEAST. IBM called such person's "CE" (Customer Engineer) but being in the Navy I wasn't titled CE. But that's what I was doing. Training? OJT: On the Job training combined with excellent documentation and proper tools.
@curruption0187 ай бұрын
My mentor at my first job after completing my BS in CS was a self taught developer who dropped out of high school and was 21 years old lol self taught devs are some of the smartest people out there.
@dabneyapplechunks9 ай бұрын
A VERY ancient senior developer here, so ancient that there was almost no formal education like the modern CS courses available when I started, except for in some obscure mathematics departments! Having interviewed, hired, fired and mentored many graduate & non-grad developers in different settings, I can confirm that all your points are important. But also several personal qualities are beneficial if you want to both become an effective software engineer and enjoy the journey. These have little to do with coding or even design techniques and a lot to do with being prepared to cultivate skills like careful listening, humility, patience and persistence. Not to mention the ability to tolerate being in a state of confusion for way longer than is comfortable - sometimes that’s the only way to reach a state of clarity.
@friedrichjunzt9 ай бұрын
Great Addition! Often those "soft" skills are the most important ones, unfortunetely hard to measure and therefore often neglected.
@Navinese9 ай бұрын
state of confusion is permanent 🙃
@carl24889 ай бұрын
Such a great point about staying in that place of uncertainty.
@MichelleJones-cp2tv9 ай бұрын
I want to frame this comment
@voster77hh9 ай бұрын
lol, yeah, when all that COBOL stuff still running the world was made CS degrees didn't even exist. i always cringe when I have to IT archeology COBOL stuff and reengineer it. that's systems doing their job for 7ß+ years in super stable high performance environs. Like flight booking, money transfers or container management of ships. Stuff that moves crazy amounts of trillions of USD.
@mbee32k9 ай бұрын
What you describe are signs of INEXPERIENCED developers. Period! I’ve seen CS grads do all five of them, and then some! As a computer scientist, turned developer, I’ve taught students at the university but also on the job as a dev. Most go on to become good experienced developers, while some never do, degree or no degree.
@thecollector67469 ай бұрын
No you haven't.
@davidtrott94699 ай бұрын
I agree, with one caveat, specifically on point #3 - a good degree will usually select languages not just to teach the language, but also to reenforce concepts for example a functional language may be taught to improve comfort with recursion and immutability. There is nothing stopping a self-taught engineer from building their own learning path to cover the same ground, but a CS grad (on a well balanced degree) is forced to cover this ground.
@Chris-io2cs9 ай бұрын
Yeah I'd personally say 1 and 3 make sense because school is supposed to teach you concepts regardless of language and engineering focused schools will introduce you to the idea of requirements and thinking about design before starting. For that reason I'd say 1 is the big one (although in large classes with mediocre teachers it often does just turn into get something to work.. But a proper software eng. class should at least get you thinking about planning it out first though and expose you to industry tools or concepts to do so) But 2, 4, and 5 are just misc skills that schools won't teach. If you get a good professor you will get critiques (instead of just checking that it works) but never has a professor told me my commit was too big (if they even care if you use VC in the first place) and no one in an acedemic setting gonna tell you you're working on too much at once lol. Maybe you'll get exposed to this in group projects or senior design but it's doubtful it'd be an important part of any curriculum.
@lua95029 ай бұрын
nu uh@@thecollector6746
@minion38069 ай бұрын
@thecollector6746 maybe critical thinking isn't for you
@jasonwelsh41710 ай бұрын
I have seen all of these offences committed by people with degrees, for the record. Great list by the way.
@absent729 ай бұрын
Yea I was gonna say, this is just devs without work experience period really
@smort1239 ай бұрын
All people with degrees start off as unexperienced programmers.
@lifeartstudios62078 ай бұрын
same, often. In every place I've worked. Frankly I find the self-taught variety are more willing (and able) to learn and have a better perspective than the walking textbook types. The textbook types have some very clever knowledge, but don't know when to use it. They also tend to impose things that make project development pace grind down. I tend to like people who can make systems, but then actually use them / make tools. You figure out the pain points of certain methodology very quickly.
@Jonas-Seiler7 ай бұрын
Graduates pretty much can't be trusted, but IT graduates are probably the worst of the bunch. Either way, people thinking they're engineers when they really aren't is a problem, as is dismissing the importance of and difficulty in achieving high quality in software systems.
@davidmartensson2735 ай бұрын
@@absent72 I agree, and as for the term "traditional developer", well, when I started, almost all developers where self taught to some degree and even today I would say that a developer that spends time learning on their own (preferably on top of an education) is usually a better developer than one that only comes with school knowledge. Most schools still teach a sort of optimistic coding that might work for a green field project or for small projects, but once it grows you need to be able to go of the path and account for reality ;)
@baziwan94077 ай бұрын
Why people hate non college grads, is because they paid ~200k for a degree and you make pretty much the same as them. It is partially Envy, and jealousy I think.
@kolyashinkarev7366Ай бұрын
Also the fact they need to be forced by their debt to learn something when self taught people either are extremely passionate about their field or have extreme discipline to make themselves learn something new and hard, which makes them overall better workers, because when you are self taught, the learning part never really ends
@kanaverumАй бұрын
Self/taught devs have a demonstrated track record of teaching themselves and (often) working with others to get a better understanding of those concepts. A college grad has demonstrated personal management under a timeline, but has been fed everything in an organized way. There are pros and cons to both, but I usually see self-taught engineers rocket to success early on and continue learning more complex concepts as they need them. Many times, I’ve seen college grads basically freeze when given tasks they don’t already understand all the concepts for, since they’re typically less familiar with how to research things on their own and communicate with others to learn concepts in an unstructured way. College grads do, however, have the right initial exposure to supportive concepts like Computational Complexity… but I also usually find that just informing a self-taught dev of this concept results in a complete understanding within a few weeks of side-research. In the end, neither approach is wrong. A college grad with the right attitude and focus on growth does very well and a self-taught dev with the right curiosity and drive does well also. [edit: a typo and some grammar]
@RogerTheil22 күн бұрын
Sunk cost fallacy as well. Subconsciously they feel as though all that money would be wasted if they didn't have to do it that way. So naturally, they feel that everyone must do it that way too, or they made the wrong choice.
@GMOTP573821 күн бұрын
Yeah i notice a lot of coders are pretty petty and always give the most misleading info, probably due to gatekeeping
@kolyashinkarev736621 күн бұрын
@@GMOTP5738 coder community is the most toxic community after Dota players
@spinostu7 ай бұрын
I'm an Experienced self-taught developer currently working on 3 huge PRs...thanks for the pull up 😊
@Codotaku9 ай бұрын
Him: Only the syntax is different C++: huh Rust: yes Haskell: good luck
@vitalyl13279 ай бұрын
Well, this kind of people will never work in, say, finance, so they have no chance of getting their minds violated irreversibly by the certain APL descendants that are so popular im algo-trading.
@ToaOfTech9 ай бұрын
Yeah, paradigms can be different and using a language effectively isn't a matter of syntax. Doing things in Java then copying over that code to rust can make the rust code suck, but redo it in the rust way and it'll work well. I guess basic syntax can for sure be understood, but the way you use a language definitely differs
@dil_lal_imperfect_roti9 ай бұрын
@@ToaOfTech Any Bilingual will confirm to this.
@joet39359 ай бұрын
Matlab: you like ()'s? Lets use them for arrays and functions. I'm sure nothing can go wrong. SAS: You want a loop, you are going to have to pay for it.
@EchoPrograms9 ай бұрын
Python to C or ASM 💀
@dameanvil9 ай бұрын
01:25 🤔 Inexperienced developers often focus solely on making code work, neglecting essential pre-coding observations and considerations for maintainability and scalability. 02:29 🔄 Large, unorganized code changes in pull requests can lead to confusion and difficulty in diagnosing problems. Commit often, test each commit, and keep pull requests focused on cohesive features. 04:35 📚 Constantly learning new languages or frameworks may hinder true understanding of programming concepts. Focus on mastering core concepts rather than accumulating superficial knowledge. 06:10 🚥 Working on too many tasks simultaneously can compromise efficiency and depth of understanding. Prioritize tasks, complete them one at a time, and avoid overcommitting. 07:17 🙈 Reluctance to share code for critique indicates a fear of criticism. Embrace feedback, especially during code reviews, to learn and grow as a developer.
@bbrainstormer20369 ай бұрын
I keep seeing these everywhere what the heck are they
@dameanvil9 ай бұрын
@@bbrainstormer2036 They are people. Surely, you are not used to them. And they talk about the things they think they master.
@p3ter4087 ай бұрын
Bro had to include emojis 😂😂😂
@atsanonwadsanthat1667 ай бұрын
Ah, you're talking about Salesforce engineers.
@lime1484 ай бұрын
@@bbrainstormer2036 People posting AI-generated video summaries to farm likes.
@wendiborden659010 ай бұрын
College educated with 2 degrees here (CS and Business Admin) and feeely admit having worked with many self-taught developers I admire and myself learn from!
@jonaswatson5335 ай бұрын
Having a computer science degree and being a developer are not the same. Coding is a tool in computer science coursework to apply computer science concepts.
@wendiborden65905 ай бұрын
@@jonaswatson533 Have worked in development now for over 11 years. Point remains. Use all your tools wisely, regardless of background, and be willing to learn from others. ☺️
@zo1dberg7 ай бұрын
I've been a dev for over 20 years, and have got a Bachelor of Computer Science degree. Back then, sure, it made sense. But now, I would recommend kids save their money and learn online instead of going to uni. Uni is a waste of time and money. But it was good fun back when I went.
@Marcus_6137 ай бұрын
I've been a C/C++ developer for more than 20 years. I believe that's both good advice and common sense. I would add: "be persistent". Being a good developer involve way more than just writing code that work as expected. Being simply "ok" takes years, truly mastering takes decades.
@0runny9 ай бұрын
As a developer with + 30 years experience in multiple languages across many industries, I think it is very important to learn the basics of computer science. Concepts like memory management, algorithms, data structures, security, networking, etc. These concepts are language agnostic, but are very important to becoming a well rounded developer.
@Muskar29 ай бұрын
Hardware is to software as physics is to engineering. I wish I had realized the cost of abstracting away everything into black boxes much sooner in my career.
@dancingdoormanable8 ай бұрын
Becoming a well rounded developer is something to strive for, but the most important thing is to function in the role you have. Knowing what is going on under the hood is good, but often it's not relevant and on occasion it can send you the wrong way. There are many environments like databases or CMS systems that are so encapsulated that reasoning with basic concept on how thing should be done or estimation performance is nearly impossible. In such cases you just have to read the documentation, consult with the community and test things out. I think in general the higher the level of the software you are building on the more that this is the case, but opinions may differ.
@markteague88898 ай бұрын
@@Muskar2 The difference between hardware and software is a logical one.
@markteague88898 ай бұрын
@@dancingdoormanable A basic understanding of B-Trees and how modern relational databases store tables and their indices as such is kind of indispensable for tuning performance of non-trivial queries. Just an example of how something one would learn in a college level file processing class is applicable to professional work.
@TheXarus7 ай бұрын
@@markteague8889Wow man, I definitely couldn't learn about those things in any other way. Surely having my hand held for a few tens of thousands of dollars will make me a super smart fellow!
@Warpgatez10 ай бұрын
I’m a CS grad and if you think you gain the knowledge you need for being an “engineer “ from school then you’re high as a kite and misguided.
@markusr3539 ай бұрын
Science vs Engineering.
@someonesomewhere86589 ай бұрын
The mark of an engineer is experience in applying and improving their craft
@juanitoMint8 ай бұрын
Most of the people don't realize that the end of a degree is the start of a new Learning experience In which, most of the time but not always, you're alone and are self taught
@Warpgatez8 ай бұрын
@@juanitoMint I never went in to getting a degree thinking id gain knowledge from it. Matter of fact, I knew that I would be learning outdated information and technologies through the lenses of the academic field. Not the practical and useful side. I got it to check a box. Since I got my degree at the end of 2022, I have been just learning whatever interests me.
@Warpgatez8 ай бұрын
@johndanson4427 well, hold on now. If my 14+ years of service in the military taught me anything its that sometimes you need to let the rookie host something and take the lead. It allows them to break through nerves, gain confidence, and experience. Even if afterwards, you walk out and say "well that was a waste of time for us".
@salimbendag62749 ай бұрын
Hi everyone, Personally I am an engineer in biology, I hold a master of science in biotechnology and I am currently almost finished with my PhD in marine biology, and I am now trying learn how to code and be a self taught software engineer, and i have to say coding is far more difficult than anything I went through obtaining that "Engineer" or "Dr" status, so self taught deserves respect, It was diffuclt yet they did it ! Much love to the community!
@InconspicuousChap9 ай бұрын
The author is not meaning "self-taught to PhD", he is talking about "self-taught to writing some sloppy apps". Suppose a guy pretending to be a proper biologist after dissecting a few frogs at home and learning a few random fragmented statements from a biology book. That's what majoiry of self-taught programmers are.
@salimbendag62749 ай бұрын
@user-dz5pt3yr9z I get what you're saying, It does require practice, but we should not neglect that not every self taught is bad at it, and that we should not let a minority ruin the image of the majority, the majority of self taught developers are working very hard to improve their situation and making a scary leap into something that is very difficult to master and they end up working through it ! That said, it should also not deminish the effort that people who went through a college education to obtain their positions or knowledge.
@InconspicuousChap9 ай бұрын
@@salimbendag6274 Talents can exist. People could learn math. People could develop math knowledge independently of the mainstream; that's what we are taught to do at universities - all that complicated stuff can be derived from the basic principles. Only we have to live in a certain real environment where most IT newcomers are there for quickmoney and not because they are interested in the scientific part of it.
@InTimeTraveller9 ай бұрын
That's because you didn't study computer science as an undergrad. Regardless of the difficulty of coding in a particular language, there are many adjacent concepts that you learn in a university. Such as computer architecture, computer networks, operating systems, compilers, parallel programming, database management systems, computational complexity, linear algebra, numerical analysis, etc. All these may or may not matter depending on what you're doing. If you're just coding the front end of a website for example all these probably have very little importance. But if you are coding the back end for example, or developing a standalone software suite then all these may come into play depending on what you're doing. Just like in biology, if you're studying e.g. immunology there are many background concepts that you should know, such as chemistry, biochemistry, microbiology, etc. This is why people say that if you've only studied one thing, eg Python programming, then you're not a software engineer. You are a programmer sure, but a software engineer (should) have much more generic knowledge.
@Qwertyuiop-p2s5f9 ай бұрын
As someone who switched out of Biochem to Chem E and finds bio very intimidating I find coding to be one if the easiest things ever. Every bio-related class I have taken has, at one time or another, resulted in pretty severe panic attacks due to the sheer amount of information I needed to know.
@Blueberrysoup557 ай бұрын
Thank you for concentrating on audio when putting this together.
@Sweet_P0tat0-piiie7 ай бұрын
I've seen similar comments but I just wanted to be another affirming voice. I have a CS degree but most of my knowledge is self-taught. I'm sorry that my fellow CS grads are trying to gatekeep. They are probably a little bitter about all their college debt.
@S5Dic092 ай бұрын
"gatekeep" yeah right, I'd say is annoying to see "engineers" made through months long bootcamp and seeing colored-hair ballet girls take jobs over "another man", yeah, let's punish the man who made his mind up early and as you said probably got family into debt and work his ass off for a decade just so a disney-style company dismiss him over a DEI thought-provoking fresh ideas new perspectives wokeployee, gimme a f break
@aaronsmith6009 ай бұрын
I'm studying Python in working towards a career change. This was great advice. It's terrifying, being MUCH older than most, to switch careers. But, I love learning, and this will not be easy, and it may be naive to try and get into tech in my mid-50's. But, I'm stubborn, and no's just make me try harder. I'll take coming across this video as a sign, and I look forward to more advice. Thanks!
@Jerry-uc1pn9 ай бұрын
You can learn at any age. But keep in mind it takes time and you might be too old to enjoy the fruits of your labour. In addition to python, I suggest you learn Bash to orchestrate your python scripts when your projects get larger
@LuzMCosta9 ай бұрын
You can do it! When times get tough, remember ... 1. You're not alone. My husband is 51 and studying Python too. People change careers in their 50s all the time, and tech isn't just for the kids. 2. People don't retire from this gig until they're in their 70s, so that's a 20-year career if you start now. 3. Resumés don't require years anymore, and most interviews are conducted by video, so it's much harder for them to discriminate against you. 4. Don't let these ageists get you down. They're talking like you're a foot in the grave when you might outlive them by a score.
@aaronsmith6009 ай бұрын
Thank you!@@LuzMCosta
@JamesQMurphy9 ай бұрын
If you truly love learning, then you’re already ahead of half the developers I’ve encountered. I’ve worked with some devs who are younger than me (I’m in my 50’s) and they haven’t read a single book or article in years. Never stop learning… you can totally do this!
@blackstreak029 ай бұрын
you inspire me aaron...lets get it!!!!
@CyberAbyss0079 ай бұрын
Good video! I'm a mostly self-taught developer for last 25 years. Currently, a mid to senior dev on a team of mostly senior developers. I'm more of an App repair guy than anything. My company is large and has had several reorgs and mergers over the last 20 years. I deal with a lot of legacy apps that came in from mergers where nobody knows anything about the application and get a mix of everything from Classic ASP & PHP to .NET & Angular and we're now trying to move to more modern React apps. I try to not be pigeon holed as a .NET or Java developer. I'm just a problem solver no matter the stack. I've fallen into an interest niche that is not for everyone. I never know what kind of App I'll get but the expectation is that I always figure them out. 🙂
@InconspicuousChap9 ай бұрын
It's funny how everyone sticks to one specific language (usually the only one they know) these days. In 1990s it was like: "We have got a bunch of code to migrate from platform A to platform B and from language X to language Y. You don't know the language X? Well, the project is 7 months long, which is more than enough time to learn it and migrate those 500'000 lines of code". I've been quite fluent in 3 programming languages even before applying for a trainee position at my first job, and that was sort of normal. Now indeed everyone is pigeonholed with a language sticker on them. It's like a Babel language confusion. Had to create 2 CVs differing only in the language name in the title, otherwise recruitment simply can't match them to a position.
@traveller23e9 ай бұрын
@@InconspicuousChap Currently on the job hunt with roughly two and a half years professional experience (I was a hobbiest doing mostly C# for years before), It's remarkable how many companies specifically ask about your experience with a language or framework. Great at C# but they're hiring for a Java role? 0 years of experience as far as the first few interviews go. I'm not sure I've come across a single role that requested a certain level of experience in computer programming in general. I wonder if it's a reflection of more dug-in frameworks, though I'm not really sure how it was back then. Or maybe it's due to companies industrializing the recruiting process to the point where it takes a while before you get in touch with someone who knows that C and C# are in fact different.
@dorgana2258 ай бұрын
I think you job sounds awesome!
@CyberAbyss0078 ай бұрын
@a225 - I guess I'm in my dream job actually. At first I thought, gee this is a bad situation but over time and with each new success, I really built my confidence and began to see that long term, this was to my benefit when I eventually make the jump to Cybersecurity at some point. It really takes a lot of guess out of what is happening inside all the the black boxes. 🙂
@radboyshrooms90777 ай бұрын
This is one of the most interesting jobs I have ever seen, I would love to try this out. If there is any way I can experience this job, please let me know.
@cody_codes_youtube10 ай бұрын
That was the most insane comment I’ve seen in a while. As a CS grad myself, that is such an absurd mindset. 95% of us devs are building websites, not saving lives. This video was some good advice for how to approach our work.
@vitalyl132710 ай бұрын
Ever heard of Horizon / Post Office scandal? This is what happens when bad developers are unchecked and unregulated. Also, your users suffer every day, faced by bugs and glitches of your otherwise probably benign "websites". This should not be dismissed either. High time software development is regulated. And I'm not even a CS graduate, I'm an engineer (as in, a proper, regulated mecatronics engineer).
@cody_codes_youtube10 ай бұрын
@@vitalyl1327 ha. Yeah, bad software can hurt people. 95% won’t. I’d love to hear, in detail, how you can regulate software. And where. We already have regulations on our financial systems, defense systems, strong requirements on medical systems. What are we missing in regulation? Your concerns are real, for sure. But taking aiming at “self taught” engineers is objectively a dumb angle to take
@vitalyl132710 ай бұрын
@@cody_codes_youtube self-taughts are just the demographic slice where the problem is the most pronounced. Being a self-taught is not necessarily a root of the problem, it just tends to correlate with a lack of rigour that is otherwise present in those who had a more structured education. Regulations work pretty well in medical and engineering domains, and I cannot see how the same framework cannot be applied to the software development. Personal responsibility, to start with. Centralised certifications that should be required in any sensitive development (aerospace, automotive, financial, civil service related, personal data handling, etc.). Responsibility of the certifying bodies for the failures of the certified. I.e., all the same as we have in the engineering.
@cody_codes_youtube10 ай бұрын
@@vitalyl1327 respectfully, if you haven’t been building software, or have experience building software in the industry for more than 2 years, you wouldn’t realize how much of an ask that is. We have formal structured education with information systems, we have an incredible amount of certifications in every framework and software discipline, yet saying most problems come from that slice of demographics is ridiculous. I’ve worked with 100s of engineers throughout my freelancing career and in my experience the level of due diligence and safe programming has not been correlated to how they started and is directly informed by their professional working career
@ThomasTurini10 ай бұрын
@@cody_codes_youtube LOl those "engineers" are so haughty, I thought there were like this only in France but it looks like they are assholes all around the world 😂 They are so insecure and starving for validation after years to learn something you can learn by yourself that they have to tell everybody in the world "i am an engineer " 😂 for real the worst people on earth in the professional world
@DaleOwens-x4q9 ай бұрын
We're all self taught. University might teach theory, but all practical knowledge has been gained on my own.
@jonaswatson5335 ай бұрын
University does not teach theory. It teaches foundational truths in CS and CE. Unless you have taken a degree's syllabi and learned every single topic taught in a degree program, you do not have the foundational knowledge.
@markus-hermannkoch17407 ай бұрын
5:12 objection, your honor. A good new language is not merely a new syntax. I use C++ (fast, powerful, relatively crossplatform, a little convoluted, but able to handle large projects) for different tasks than I do python (fast prototyping, good science libs), matlab (simulations, proof of concept), R (statistics), Javascript (browser guis) or even perl (yeah, I am a boomer. Regexps, scripting for tasks around the OS). A wiser guy than I once said: "If a language won't change the way you think about a problem, it is not worth learning it." True. But does not mean we should do everything using the same single tool. Greetings, an experienced autodidact.
@dmiller20365 күн бұрын
Perl is the shit especially for regex work
@crsv7armhlКүн бұрын
As a self taught dev with a couple years in paid dev work, but quite a few function focused PR's (accepted) to major Radio Frequency FOSS projects I absolutely agree with the sentiment. Python I use for most things not dependent on speed C/C++ I tend to use for speed dependent projects and microcontrollers (what is with the trend to use python on microcontrollers???). Almost all my RF stuff is C/C++ when microseconds matter. VBA I have used extensively on systems where external code can take years to be approved to run on the network. Its terrible, but it gets the jobs done
@Adrian-jj4xk9 ай бұрын
commit as often as you want. it's like a quicksave. if you're not done with a specific unit of work yet, commit anyway. when you're done, you amend the commit and proceed with the next unit of work.
@streetcoder769 ай бұрын
If it's not committed and pushed it doesn't exist.
@ChrisIsOutside9 ай бұрын
@@streetcoder76 I agree - I usually make my own branch and commit and push whenever I'm finished for the day - just in case my computer explodes overnight, my work is saved to the cloud
@CottidaeSEA9 ай бұрын
@@streetcoder76Even if it's pushed you can make it not exist. Just rewrite the commit history. It is mostly useful when you've accidentally added sensitive data though.
@CottidaeSEA8 ай бұрын
@luke5100 Roughly how big are your commits?
@CottidaeSEA8 ай бұрын
@luke5100 Does that mean you create unused functions and/or classes that can be worked on in segments? I'm a bit curious about the process.
@DaverSomethingSomething9 ай бұрын
This is not about self-taught per se, it’s the difference between a “hacker”/“coder”and a “software engineer”. The discipline of applying scientific methods and engineering principles to the work. Schools attempt to train people how to approach problem solving methodically, and 18-22 is not the age to learn that for everyone. Someone made the comment about humility, and I agree 100%. Openness to criticism and a learn-it-all mentality rather than a vain/ego-driven “I made it work” know-it-all mentality is the biggest differentiator I see in my day job. Learn-it-alls will always pick up on the engineering principles inevitably because they will see the value of not repeating mistakes. Know-it-alls are rarely capable of evolving past the hacker stage even if they can pick up technologies/skills easily.
@IQLion9 ай бұрын
I'm not sure what school you went to, but as a computer engineer, I studied and worked along-side many computer science majors who were still struggling with the concept of loops and conditional statements. As far as discipline goes, none of the classes ever got this far. Professors didn't think that things like code repositories, clean code, or even server-side database connectivity were important topics. Not when most students were still struggling with the basics.
@richardsteiner89929 ай бұрын
Effective code can be created in many different ways. As long as it works, is supportable, and fits in with the general scheme, I see terminology like the above as a weak attempt at gatekeeping.
@Alexander_Grant9 ай бұрын
This is 100 percent the case. I see the same thing in both people who have the degree and people who don't. I'm almost certain anyone who disagrees with how you put that is suffering from the Dunning-Kruger effect.
@fictitiousnightmares6 ай бұрын
"I'm an engineer, not a coder!" says the gatekeeper with a big ego who thinks he is better than others that can not only do what he does, but possibly do it even better.
@DaverSomethingSomething6 ай бұрын
@@fictitiousnightmares Nah, it’s not about what you are, it’s about what you can learn that counts.
@lambda-snail9 ай бұрын
I think everyone are self-taught - it's impossible to have someone else learn for you :) Just one thing I reacted to was your discussion about PRs and branches - this can be influenced heavily by the project/team/company so may not always be a reflection of the developer. But great video!
@phoenixamaranth9 ай бұрын
You absolutely hit the truth of it. University gives you access to materials, resources, and typically helps with a plan of how to tackle learning them, but the actual learning is always a self-taught matter in the end. People can pass courses without a full grasp of a subject simply by plugging and chugging on some topics. Ultimately understanding a subject requires a person commit to teaching themselves what the material means and how to use it. That has no relation to learning from university or from other resources outside of a formal school. No one can learn it for you, as you said.
@jarodmorris6117 ай бұрын
The phrase is "self-taught" not self-learned.
@asdsdfadfsaАй бұрын
I've got 1 year left of my cs degree and almost everything I know is from outside learning. A dedicated self taught programmer will be 10 times better than a lazy college graduate that just barely passed.
@PhaseControlDNB2 ай бұрын
I think you misunderstood the comment at 0:23. The commenter literally talks about the "engineer" as a degree. For example in my country, when you graduate with a diploma in an engineering degree you can put "engineer" before your name (similar to a title). So this comment is most definitely about the overuse of "engineer", often by people who technically aren't. It doesn't mean that a non-engineers can be less of a specialists or worse programmers, it's all about the proper use of the words. I'm also on the same opinion that you can't present yourself as an engineer if you don't have a diploma in some engineering degree.
@dmiller20365 күн бұрын
fart sniffing credentialism is a plague on society
@sherrickthuesmunn6575 күн бұрын
What if you do engineering professionally with years of experience? Then you're still not an engineer but some 20-year-old fresh out of college is? Seems like a weird standard. Engineer *isn't* a title the same way 'doctor' is, and it seems to work just fine this way. This just feels like gatekeeping from people who feel threatened.
@agericabella69093 күн бұрын
@@sherrickthuesmunn657 Engineer is a title in Europe, with legal responsabilities if something on the project goes wrong. "Doctor" (Ph.D.) is a title of academic research if succeeded after 4 years on a specific knowledge branch. Teachers at university must be 'doctors' in most of the cases. I think you were trying to refer to 'medical doctor', a title that grants permission to work in a hospital doing surgery and license for adquire drugs. To be a judge, or architect, you must have a degree in your possession, too. Experience doing the job are bonus points out of mandatory academic requirements. Sorry for my english.
@0xglitchbyte10 ай бұрын
Fantastic video, as usual! It's always fun seeing those kind of comments from CS grads. Another thing I would add is inexperienced devs dont understand the problem they're trying to solve, or have ambiguous defintions, and thus try to do too much at once. One thing I constantly remind myself is to take the smallest piece, and make it smaller. Some old proverb put it best: "The mountain is moved pebble by pebble".
@broadestsmiler9 ай бұрын
I've heard that proverb worded differently by my old Algebra II teacher in the form of a question and answer: "How do you eat an elephant? One bite at a time."
@thes74509 ай бұрын
@@AndreiGeorgescu-j9pthey know enough computer science to do the job. The rare self taught dev are the ones who are able learn cs and implement it in their work using direct learning.
@angelocarantino48039 ай бұрын
@@AndreiGeorgescu-j9pwhat the heck bro lol, you keep copying salty replies everywhere hahaha
@thecollector67469 ай бұрын
@@angelocarantino4803 Find the lie. You clowns don't....hence the reason why you routinely lose out to those who do hold CS degrees.
@thecollector67469 ай бұрын
Not nearly as fun as it is when I interview "self-taught devs" and they can't; down to a person provide me with a concise definition of OOP and or polymorphism, and why either should be used. But remember everybody.....Self-Taught-Devs aren't the deluded, generally unqualified, ignorami who thinks reading Medium Posts and copy/paste from Stack Overflow is the equivalency of grinding for 4 years in an accredited program instructed by actual Computer Scientists.
@mattlm649 ай бұрын
In my experience Computer Science and Software Engineering graduates are rarely better than self-taught developers.
@robinpipslayertekprofitsfa26449 ай бұрын
I dropped out of University for personal reasons, however INN.Uni the Lecturers themselves said "We cannot 'spoon feed' You!", so WE HAD TO LEARN for OURSELVES!! Those who excelled were those who worked together in groups and solved their problems together, whilst the "soloists" caved in week-by-week. By Year 2, the Class was less than half what started in in Year 1 😰. Since Uni, I've taken extra Courses and when in one Course, all the Tutors and Students predicted the guy with 20+ years of Pro experience to pass the exams first.... I DID!! 😂😂SOOO....since then, it has been self-driven push!! Self-Determination and focus.
@jonaswatson5335 ай бұрын
You are working at too low of a level then to witness expert work.
@conditionallytriggered23139 ай бұрын
I genuinely appreciate this perspective. I am brand new to coding in general as I have only just started trying to make games and I have no experience yet. The biggest thing that has catapulted my learning experience is that I have spent a few years now figuring out what I wanted to make when I started and also having people around to discuss ways of doing things with. Having the opportunity to discuss purpose and relevance of the application of code for a task really helps make the process future-proof.
@gmdplutonic2 ай бұрын
I'm a Self-Taught dev (pretty new) and the whole reason I decided to teach myself is because I hate getting taught by other people and the people who hate self-taught devs just need to learn that almost every self-taught dev has a good reason to be self-taught in the first place.
@tosgem7 ай бұрын
Another "qualified" person here who absolutely does not judge the self taught! Plenty of great colleagues I've had over the years have come to this point through different paths, not all university. I've trained plenty of graduates who come with their own problems. Besides all of this, we are ALL self taught in huge areas of our knowledge because tech changes so much, and no university education is a perfect fit for any job. We all need to self develop, increasingly as your career goes long
@danieljohnson81549 ай бұрын
As a CS grad myself, i actually find myself admiring the resolve of self taught devs. Software Engineering is a demanding field, and people who are self taught who manage to break into the competitive job market deserve the utmost respect.
@vitalyl13279 ай бұрын
Far too often those people who broke in are breaking things and wrecking havoc. There is a lot of wrong people in this industry, who should have stayed far away.
@vitalyl13279 ай бұрын
@@AndreiGeorgescu-j9p I think it's youtube itself, its auto-moderation is absolutely unhinged. My comments get deleted randomly. Often it's simply because of a stray dot in between words instead of a whitespace (thanks to the mobile phone keyboards), it's interpreted as URLs and punished. Sometimes it's for some keywords - a lot of my comments here disappeared that mentioned the abbreviation for atomicity, consistency, isolation and durability.
@applepie98069 ай бұрын
@@vitalyl1327 Not exactlly.... the ones wrecking stuff are the "tech lead" with 9 years of experience who on multiple occassions tell me a snippet of code works when it doesn't and he sounds like he hasn't touched the language and framework he's supposed to be leading the team in for at least 5 of those 9 years, and isn't familiar enough with the language, getting shocked by its unique features, AND also costing the company extra thousands for months by provisioning more expensive cloud resources for no good reason and then going on vacation. This same guy asks me to write high latency code for no good reason other than it looks clean. Clean code will kill a web server, thanks to him the microservice I wrote is basically useless because it does multiple queries for one request other than the one query I wanted to do for that request and has about hundreds more lines of code. Readability and maintainablity is down the drain and I now hate working with that code. He also told me exceptions throwing exceptions don't cause latency issues. LMAO. Latency basically shot up by 4x when I added more exceptions. I had to tell him it doesn't work (because each exception has to collect the stack trace) but of course he's the tech lead he doesn't believe me, the intern, because I'm not the tech lead. Or the other senior devs with 9 years of experience who come in to "help" and leave at least 3 bugs behind for me to fix. Their unit tests were useless at catching their bugs. I have less than 1 YOE and mainly self taught, and the newcomer "senior dev" with also 10 years of experience come running to me to ask how to do this and that. These people have MASTERS DEGREES. Look, good sirs, with all due respect I'm sure there's good software engineers with Masters, but someone with a Bacherlor's or Master's degree isn't necessarily good, especially if they've been out of school for a LONG while. I'm bloody tired of them and would rather work with a self taught dev with integrity and common sense.
@mrfixitm33459 ай бұрын
@@vitalyl1327why because they read the same books and did the same projects at home while you paid thousands for some dude to say "hey do the project on page 58 by tomorrow"? 😂 collge is a joke for 98% of professions. Everyone teaches themselves. Some do it cheap and some do it expensive. Who's smarter? Does it matter when you're dead? Your boss will have a new ass in your seat before it's cold and who knows maybe they are "self-taught" doing a better job than you were 🤷🏼♂️. There's always someone smarter, faster, bigger.
@vitalyl13279 ай бұрын
@@mrfixitm3345 you so very obviously have glaring gaps in your fundamental knowledge. And the funniest part here is that you will never be able to detect them yourself. Again, people without higher education have no ability for systematic learning, they do not learn bottom-up, they are unable to form comprehensive systems of the knowledge they acquire. You're an obvious and hilarious case in point here. You have no faintest idea of what education is. I am so glad I will never have to work with someone as low as you are.
@Drcalatayud9 ай бұрын
Very good points. These are real, I have lived through them. I'm also a self-taught software ENGINEER. Thanks for the video Travis.
@jonaswatson5335 ай бұрын
How are you an engineer exactly?
@cagdasucar39329 ай бұрын
I have a bachelors in Computer Engineering and I feel like the PhDs hate us. :)
@sprayberry887 ай бұрын
CS grad here. We don't all hate self-taught devs. Some CSs have an inferiority complex because you're better than them without having to spend the time and money on the education portion, and others pissed that they don't think you're up to the expected level regarding knowledge, programming capability, etc. The former are just morons and the latter just screams of a disconnect of where they were when they started their careers because we all sucked at the job at first, too. The degree isn't a guarantee that we'll be good devs, it's a guarantee that we have a certain set of qualifications as outlined by an academic institution. We all learn most of our skills on the job and are, by extension, all self-taught devs. Much respect to all the software engineers out there who had the gumption to learn everything on their own.
@jeffsherman96385 ай бұрын
I am a recent grad with a bachelor’s and masters in computer science. College doesn’t even scratch the surface of what is required as a SWE1 at most companies unless you are one of the lucky ones who got into a company as an intern to permanent position. Learning a computer language is just a small fraction of the job. Concepts like the use of Apis, use of interfaces, dependency injection, git, sql injection attacks, etc etc are not even taught. The things you mentioned are spot on. Constantly build projects in one framework, in one language and become very proficient first before moving on to something else. It’s essential to build projects regardless if you are currently employed or looking for employment. It’s this experience that determines how well you will exceed into an intermediate or senior developer role.
@psygirl011110 ай бұрын
Engineer who graduated in CS: We have to cleanse the society of impostors! Me, a tourism graduate, watching people who didn't study tourism getting jobs in travel agencies and hospitality industry.
@CW919 ай бұрын
They are self-taught 😂
@applepie98069 ай бұрын
Just curious, what do people learn in tourism degrees?
@zshn9 ай бұрын
3:50 How is this not the norm? I thought everyone works like this. 1. Create, groom, schedule and assign an issue in JIRA. 2. Create a 'feature' branch from master/develop. 3. Breakdown issue into smaller tasks. 4. Code, test, commit for single task (ideally) or multiple related tasks. 5. Push remote branch. 6. Raise a PR to merge 'feature' branch into master/develop. 7. Implement review comments, test, commit, get approvals. 8. Merge
@MrC0MPUT3R9 ай бұрын
When I worked on a small team of three we did single branch development where we all worked off the development branch. This was possible because we were such a small team, but also our code base was only worked on by the three of us with some people from other teams committing from time to time. I loved it. It forced small non-breaking commits. As for Jira, today's Jira culture at companies is a cargo-cult. I'll never forget the time I had a single character commit that took two days to get into a simple staging environment because of all the "ceremony" and red tape it needed to go through. Absolutely insane.
@CyrilCommando9 ай бұрын
Such an overcomplicated and overseparated process
@ShiningChris129 ай бұрын
@@MrC0MPUT3Ri am currently working in a team of three and I am pushing my fellow engineers to use jira and github and code reviews as much as possible, because every time they merge directly to dev I have to solve some nasty conflicts or the code quality just isnt 100 there. I never understood why people cant allocate 70% of the time to coding and 30% to planning/refinement/etc. Its a simple step that from my experience makes working async on big project much more enjoyable
@zeez77779 ай бұрын
@@CyrilCommando Did you ever code anything non trivial in a team?
@streetcoder769 ай бұрын
Many but not all. There is no single rule fitting for all it depends on your company, project and team.
@soggy_dev9 ай бұрын
I feel like self taught devs get lumped into an unfortunate bucket with accelerated bootcamp devs and the like. Obviously this is a terrible over generalization, but the perception of these folks essentially thinking they're on an "easy" get-rich-quick path is a real thing. I've seen this idea perpetuated by plenty of folks, but I've also seen absolutely kick ass engineers with those backgrounds. At the end of the day it really boils down to passion and skills. If your only motivation is to be well paid with as little effort as possible, it will show. The fact that people like this exist doesnt give the rest of us a right to discount every other person with a similar origin story
@TheXarus7 ай бұрын
This right here
@Archon-Zero5 ай бұрын
Started programming at 10 years old in BBC Basic, as an adult spent 10 years in the industry before deciding to go to uni to help further my career. My experience tells me that you learn more, and better in your first 6 months on the job under a good development team than you will doing 4 years of university. I wouldn't have hired 90% of the class I graduated with. University has an almost negligible value in the programming industry other than getting hired. In my humble opinion.
@stevevanniman4433 ай бұрын
Should have attended the University I attended. The Dean of Computer Science was hell bent on structure, core understanding and algorithms. This was a while ago, if anyone in CS took the business coding Cobol class, they were dismissed from the CS program. Hard core. First class out of the gate was Mainframe Assembler. Started with 60 in two classes. Ended freshman year with 15 in one class.
@christophhenninger64408 ай бұрын
4:17 I (mostly self-taught) do that stuff like this: I branch of develop (that is my main working-branch), then I start to work on the feature. I commit and push everything up as every step is done, so I created my user-model, then I create the form, then I create the login-check. Every time I test, commit and push. When the feature is done, I create a pull-request, but to be honest since I am the only one working on that project I merge it without reading it again. Code _in my branch_ can possibly be broken when I try to use it. Code _in develop_ should never ever be broken. The main-branch is by the way my release branch. So when the release comes up, I branch v1.0rc (in example) off of develop, get it into a state where I am sure it will work on the server, then merge that first into main and tag it as v1.0 and second I merge it back into develop of course. On the server I pull it again from the tag and create a docker-container, first to make another test, then to really send it to production. Of course "production" is a little webservice with one user: me.
@innomin82519 ай бұрын
I’d disagree with the learning languages. If you learn the idiomatic way each language works, it can give you great insights into what you’re already doing. Take Ruby -> Kotlin as a good example… it’s super familiar and I find it easy to work in. Meanwhile, my colleagues who came from an extensive Java background keep trying to write Kotlin as though they were in Java, and constantly complain the language being more difficult. It’s ultimately a skill issue, and there’s nothing better than broad experience in many different languages and ways of working to solve a skill issue.
@BW0229 ай бұрын
If I saw a developer with say a two-year diploma and a year's work experience, yet have C++, C#, Python, JavaScript, React, Angular, etc. I'm going to have to ask WTF they've actually been doing and whether they actually worked in any to actually get proficient. If you are 50 and know everything from assembler, Pascal, C, JavaScript, SQL, VBA, Python, etc., etc. that's a different story. You could have been in five different positions for 5+ years each. However, even in those cases, you should probably either skip them from your resume or just focus on the ones key to this job.
@kabiskac9 ай бұрын
@@BW022what if they started coding at 14?
@BW0229 ай бұрын
@@kabiskac I've interviewed and hired lots of developers. Like most, we look at three main things -- education, work experience, and job specific skills. None of these show up well prior to around 18 on most resumes. When an employer asks for X, they typically want to see that you've used in a professional setting -- if not paid work, at least a school project, etc. Most development isn't just coding, it's working with others, needs, testing, versioning principles, documentation, testing, etc. Those rarely come from self-taught experience. That said, it may help you get through a technical interview, you can certainly say "X years of experience" even if some of that happened before school, and maybe it you can use it to provide examples or "projects" to discuss -- if you made a web site, you could include a link to it. If you are self-taught, only a diploma, and/or not much work experience, just realize what (and why) employers want proof of experience using these in team/semi-professional environment and try your best to highly any experience you have.
@andydelle45099 ай бұрын
@@BW022 Peope who know assembler and K&R C don't use Python! IMO, Python is the new BASIC.
@BW0229 ай бұрын
@@andydelle4509Clearly that statement isn't true since I know assembler and C and I do use Python. I agree that Python is the new entry level general purpose language, but that doesn't mean because you know something else, you shouldn't use it. My choice of which language to use comes down at a lot of decisions -- time, ability to deploy them, policies, ability to share it, etc. Sometimes you just need something quick and dirt and that often happens to be Python. I've had to write small utilities, analysis, document sorters, etc. in Python since others dev don't have C (or Delphi compliers) or is it necessary. Then again, I've had to rewrite some of their Python programs in VBA (inside Excel) so non-programmers (who can't install Python) can run them locally. Finally, I've had a few 'quick and dirty' apps which were so painful to run in Python or VBA, I gave up and fired up MS SQL and Delphi. And once, I had to rewrite one of their Python utilities in JavaScript so that everyone in the organization could access and run it.
@bitpilot7910 ай бұрын
I am a self taught developer myself. In my country you cannot use the title engineer, without having a degree in some kind of an engineering field. So I consider myself a software developer, not a software engineer, and that's ok for me.
@fabianpetersen245210 ай бұрын
I'm a chemical engineer doing software development and i dont mind being called software devloper since i didnt study CS. I agree with your country though, the title engineer is used very loosely nowadays. Example some countries will call a millwright an engineer or the aircon technician engineer. It is a very hard course to do at university just to be so diluted and used by everyone. It should only be reserved for people who actually studied to be one
@vitalyl132710 ай бұрын
@@fabianpetersen2452people with CS degrees should not call themselves engineers either, they are supposed to be scientists.
@jarodmorris6117 ай бұрын
People in the US don't mistake a software engineer for someone that can do the traditional kind of engineering. If you heard a mechanic market themselves as "Truck Doctor" you wouldn't be confused and think they were a real doctor would you?
@dvillegaspro9 ай бұрын
I have always thought I was a weaker developer because as a junior dev I haven't learned more languages and frameworks outside of JavaScript and React, but I figured I wanted to get really good with programming concepts, techniques, patterns and architecture and I can then apply those to other languages later. Thanks for helping me feel better about not being a massive polyglot yet.
@Muskar29 ай бұрын
Don't take my word for it, but I think that's dangerous given JavaScript and React is your chosen specialties. React is a very replaceable framework and JavaScript is a hard language to learn fundamentals in. Don't feel bad about it, but just know that it will benefit you greatly to get comfortable doing something timeless, like writing in C and/or building something from scratch with minimal dependencies.
@dvillegaspro9 ай бұрын
@@Muskar2 I don't disagree, I just meant to specialize as a beginner in these things. I am currently starting to learn C actually!
@retagainez6 ай бұрын
@@Muskar2 It's probably more dangerous for the reasoning that browsers are tightly coupled to JavaScript and vice versa. So much so, coupled to browsers where the GUI is untestable and not standardized. If anything, JavaScript has valuable lessons in navigating/avoiding this tight coupling with the complex configuration system it has via various json configuration files. From a perspective of creating patterns of programs, I would say it's all mostly still there but maybe only less accessible due to all previously mentioned overhead.
@KFarah4 ай бұрын
C is great but I think maybe too low level for a front end dev to get as much use out of … I would look at Java or C# if you want to learn OO. Another good language which I have come to really like is Python you can write things in a more efficient readable way and you still have OO concepts as well as the ability to write a quick script.
@JayJohnson11Ай бұрын
I recall a slide shown at the Dallas JavaScript meetup with frameworks...each year it changed.
@Kayi_Alp073 ай бұрын
Though I'm studying at prestigious university in my country, I'm still taking online Bootcamp on my spare time. Modern education makes living, but Self education makes a fortune.
@michealkinney62053 ай бұрын
Only caveat I would make is that these are mistakes that those that are not self taught also make (maybe even more so). But the points are still valid. Good video.
@softcolly875310 ай бұрын
There are plenty of qualified engineers that write absolutely crap code. Some of the best and the worst developers I have worked with have been self taught. Far too many devs over engineer everything into a mess of complexity. No 1: Very good. Completely agree. Probably the most important mindset to have. Readability and maintainability above all. A lot of places don't need to scale too much. No 2: Whatever. No 1 is way more important. A lot of working environments are way to chaotic for stuff like that. No 3: Again agreed. Mastering things is more important than chasing fads and trends. Constantly learning means you will never be mastering stuff and constantly pushing out code in languages / frameworks where you aren't an expert. No 4: Again, great of you have a working environment that you can do that in. A lot of places have to many firefighting issues to be able to focus on only one thing. No 5: Experienced devs can be just as bad for this.
@vitalyl132710 ай бұрын
And this is exactly why robust regulations are so important. With a personal responsibility, with severe consequences for screwing up, bad engineers will be weeded out.
@softcolly875310 ай бұрын
@@vitalyl1327 As I pointed out, some of the best people I worked with had no formal qualification. Why would regulations be expected to help?
@vitalyl132710 ай бұрын
@@softcolly8753 same as they work for medics and engineers - by placing the responsibility where it should be.
@softcolly875310 ай бұрын
@@vitalyl1327 medial error is the third leading cause of death in the US.
@vitalyl132710 ай бұрын
@@softcolly8753 which can be attributed to one of the most relaxed regulatory regime in the world. EU is a far better example.
@sohaibmalik68469 ай бұрын
I am in a university. And all my knowledge is self taught, one of few things i got from University are Soft Skills and Degree. My entire development and AI knowledge is self-taught.
@PriyankRupareliya9 ай бұрын
Experiencing a huge paradigm shift right now. Thanks, Travis
@wfjhDUI9 ай бұрын
Like others said, almost all of this list is about experience programming in a large team environment rather than anything to do with formal training. As an example of the difference, academics can sometimes write some of the most impenetrable and confusing code out there. Zero comments, no version control, minimal packaging, idiosyncratic coding style, NIH syndrome, but it did something interesting and novel 5 years ago, which is also the last time anyone could get it to compile before that person graduated and dropped off the face of the Earth.
@monkeydog86813 ай бұрын
I'm an engineering graduate. I learned most of my coding outside of school AKA self-taught.
@ayoubahabchane10 ай бұрын
I see what you did there at 06:26 ! I just finished reading that book. Can't thank you enough for the recommendation 🙏🏼. I'm happy to see it echo and build upon something that I've always believed in: that wonders and breakthroughs will always come about when somebody finds their specialty and pour their heart into it, no matter how small or niche that specialty may be.
@e.m.r11249 ай бұрын
Hey, you got me curious. What is the book?
@never_give_up9449 ай бұрын
@@e.m.r1124 Probably it is "Just One Thing"
@ayoubahabchane9 ай бұрын
@@e.m.r1124 It's a productivity & self-help book titled The ONE Thing (240 pages). Travis talks about it in his video: THE Book That Changed My Life As A Developer.
@TheRealInscrutable9 ай бұрын
I'm a university trained programmer. No one is asking for regulation that has any grasp of what comes with it.
@jonaswatson5335 ай бұрын
What is a university trained programmer exactly? What is your degree in?
@TheRealInscrutable5 ай бұрын
@@jonaswatson533 Literally Computer Science.
@davebudah10 ай бұрын
Funny thing about people who say the industry needs "to be sanitized" is they are going to Universities to learn from lectures who are joining bootcamps to also learn from non-university graduates. Everyone who thinks they deserve better treatment coz they spent a couple of years writing assignments needs to heal.
@vitalyl132710 ай бұрын
It does not matter how and where did you learn. What matters is who will be *responsible* when your code goes south. This is the difference between the wild west software development and properly regulated fields such as civil engineering and medicine.
@davebudah9 ай бұрын
@@gppsoftware You are right, that's what you prefer and it has to be respected by those who will look for employment at your company.
@davebudah9 ай бұрын
@@gppsoftware I agreed with your point, meaning I would still agree with a billion other people who share your view. However I have worked as a programmer for 5+ years now, I have a college degree but has nothing to do with Programming. During my years as a programmer I have come across a lot of graduates with CS degrees but cannot code beyond the old none usable projects that they did in college, and now as I speak, I know of several recruiters who prefer someone who knows hands on programming than just a certificate holder.
@replicaman92157 ай бұрын
Great points. I am not an official developer, just someone who fools around with VBA at the office. But I've noticed my tendency to do several of the things you mention: specifically, (1) working on too many different things at once rather than finishing one thing and delivering it, (2) choosing a high-level language to preemptively study (justifying it as "practical") rather than focusing effort on the low-level work that can serve as a foundation for whatever may be asked for in the future, and (3) "making it work" at the expense of future maintenance (though I've been trying to rein this one in lately). Thank you for the harsh dose of reality! It hurts, but in a good way.
@Adalbert7779 ай бұрын
Full ACK to all points. Those are definitely signs of unexperienced developers, whether self-educated or with a degree. I have a masters degree and it really helps understanding the basic concepts: data structures, efficiency, programming paradigms (object oriented, imperative, functional), etc. What I did not learn at the university are the "engineering" skills, basically everything you described in your video. In my career I met two outstanding mentors, both without any degree but excellent architects and explainers.
@DaMuffinDev10 ай бұрын
I rarely comment, let alone like a video, but wow, these tips are great. I, for one, have a big problem with adding huge changes to the codebase at once and never thought about doing it step by step, as you mentioned. I also really think the notebook advice is awesome. Thank you for sharing your wisdom; I will be sure to take advantage of my newfound knowledge! Great video!
@slayeryt6377 ай бұрын
I'm a CS major and the only crime in this video is the lack of a red sus reference at 0:46.
@alancito989 ай бұрын
You know something cool about software industry, it's no matter what you background is, if you have the knowledge you can even make your own startup
@nephxio8 ай бұрын
Self-taught SDET here (I primarily use C++/Python in my job). I'm truly fortunate that my coworkers see my different education as a value-add rather than a detriment. I started as a QA Tester in Software Dev and moved over to SDET after 12 years of being a Tester, then Analyst, then QA Engineer. They seem to think my ability to think like another QA role while being able to code has allowed me to create better automation, better tooling, and better tests because I understand the needs of QA and can see potential breakages needing coverage. Great video!
@MrMarko516 ай бұрын
This is the video I'd show to every beginner developer, whether he's self-taught or not. Great video!
@taylorallred62089 ай бұрын
I have seen both good and bad in self taught programmers. The main difference I see between the good and bad is the humility. I think it’s easier to fall prey to the Dunning-Krueger effect as a self taught person because you aren’t exposed to as wide a range of knowledge. Granted, CS grads and self-taught folks are just as likely to lack humility and fail to learn new things when it matters.
@anthonyobryan34859 ай бұрын
As a completely self-taught programmer of nearly 40 years, I have to vehemently disagree with the supposition that self-taught programmers are not exposed to as wide a range of knowledge as formally educated programmers. The greatest hindrances I ever experienced while learning my craft were while in a classroom earning my degree. I had been programming for about eight years before I stepped foot into a University, and exposed myself to many different programming concepts and techniques that my University classes didn't even mention in passing. In my experience, formal training is a choke collar.
@jvdl-dev9 ай бұрын
@@anthonyobryan3485 +100. I learned how to code first and then studied web development at a local college. With regards to the exposure to knowledge, as I see it, the vast majority of it is gained as experience during one's career, so regardless of whether you're self taught or college / university educated, it's what you do after you learn those basics that determines your exposure to knowledge and experiences. As far as college curriculum was concerned, it was relatively general at the beginning and there was a lot of material being taught that was fairly dated. Don't get me wrong though, glad I learned it all because it was all super interesting nonetheless! I was very fortunate that all the teachers and the IT department head were very open minded and willing to accept input from students for some parts of the curriculum - for example, I found out they were planning to teach ASP classic, this is about 20 years ago, but it was already losing relevancy. Myself and another student wrote a proposal for switching the language to PHP. While PHP surely isn't "the best", it's a great language to learn in terms of web development, given it's wide availability and large community.
@imbra9 ай бұрын
We are social creatures and almost everything we do has a goal to increase our social status. Being an "engineer", for a lot of people is a status symbol. Just like being a doctor or lawyer. So, I don't really feel bad when I hear that I am not really an engineer. Because what I am really hearing is "for me, being an important person is very, very important"
@ErnaSolbergXXX9 ай бұрын
That is just not true. It's the mindset of a slave. "look at me, I have climbed higher than you" for people who are really free, they don't give shit about titles. That means they don't care about the title people have. They care about who they are.
@vitalyl13279 ай бұрын
Being an engineer, by definition, is having legally binding personal responsibility for what you're doing. Nothing about the status.
@applepie98069 ай бұрын
@@vitalyl1327Indeed, that's why I unit test the crap out of my services, unlike some people with degrees. I've seen some of the laziest shit coming from both self taught and degree holders.
@angelocarantino48039 ай бұрын
@@vitalyl1327engineering is just an applied science, legal obligations are predated by engineers lol
@jositconsultinginc.39729 ай бұрын
This part here (0:20) is a masterclass on how to take feedback that is meant to be offensive and inflammatory, dissect it to see if there might be anything useful there, using that part to improve and disregarding the rest of it. Excellent video.
@shadeofsound236 ай бұрын
No one's been able to really give me a sense of what a "unit of work" is before your video, or how they fit into commits and PRs. It's been helpful for a person that learned to code by fixing rather than building a bunch of theoretical projects that began and ended cleanly
@michaldoubek46865 ай бұрын
As a self-taught developer who helped few of those CS grads get their homeworks done, I think we are fine :)
@professorquarterАй бұрын
CS grads talking down on self-taught is wild. They should ask those of us in Electrical Engineering what we think of software "engineering".
@holdenmarkymark33Ай бұрын
What do you guys think of software engineering?
@professorquarterАй бұрын
@holdenmarkymark33 Mostly, it's seething about how CS people suck at math (and everything except CS stuff, really) yet get paid more on the top end. There is also a lot of resentment that the term "engineering" is used when it doesn't touch on common engineering staples common to the traditional engineering degrees.
@holdenmarkymark33Ай бұрын
@@professorquarter hahaha, you must have met some of the "senior" software engineers I work with. I'm no genius or math whiz, but some of these front-end cats are embarrassing XD
@professorquarterАй бұрын
@@holdenmarkymark33 Yeah, they must be especially non-mathy. I think the math stereotype has to do with a lot of CS degrees only requiring up to Calc I or II, which are actual high school subjects whereas ABET engineering degrees all require multivariate calculus, differential equations, and linear algebra as well at a minimum (most often more than that. I was required to take a basic stochastics class at a minimum as well as what amounted to applied diffeq + LA twice, not to mention the actual content). In fairness, I have met a lot of math undergrad -> MSCS people working in logistics, financial, etc. software and the like.
@holdenmarkymark33Ай бұрын
@@professorquarter honestly, it's an extremely rare case where I have to apply any mathematical concepts beyond discrete math. I have done zero calculus for work, but then again I work on commerce systems, nothing cool like rocket ships (yet). Mostly basic arithmetic.
@MindIsLikeFullMoonInFall8 ай бұрын
These are all very valid and useful tips. I have made some of those mistakes myself. I think it will take time for me to rid of those problems, but hopefully, knowing them will make me become more aware and fix it before becoming a problem.
@ngoCEO9 ай бұрын
Excellence isn't derived from a piece of paper you paid an institution for.
@TravisMedia9 ай бұрын
Wise words
@jonaswatson5335 ай бұрын
Yes, however having a high GPA and receiving the respective piece of paper proves you have an excellent understanding of the foundations of the respective program (CS or CE).
@jayjeckel7 ай бұрын
Dev with 15 years of experience. Came in very skeptical, as I always am with such topics, but this video is spot on with every point. This is all good advice for new self-taught developers and really for all developers in general.
@CarbideCarbon3 ай бұрын
Excellent video! I've got 25 years as a professional dev/lead/architect/manager/director. I've been coding since I was 7(poorly) because my dad bought a computer instead of a NES. I've got an undergrad in Chemistry, an MBA, and a PhD in AI (from 2001 when AI as we know it today didn't exist.) I've made every single one of these "mistakes". I've learned from it. Maybe it's rose-colored glasses, but if youtube had existed in 2002, and if I watched your video, I might have been CTO by now.
@Immudzen9 ай бұрын
As a senior dev I normally enforce that people have tests to cover all of their code before I will process their merge back into the development branch. I also look at their code for maintainability and to make sure it solves the actual problem. I have found that most of the self-taught programmers just want to throw something up and move on and while it is fast for them in that moment it is too slow for the projects. My experience is that the time spent debugging later completely swamps the time it would take them to do a better job. I actively work to train the people I work with to be better programmers with feedback and pair programming sessions. However, some people actually seem hostile to learning and this creates a lot of problems. Their code quality is bad, it does not get better, and it creates maintenance problems.
@Nocare899 ай бұрын
I know what you mean by hostile. I get defensive when my world is threatened, but I let it all come in and marinate, and I'll come around or form a stronger debate basis. A lot of people can't or won't do that. IMO it is a clear red flag and that dev needs to get replaced soon as it is viable if they are consistently cagey. Titanic waiting to happen, hiding a burned hull... A junior can still teach a senior on occasion and its part of what makes the mentoring process so beneficial. The moment where a dev thinks there is nothing else to learn, its time to go flip burgers. Another way to put it, someone who wants to be a developer who won't develop themselves can't be a true developer.
@alkenstein9 ай бұрын
There's 2 different mindsets needed during the PR process: 1. While creating a PR the coder should have a lot of pride and ownership to produce the best code they can 2. While the PR is being reviewed the coder should take their ego out of it and instead consider that the code belongs to the team, wishing for the reviewers to surface as many issues and good suggestions to improve the code as possible In this way each PR has the best opportunity to be of the highest quality and the coders skills will grow at the same time This is something that every successful (team oriented) developer learns early on in their journey
@retagainez6 ай бұрын
This branching strategy could also harm testability in this case, too.
@Immudzen6 ай бұрын
@@retagainez We normally aim for branches to live for about 2-4 days. The work is all scientific work and mostly involves a lot of math. The way the code is structured conflicts are pretty rare. A person working on chemical reaction equations won't conflict with someone working on mass transport because those will be in separate areas.
@retagainez6 ай бұрын
@@Immudzen Ah. In that case, a lack of merge conflicts wouldn't really detract from using branches. I am more curious about the problem domain you guys write code for and it makes me sad and confused to hear about the hostile pairing sessions. I would do ANYTHING to work in a company with pairing, but I highly expect I won't be exposed to that for possibly up to an entire decade or so.
@luid70510 ай бұрын
Im lucky to have a software engineer as my mentor and all these tips are the same advice he gives me, im starting out with learning C# right now…I picked the self taught route because college is expensive, and it takes time away from my responsibilities as I have a mother who I help out financially do to her health problems. Its pretty sad that theres people hating on the subject of self taught developers…sorry but not everyone has the opportunity to go a get a degree, I have found something I want to do as a career and im doing my best with what I have.
@14959787079 ай бұрын
1. The opposite side of this is premature optimization. Yes, you should take some time to draft how your code should work and orgabize things in a way that makes sense, but you also need to get to implementing, or all that planning is worth nothing. Plus, stuff comes up, plans need to be changed. So it's important to find a balance between not looking ahead and looking ahead so much that you get nothing done.
@dynogamergurl9 ай бұрын
This is definitely something I struggle with even in traditional storytelling and writing. There’s a fine balance and some it helps to have a generalized section like a template and fill in the relevant sections. It makes it easier to commit out sections that don’t work or still need some more lines to work. It sounds odd but it sometimes helps to write the beginning and end and meet in the middle
@etansivadАй бұрын
Sign 4 - "Working on too many things at once. Stop volunteering for everything." Soooooooooooooooo hard to learn this. I do this so often. This video is really helpful, thank you for posting it.
@offgridvinceАй бұрын
This is amazing content!! 😮 Excellent. I'm going to listen to this several more times. Thank you
@haxi529 ай бұрын
Self taught for almost 20 years, I see just as many "traditionally educated" devs make the same mistakes. It doesn't matter how you learn it, if you are truly passionate about coding.
@jonaswatson5335 ай бұрын
A developer is not a computer scientist or a computer engineer. A computer scientist or engineer can be a developer, but not the other way around.
@LiberalLoudMouth7 ай бұрын
People that complain about non-uni coders are the ones mad that they paid for something they didn't need to pay for and probably know far less about it than the one passionate enough, and disciplined enough, to teach him/herself.
@ambervdsteen3 ай бұрын
it's so funny because I am a (mostly, not entirely) self-taught chef and used to hear this a lot about people in the culinary industry. i'm now less than a year into learning how to code and it seems there's always people who just want to be negative nellies and who maybe feel intimated by people who take a non-traditional route to something? great video, have subscribed!
@kernelpanick6364 ай бұрын
I catch myself doing things like this a lot. This just helped me come to the realization that taking things slowly can help me get farther in huge ways. Very helpful video
@fulconandroadcone948810 ай бұрын
I 50s in and as self thought developer it escapes me how engineer lead could not comprehend client side caching. Good self thought devs have a proven track of will to learn and study new things on there own, school grads have a track record of passing exams.
@paxsevenfour9 ай бұрын
Respectfully, if I may offer some feedback, the “how” you say things are just as important (maybe even more so) than the “what” you’re saying. You may not mean for any negative or unhelpful tone to come across but, for example, your message sounds like you may have a chip on your shoulder about CS grads. I’m not saying you actually do but the tone of what you say can communicate that even if it’s unintentional. The soft skills of dealing positively with people, teamwork, communication, etc are equally as important as the hard/technical skills. Just my 2 cents, sir! 😊
@fulconandroadcone94889 ай бұрын
@@paxsevenfour I do agree with what you say, my storie is that I trusted people too much and it shows more then I'd like. I don't have anything against the students, it not there fault that none really cares about making anything of quality. I worked for under a lead engineer who complained about response size and could not comprehend that client side caching exists and you are not limited to 5mb on a browser. Lets just say I have a hard time trusting people these days. It's not even that they don't know, they don't want to know. Or don't want to look stupid.
@retagainez6 ай бұрын
@@fulconandroadcone9488 Students don't learn the "trade" side of writing code. In my University I had ONE course that maybe mentioned any semblance of code quality as a brief aside in a lecture. That was my software engineering course where we developed a project for stakeholders for an entire semester. One lecture mentioned agile, another unit testing, one talked about assertions, design patterns, and some about Git practices. And even that was in passing and not really remarked upon past that.
@keithrobinson20169 ай бұрын
It's not all "just syntax"
@JKBockstael8 ай бұрын
Given the large number of programming languages that are basically shades of C, it can seem like it's all just syntax. From time to time you'll come across the work of someone who thinks "it's just syntax" and writes C code in Python, it's a good exercise in controlling your murderous urges.
@elliejohnson27867 ай бұрын
That first comment is literally, "I don't think people who are good enough to self-teach themselves skills should be allowed to work in the industry". Actually the most insane positive I've heard on education regulation in my life.
@VudrokWolf2 ай бұрын
Here, 24 years experience self taught software development enthusiasts & professionals, programming languages are not just syntax, these are also mindsets, many of these comes along with philosophies different ways to look at problem solving, nice video thanks.
@CootChick7 ай бұрын
5:17 "A language that does not affect the way you think about programming is not worth learning." -- Alan Perlis. Not all languages are just new syntax ... Some will teach you new concepts. Often, new concepts arise as patterns in existing languages, and later, someone invents a new language that is built around the concept. Many years ago, in a program written in C, I saw structs with function pointers ... basically, Povray Raytracer had object-oriented programming in C (not plus plus). Creating a language that is built around the concept enabled the concept of visibility!
@becker81929 ай бұрын
Good video. But at 6:11, it really bugs me that you can't spell "TOO" as you talk about competence.
@CertifiedDoc9 ай бұрын
I think it's pretty funny that somebody with a CS degree would call out self-taught developers for not being "real engineers", call himself specifically a "software engineer," and conveniently forget that computer science is a different discipline from a software engineering degree.
@fmachine868 ай бұрын
None of these things are something an experienced programmer does, either self taught or traditionally educated. This is a sign of an inexperienced dev.
@halivudestevez22 ай бұрын
everyone does it, until regulated by a lead or supervisor
@SamCrowetheCreativeCrowe9 ай бұрын
Travis! Great to see you here. I just stumbled on this and was delighted by what you presented. Fantastic video!
@TravisMedia9 ай бұрын
Hey Sam! I remember our Saturday morning business chats. Hope you're doing well! And thank you!
@davethinkingsystems8 ай бұрын
This is really refreshing. I finished my degree 35 years ago and everything I now use, I mean everything, has been self taught or learned on the job.
@jemmrich9 ай бұрын
I don't know where these college grad kids hangout these days, discord or maybe still on stack overflow, but in my day we were on IRC asking questions and getting advice or saving work to floppies and sharing through sneakernet... Some things never change, there is always a group of people that try to shame or gate keep to protect their ego, than actually putting positivity into the world. I get it, you can't mentor everyone and you sure can't do other people's job, but it takes two seconds to provide a reference link to related material instead of complaining why they suck at programming. We all started somewhere, even those super cool ego driven ones, but every single developer, programmer or engineer is on their own path and we all have different levels and areas of subject matter expertise. Just like making incremental changes to code, this is a career or hobby where you are constantly learning or improving on some aspect. Don't forget to give back through mentorship or coaching, it can be just as fulfilling as coding itself.
@stevevanniman4433 ай бұрын
Travis, dead on for many of the points you made. IWOMM - my fav from a very junior programmer when trying to tell him his code didn't work when deployed - "but, but, but - It works on my machine".
@mattshuАй бұрын
I chuckled at your thumbnail of the obvious code smells and what I would do differently but then thought of how it might have looked to me before I understood code and became quite anxious. Thanks for the humble reminder!!
@vladimirpain39424 ай бұрын
Two guys who basicaly invented personal computers were self-educated, while people in IBM were "proper engineers". So, yeah, I hope they are enjoying their degree, because I certainly enjoy my job as developer. No degree needed.
@dacowthebol9325Ай бұрын
Thank you for the confidence to mess up in front of others for the sake of learning.🙏🙏