Scams In Software Engineering

Поделиться
HTML-код
  • Опубликовано: 20 ноя 2024

Комментарии • 1,7 тыс.

  • @RenanGreca
    @RenanGreca 7 месяцев назад +4621

    Now that Prime quit his job to focus on making videos, I'll have to quit my job to focus on watching Prime

    • @ij9375
      @ij9375 7 месяцев назад +66

      😂 Greatest comment of the year

    • @janhorak5363
      @janhorak5363 7 месяцев назад +18

      based

    • @ncpeaksean4278
      @ncpeaksean4278 7 месяцев назад +13

      Prime is the goat of Internet

    • @bugzpodder
      @bugzpodder 7 месяцев назад +14

      did he really quit his job?

    • @soundrightmusic
      @soundrightmusic 7 месяцев назад +2

      Makes sense

  • @octavioavila6548
    @octavioavila6548 5 месяцев назад +520

    A lot of great tech entrepreneurs dropped out of Harvard, MIT, Stanford, etc. However, they also got accepted into Hardvard, MIT, Stanford, etc.

    • @tyrabjurman3584
      @tyrabjurman3584 4 месяца назад +62

      Getting accepted is just a matter of being born to the correct parents.

    • @BrainInAVat7
      @BrainInAVat7 4 месяца назад

      @@tyrabjurman3584At Harvard, yes, MIT, no

    • @LPFan33
      @LPFan33 4 месяца назад

      @@tyrabjurman3584 oy vey you posted an antisemitic comment!

    • @EpicGamer-ny1fu
      @EpicGamer-ny1fu 4 месяца назад +20

      It's easy to get accepted into Harvard if your parents are super wealthy.. or you have a good memory.. but neither of those things make for a good developer

    • @uberboat4512
      @uberboat4512 3 месяца назад

      ​@@tyrabjurman3584No. It's definitely more than just rich parents. I had very poor parents and made it to a t5 on full financial aid. Most people at my uni are extremely rich AND very talented AND hardworking (for the most part). It's alot of factors but I would agree that a large part is your life circumstances and luck.

  • @sandiprai1383
    @sandiprai1383 7 месяцев назад +2588

    Prime turns 4 min video into 31 min long. This is almost 10x developer and streamer 😅

    • @xpmon
      @xpmon 7 месяцев назад +77

      He is a 6x developer

    • @mrmadhan8557
      @mrmadhan8557 7 месяцев назад +49

      ÷10 developer

    • @plaintext7288
      @plaintext7288 7 месяцев назад

      ​@@mrmadhan8557faang level 🔥🔥🔥

    • @Kane0123
      @Kane0123 7 месяцев назад +10

      Take a few more off since he loves agile. Confirmed in this video.

    • @web_alchemist_
      @web_alchemist_ 7 месяцев назад

      Average autist activities

  • @me-low-key
    @me-low-key 7 месяцев назад +411

    prime calling frontend glue engineering and moments later getting hit by the same line for backend had me dying 😂

    • @mrmcpherson2722
      @mrmcpherson2722 7 месяцев назад +9

      Hilarious!! 😂

    • @jasqui1512
      @jasqui1512 7 месяцев назад +23

      and lets be honest its the same for both depending on the context

    • @davidchavarriamendez9091
      @davidchavarriamendez9091 3 месяца назад +6

      We all are glue engineers. Even people who make new libraries use a set of libraries to create.

    • @hanvyj2
      @hanvyj2 2 месяца назад

      Even the car analogy - you think engineers at BMW or whatever when they start making a new car go design an engine from scratch? Nah. It's all bolting together shit that's already been designed too.

  • @dezly-macauley
    @dezly-macauley 7 месяцев назад +716

    I was told if I learned Rust, Linux, and Neovim... I would have a moustache like Prime.
    It's been 6 months. STILL no moustache! #SCAMMED🤦🏿‍♂

    • @Excalibaard
      @Excalibaard 7 месяцев назад +192

      You need a split keyboard to create space for the moustache to grow

    • @pyaehtetaung
      @pyaehtetaung 7 месяцев назад +4

      😂

    • @adam7802
      @adam7802 7 месяцев назад +19

      Using the wrong flavour of linux is your problem. Where is your gentoo build?

    • @dezly-macauley
      @dezly-macauley 7 месяцев назад

      @@adam7802 I chose Arch because it's like Gentoo but you get to keep your sanity

    • @dezly-macauley
      @dezly-macauley 7 месяцев назад +27

      @@Excalibaard Arch Linux alone was supposed to turn me into a neckbeard. All I got is a chinstrap. 😔 Scam!!

  • @QuintonDolan
    @QuintonDolan 7 месяцев назад +344

    My experience from doing a CS degree decades ago, core subjects aside, even if you know more than the lecturers about some things, it fills in a lot of holes in your knowledge you don’t know about. Being self taught is great but you don’t know what you don’t know.

    • @JBatesProductions
      @JBatesProductions 7 месяцев назад +51

      Yeah comp sci and eng degrees are what people rail on when they don’t know what’s taught in those degrees. You don’t learn how to code in a degree, you learn fundamental building blocks and how to think about how to engineer projects. How to find efficient ways to solve problems, how to simulate and model, how to create project scope, how to identify key problems and hinge points in which your project could fail. Learning python for instance is a side effect or a subset of how to solve a problem, ie a means to an end. You can learn that shit on your own anyway. Hard to learn how to model a digital low pass filter so you can tackle it with code much easier; though.

    • @vulpixelful
      @vulpixelful 7 месяцев назад +11

      Yep this was my experience working as a self-taught, developer and earning my CS degree while working. I was more effective pretty much immediately.

    • @MrSlowestD16
      @MrSlowestD16 6 месяцев назад +9

      I've worked with one (1) engineer who was self taught and good. Rest of the self taught people I've ran into in industry were interviewees who couldn't tell their head from their asses. I eventually stopped accepting resumes if they didn't have SOMETHING on there in terms of education outside of high school. At big companies these are generally filtered out.

    • @JasonEspin
      @JasonEspin 6 месяцев назад +9

      Too many people without CS degrees entering the industry doing React and not knowing base JavaScript or Computer Science principles.

    • @AZEMBadlen
      @AZEMBadlen 6 месяцев назад +4

      Reason why i didn't get into cs is because most of cs resources are on internet. Microelectronics is gate keeped as hard as it could so I choose that, I can always go and learn ASTs and stuff, but I can't learn how to grow GaN ingot.

  • @TheDoubleBee
    @TheDoubleBee 7 месяцев назад +865

    "Pull request the size of Epst*in's list" - that's a killer line right there

    • @y00t00b3r
      @y00t00b3r 7 месяцев назад +42

      Epst*in's list didn't write itself.

    • @yegorzakharov8514
      @yegorzakharov8514 7 месяцев назад

      ​@@y00t00b3rnot to worry, nowadays most code is written by GPTs anyway 😂

    • @jearsh
      @jearsh 7 месяцев назад +5

      it's a banger of a line...but it's also rookie logic.
      people think that if you have a large app, and you break it into smaller parts, that you end up with the same size app but a million more pieces. maybe if all your code is procedural.

    • @portalteam5832
      @portalteam5832 7 месяцев назад +5

      the "aint nobody reviewing that" that you left out was the best part of it

    • @blarghblargh
      @blarghblargh 7 месяцев назад +5

      ​​@@jearsh if you're not writing procedural, you are doing yourself a disservice.
      Learn OO. Learn FP. Use procedural. Thank me later

  • @williamrgrant
    @williamrgrant 7 месяцев назад +345

    Clean Code was helpful, even instrumental, in my early years of SWE.
    I propose a rule to maintain society's sanity:
    *if you haven't read the book, be skeptical of hot-takes about the book*
    I have read (and re-read) Clean Code, so to follow my own rule, I'll just speak to that one.
    It is extremely simplistic to reduce the entire concept to a simple rule of "4 to 6 lines".
    I just flipped through the section on functions, and I couldn't actually find the "4-6 lines" rule anywhere.
    He does say they should be small as possible, but the main focus is on things like:
    - functions should do one thing
    - one level of abstraction per function
    - use descriptive names
    - limit the number of arguments as much as possible
    - limit unintuitive side effects
    These concepts are generally agreed on, with some nuance at the edges.
    It is sad how often "the baby is thrown out with the bath water" due to this telephone-game of influencers riffing off of lame takes that are super reduced versions of good ideas - to the point of not resembling the original.

    • @LoganS91
      @LoganS91 7 месяцев назад +33

      Clean Code is great. I read it often. It was the book that I read when I decided to make programming not only a job, but my art.

    • @SufianBabri
      @SufianBabri 7 месяцев назад

      Best response to Prime's lame rants about the clean code.
      I'd rather read a call to a function called "checkCourseAvailability" than a complex-looking AND statement inside a "enrollStudentInCourse".
      Since we're reading code more than we are writing, avoiding these seemingly small issues has a huge impact when developers are strangled with deadlines which are neither reasonable nor proposed by the development team.

    • @rojastegulu
      @rojastegulu 7 месяцев назад +15

      thank god, I just bought the book and was so turned off by the video LOL

    • @arkie87
      @arkie87 7 месяцев назад +22

      I think the main lesson is that any coding concept can be taken to the extreme. Dont blindly follow coding concepts. Only implement the rules if they make things better.

    • @SpeedfreakUK
      @SpeedfreakUK 7 месяцев назад +3

      How does he define “one thing”?

  • @ObtecularPk
    @ObtecularPk 7 месяцев назад +566

    Candidate: yeh so this is how you build an engine..
    Interviewer: but can you build an engine in reverse order?

    • @Kane0123
      @Kane0123 7 месяцев назад +74

      Can you build an engine in such an order that you can drive it a little faster after each milestone?

    • @boratsagdiyev522
      @boratsagdiyev522 7 месяцев назад +9

      ​@@Kane0123hold my beer

    • @Vysair
      @Vysair 7 месяцев назад +32

      "How about I interview instead, are you qualified to interview me?"

    • @CatwaiiYT
      @CatwaiiYT 7 месяцев назад +8

      ​@@Vysairgenius right there

    • @JAODc-fo9gf
      @JAODc-fo9gf 3 месяца назад +4

      @@Vysair you smashed both his moral and the chances of getting the job

  • @SerTony16
    @SerTony16 7 месяцев назад +39

    I learned programming like a slow burn, and being able to combine knowledge of so many different technology concepts now is extremely valuable. Knowing Linux, networking, virtualization, security, scripting, THEN programming feels so much better.

    • @Donald-f5w
      @Donald-f5w 5 месяцев назад

      Im on the same path, currently focused on malware since its related to all of them, got good feelings about it

  •  7 месяцев назад +277

    The easiest way to have a consensus is to make everybody angry.

    • @brianviktor8212
      @brianviktor8212 7 месяцев назад +9

      The problem is that there are too many people who prefer a safe route, or simply do not understand. I am working on a space combat/exploration game, and I have a certain vision for it. A LOT of parts have to harmonize for it to work. One friend suggested I scale it down to encompass maybe 10-30 solar systems, which I then populate well with content. This is not my vision. My vision is to have near infinite galaxies with billions of solar systems. To bring out the best of procedural generation I can, to avoid barren wastelands of boringness. I already know the problems, and they are well fixable.
      But players cannot simply move anywhere they want - FTL movement has its limits, which is resources and progression. To reach another galaxy, progression has to be very advanced - meaning you better have a capital ship. And once it is done, players could create galaxy crossing warp-gates.
      Anyway, the point is that I cannot let my vision be compromised by people who either do not understand it or dislike it. I have no choice but to be the decision maker. Any form of Democracy would bring death to my vision. As of now, it has a chance to achieve greatness or total failure... and the safe way leading to mediocrity is likely closer to failure than success.

    • @tisaconundrum
      @tisaconundrum 7 месяцев назад +10

      @@brianviktor8212 I agree to a certain extent with what you're saying, but the biggest problem with it is that you're going to lead yourself into burnout. The thing about compromise is that it gives you the ability to dictate and give parts of your project over to someone else while you can focus on the more important aspects. And I do think that your friend making a suggestion about going with 10 to 30 solar systems is a much better approach than trying to encompass such a broad stroke on something that you haven't even realized yet. What I think I mean to say is that if you've created an app and the app has zero users and you're trying to build the app to be scalable while still having zero users, what use is it to have an app that is scalable with still zero users?

    • @karmatraining
      @karmatraining 7 месяцев назад +2

      I'm only seeing facts

    • @ultimaxkom8728
      @ultimaxkom8728 7 месяцев назад +4

      @@brianviktor8212 Why do you need near infinite galaxies with billions of solar systems? What is the goal here design-wise?

    • @brianviktor8212
      @brianviktor8212 7 месяцев назад

      @@ultimaxkom8728 The idea is to create a near-infinite world. Think of Minecraft - even though the world is big, almost everybody resides within the x,y,z coordinates below 2000. What is important is that you can decide to move anywhere, and there will be something. Sometimes it will be something excelling, which may cause players/guilds (and NPCs) to fight for it.
      The additional galaxies serve as additional end-game content. It also extends this concept beyond the first galaxy. All except the main one will be special - more dangerous enemies, better/different resources, visual/structural differences. The algorithm will create something interesting.
      I already have the algorithms to create the main galaxy, so why not just reuse them?

  • @redman_plus
    @redman_plus 7 месяцев назад +48

    I recently had an idea to have a coding interview structured like so:
    1) Your company has a little dummy project in a currently used stack (maybe multiple projects so the interviewer can choose which one to use in the interview)
    2) In each of a dummy projects you have some amount of small tickets, like ones you evaluate around 1 or 2 in the sprint planning
    3) When the interview starts, the interviewer gives the person the project, lets him onboard for some amount of time (e.g 15 minutes) and then gives the person one of the tasks.
    4) The goal of the interview is to not watch how well a given person studied his binary tree conversion, or how well he knows the nitty-gritty of given technologies, but how he actually WORKS and SOLVES the given task, which is what a technical interview should be doing in a first place.
    If anybody encountered a similar interview structure or (for some miracle) has it in their own company, please let me know, it would be interesting get some feedback on the idea

    • @Omi8528
      @Omi8528 Месяц назад +3

      Won't work. 30 mins too little time to learn a realistic size codebase.

    • @Alex-rt3po
      @Alex-rt3po Месяц назад +1

      So interviewee does free labor?

    • @cushmfg
      @cushmfg Месяц назад +1

      It’s basically how I got hired. We do a project that is take home, build a small web app that does like 2-3 things using whatever tooling you want. Then we did a code review. It was all very realistic tasks and self paced, no leetcode at all. Just questions about knowledge related to the stack we would be using, general software dev knowledge questions. Still here almost 5 years later.

    • @hiepn8062
      @hiepn8062 Месяц назад

      ​@@cushmfgdamn now i want to in too

  • @KRIGBERT
    @KRIGBERT 7 месяцев назад +54

    Most universities in Norway have a mandatory class called Examen Philosophicum where you get an introduction to philosophy - as well as one called Examen Facultatum that introduces you to the scholarly tradition of your faculty, they're half a semester each. They sound like a good alternative to what Prime had to take :p

  • @BadRobotXIII
    @BadRobotXIII 4 месяца назад +44

    Being a car guy who's built cars and a software dev, the term we use for glued together is "Bolt Ons". Anyone can bolt things together but not understanding the impact of what you are bolting nets you poor results.

    • @Mordecrox
      @Mordecrox 5 дней назад

      Reminds me of network certs enabling you to multiply your workforce by teaching a few basic guidelines based on the taught science.
      So field workers mostly know, cut this, untwist that, crimp like this, with no clear figure for how things are done this way.
      Then you plug the power meter, and graphs alone draw the figure, strangled cables, pairs too untwisted, you get the idea.
      Very few care to know why that actually matters (and the few who do, time is short) and think you're being a pedantic diva about your cables and got nothing better to do to inspect zip ties.

  • @blocSonic
    @blocSonic 7 месяцев назад +68

    Context is everything. Hard/fast rules are usually based in some truth but fail to live up to hype because each project and each feature has its own context which will steer experienced engineers somewhere in between the "rule" and some opposite of that rule. However, rules are useful to learn when starting out. You can better "break" the rules once you've had some experience following them.

    • @retagainez
      @retagainez 7 месяцев назад

      I always thought it was contradictory that he rants against basic ideas like trunk-based development, CI / CD, clean code, and pair programming for a guy who preaches that the beginning struggle is an important phase when learning a new topic (which he himself admits that the struggle might be more commonly avoided when you rely on LLMs). I suppose one might overlook this contradiction if you only take his videos with a grain of salt and a pound of entertainment.

    • @pflakon
      @pflakon 7 месяцев назад +2

      this. it is like traffic laws. as a beginner, you have to learn and obey all. as you gain experience, you make adjustments, learn which ones you can take a bit more flexible or ignore in certain situations

  • @OrphicPolytheist
    @OrphicPolytheist 6 месяцев назад +11

    I found that clean code helped me work with larger code bases such as those found in video games. It greatly reduced the time required to find which part of the code to look at to fix a bug, and managing the entire project. As a solo game developer I couldn't possibly manage the entire game by myself without it.

  • @ElvenSpellmaker
    @ElvenSpellmaker 7 месяцев назад +181

    In the UK university is basically _just_ the subject you applied for. I was shocked when I heard American Universities do tons of side subjects that are not related to the main degree.
    Also while it's not needed to have a CS degree I can nearly _always_ tell when someone does and they're usually better / more well rounded.

    • @foreigngodx6
      @foreigngodx6 7 месяцев назад +21

      UK bachelors is 3 years right? The extra 1 year in US is basically general subjects not related to degree.

    • @ElvenSpellmaker
      @ElvenSpellmaker 7 месяцев назад

      @@foreigngodx6 Yeah it's 3 years

    • @sir_no_name1478
      @sir_no_name1478 7 месяцев назад +8

      Same in Germany.
      I found some subjects even here a bit off from what I want to learn and did not understand right away what he wanted to tell us.
      At first I thought he was talking about some kind of pre university degree.

    • @daredemoikari
      @daredemoikari 7 месяцев назад +21

      in the US you get the "extra subjects" in the uni/college, because they don't do it in the high school like in most of Europe.

    • @-Jason-L
      @-Jason-L 7 месяцев назад +15

      ​@daredemoikari ??? History? Foreign language? Umm, yes - we do have it in HS

  • @dmytrooleinichenko9865
    @dmytrooleinichenko9865 7 месяцев назад +11

    I see a lot of blames around clean code... from the people who never read it. They possibly heard some concepts like "function should do one thing" or "function should be less then x lines of code" and take it to the absolute without any context which book provides.

  • @haskellelephant
    @haskellelephant 7 месяцев назад +78

    The agile manifesto was created at a meeting of "lightweight method leaders". One of these so called "light" methods was extreme programming. I feel like a lot of the current agile process schemes like SAFe just cannot be characterized as "lightweight" just by the amount of text required to describe it.

    • @chauchau0825
      @chauchau0825 7 месяцев назад +22

      one of the regrets by the people who cocreated Agile Manifesto is that they didn't trademark the term. At a result, everyone is able to abuse the term to scam people

    • @lyndog
      @lyndog 7 месяцев назад +2

      You mean we shouldn't hire a new Agile Coach to change up all our processes every 3 years?

    • @NoX-512
      @NoX-512 7 месяцев назад +1

      @@chauchau0825More like, SCRUM people, amirite?

    • @defeqel6537
      @defeqel6537 7 месяцев назад +5

      SAFe is an atrocity; should be declared a human rights violation

    • @Veretax
      @Veretax 7 месяцев назад +3

      What is Scrum is kind of a red herring because it is simultaneously a Schrodinger's Paradox of agile it on the surface may sound agile until you go to implement it and then observe it and then when you observe it you realize how it is it both is and is not agile at the same time

  • @headcode
    @headcode 7 месяцев назад +14

    13:10 - One alternative to leet code could be showing an actual code commit and asking the dev to do a code review on it. Include intentional but subtle mistakes to see what the candidate picks up on, and have him back up his comments by explaining why he'd leave that comment or why he'd let something go. Ask why he missed something, if he did.
    To me, having them do a PR live gives way more insight into a developer's mind than having them solve a leetcode problem which rarely ever reflects a real-world scenario. There are a ton of devs who could solve leetcode problems all day but couldn't do simple things like the proverbial "center a div."

  • @laughingvampire7555
    @laughingvampire7555 7 месяцев назад +207

    SCRUM has never been agile, is just recursive waterfall. Agile is about prioritizing people over process, and SCRUM is about prioritizing process over people. You should read the manifest and check how many of the statements do fit SCRUM.

    • @y00t00b3r
      @y00t00b3r 7 месяцев назад +22

      Valuable comment, thanks.
      I am not a fan of either, and I will likely never utter the word "agile" when advocating for anything. I've never liked it, but maybe it had become tainted by the carnival barkers from the very beginning decades ago.
      But "prioritizing people over process" is a phrase I will keep in my quiver. It's great as an ethic, all on it's own.

    • @thewhitefalcon8539
      @thewhitefalcon8539 7 месяцев назад +4

      But then also it's sometimes supposed to just be a starting point to build your own process but also nobody treats it like that

    • @kristianlavigne8270
      @kristianlavigne8270 7 месяцев назад +41

      SCRUM is mostly just micro management. Deliver as much as quickly as possible with no consideration of technical debt 😂

    • @defeqel6537
      @defeqel6537 7 месяцев назад +13

      Scrum is also just a process framework, that should be customized for the team, but it's been turned into law, probably because Scrum Master go through training nowadays, but don't actually learn to be flexible, just to "follow the process"; very "middle-managemently"

    • @therealsunnyk
      @therealsunnyk 7 месяцев назад +17

      I don't think any of you understand what Scrum actually is. Scrum is a negotiation we lost before we started. A manifesto is nice and all but you can't write software through a manifesto. You need a process, and developers created one, and it involved stakeholders who were not developers, and the stakeholders immediately carved up their piece of the pie and then some, and we the devs were idiotic and took every single compromise. After being cucked by every other discipline we go back and blame the only bit of organising we as a field have actually done in this domain.

  • @POLlyy23
    @POLlyy23 7 месяцев назад +51

    Listening to RUclips programmingfluencers is about as helpful towards becoming a programmer as listening to RUclips fitnessfluencers is about becoming fitter.

    • @sadiqshaikh8715
      @sadiqshaikh8715 4 месяца назад +1

      fr, but what do you think is the best way to learn programming?

    • @patrikkarlsson9523
      @patrikkarlsson9523 4 месяца назад +8

      Lifting is the best way to get stronger. Probably the same goes for programming.
      But what do I know, I'm not especially strong or smart.

    • @patrikkarlsson9523
      @patrikkarlsson9523 4 месяца назад

      ​@@sadiqshaikh8715 i just felt like every day some new fittnessfluenser says a new method of training, eating, sleeping. Is the fastest and best way to get fit only to turn on it when the trend dies. Same seems to go for programming in my opinion.

    • @em00k
      @em00k 3 месяца назад +2

      You’re not listening to learn how to code but discuss the topic of coding. It’s theory for the practical.

    • @patrikkarlsson9523
      @patrikkarlsson9523 3 месяца назад

      ​@@em00kHow many of us have spent hours watching fitness channels for similar reasons and are still unfit?

  • @ANONAAAAAAAAA
    @ANONAAAAAAAAA 7 месяцев назад +135

    I personally value the experience of writing C compiler 100x more than random boot camps or software engineering degrees.

    • @pelayovalero1312
      @pelayovalero1312 7 месяцев назад +35

      My software engineering degree made me write a C compiler, and that was one of the best projects I ever did there. I don't know if it's common for other students in other degrees.

    • @cit0110
      @cit0110 7 месяцев назад +12

      @@pelayovalero1312i think compiler courses should be required in CS. I'm in my senior year it it's changing me.. this late. i wish i dove in earlier but honestly idk if i could do it without the structure and guidance of my TA and professor.

    • @meltygear5955
      @meltygear5955 7 месяцев назад +5

      "btw here's my boot dot dev link" - prime

    • @thesaintseiya
      @thesaintseiya 7 месяцев назад +11

      ​@@pelayovalero1312 I'm so jealous when I read people learned to do shit like this. I don't even know what was the point of my course besides learning about some obscure outdated tech that won't help me irl at all. was this a bachelors btw?

    • @blarghblargh
      @blarghblargh 7 месяцев назад +1

      ​@@cit0110I didn't go to zee college, but I was under the impression the better programs made people pick implementing a bare metal OS or building a compiler

  • @cariyaputta
    @cariyaputta 7 месяцев назад +55

    "Money made including time being laid off average out to be equal working at McDonald" so true lol

    • @vulpixelful
      @vulpixelful 7 месяцев назад +6

      This is really not true. Most software engineers are paid so that they could actually save regularly for layoffs, get decent severance packages for being laid off, and have a skill where they can be confident that they'll eventually get a high-paying job when they find another job. Most people who get laid off outside of our industry can't say the same.

    • @MrSlowestD16
      @MrSlowestD16 6 месяцев назад +3

      @@vulpixelful If you're getting laid off a lot, IDK what to say. It ISN'T that common. The fact that the video creator and this guy are saying it's happening all the time is a really interesting claim. Most engineers I know have been laid off MAYBE once....? I've never been laid off. And most others I know haven't ever been. It isn't common at all.
      But yes, you should be able to save, it is DEFINITELY not minimum wage income, I have nice cars & a solid amount of money & equity, people saying they get laid off all the time is absolutely nuts and I think it speaks more to the types of jobs people are taking than anything else.

    • @vulpixelful
      @vulpixelful 6 месяцев назад

      @@MrSlowestD16 Who says I get laid off a lot? All I said was an engineer's salary allows them to save _on a regular basis_ (monthly, biweekly, whatever) so they would be more prepared for a layoff

    • @MrSlowestD16
      @MrSlowestD16 6 месяцев назад +1

      @@vulpixelful I meant "you" in a general context. I agree with what you're saying, I'm just adding onto that that the creator AND prime AND the OP all agreed with the notion of getting laid off a lot, and in my experience they're pretty rare, so if one finds themselves getting laid off a lot IMO they should look inward, not at the industry.

  • @laughingvampire7555
    @laughingvampire7555 7 месяцев назад +68

    Agile as it was defined originally by the people who signed the manifesto is 100% great, the gigantic problem is that managers co-opted the term to mean everything pointy haired bosses were doing in waterfall.

    • @krumbergify
      @krumbergify 7 месяцев назад +4

      Yes! Some of them even hesitate to continue using the term “Agile” because it has been so misshandled.

    • @thewhitefalcon8539
      @thewhitefalcon8539 7 месяцев назад +8

      No this happens with everything. It always sounds great and then you try to transfer it into the real world and it's less great. Always.

    • @dv_xl
      @dv_xl 7 месяцев назад +4

      ​@@thewhitefalcon8539I think by definition aglie is supposed to adjust to the real world by adjusting to the team using it.

    • @thewhitefalcon8539
      @thewhitefalcon8539 7 месяцев назад +4

      @@dv_xl which conveniently means the original manifesto can never be blamed for anything

    • @thewhitefalcon8539
      @thewhitefalcon8539 7 месяцев назад

      ​@@dv_xl everything is supposed to adjust to the real world too. I've never heard of something that wasn't.

  • @deenaxic9134
    @deenaxic9134 5 месяцев назад +56

    Saying Computer Science degrees is a scam, is so funny. Computers are more than just writing a javascript file.

    • @maxmustermann5590
      @maxmustermann5590 4 месяца назад +22

      This sentiment comes from the american educational system. People go hundrets of thousands in debt to get a confirmation of skill, thats unreliable at best. I don't think many people think getting university education and sound fundamentals at university is something bad at all. Haven't heard this sentiment here in germany, because it's free and actually about education and not about paying off a 'diploma and getting to know rich folk' fee.

    • @djunidvanmourik7134
      @djunidvanmourik7134 4 месяца назад +9

      Yes you're right. But american education is very flawed. I live in the Netherlands and with our bachelors you immediately go into the subject matter of your major

    • @kylekinnear8878
      @kylekinnear8878 3 месяца назад +4

      I used to feel like I was a little scammed doing CS, but now Im thinking the industry is generally underqualified and need less reliance on magic.

    • @valentinrafael9201
      @valentinrafael9201 3 месяца назад +3

      It’s the US lens. JavaScript will get you a job quick, while going in debt will get you homeless quickly.

    • @QuangPham-gh5un
      @QuangPham-gh5un Месяц назад

      What they actually meant is some College degree from certain institutions is a scam. My College program actually taught us a lot on business analyst, requirements, market research and project management, it's actually more like a business degree with some programming sprinkled on.

  • @JimmayVV
    @JimmayVV 7 месяцев назад +19

    We've had the debate about take-home tests vs whiteboards and if the take-home is designed to be done within 2 hours or less, how is that meaningfully different than asking someone to take an entire day off from work to do a whiteboard in front of their faces? A 2 hour take-home to then open yourself up for a more meaningful collaborative conversation about how to iterate on it from there I think is a perfect way to introduce a candidate to a team without adding the pressure of someone watching you reason about a problem in real time.

    • @binayakthakur5122
      @binayakthakur5122 7 месяцев назад +3

      For leetcode you literally have to prepare for months , no matter how busy you are they don't care if your college is over and you don't have bunch of free time with you ... While take home you can give literally 10 min each and get done with it

    • @Salantor
      @Salantor 7 месяцев назад +5

      Companies out there will ask people with families and full-time job to provide a portfolio links and yet we are still talking about whether or not spending a few hours on a task is too much or not.

    • @dmitrygronsky2832
      @dmitrygronsky2832 7 месяцев назад +1

      Most of my "2-hour-take-homes, no reasons to worry brother" turned out to be 10+ h assignments

    • @dmitrygronsky2832
      @dmitrygronsky2832 7 месяцев назад

      And that's the way it should be, takeaway assignments trade psychological onsite pressure for offline complexity, you just cannot give an offline leetcode-like problem

    • @felixmoore6781
      @felixmoore6781 7 месяцев назад +1

      I can't decipher your run-ons, so not really sure what you're saying, but you can easily cheat on 2-hour take-home challenges by not having a life and spending 20 hours on solving one.

  • @SidewaysCytlan
    @SidewaysCytlan 7 месяцев назад +11

    My favourite interview method: I tell the candidate "Bring a personal project that you've made yourself and that you're proud of. It doesn't matter what it is, it doesn't matter what language or what technologies you used. Bring something that you've made and that you're proud of, and we'll discuss your code." I don't care if they can or can't invert a binary tree on a whiteboard. Show me your code! It tells me far more about the candidate than any brain teaser question ever could (and why I insist on being a part of the interviewing process; I have yet to see HR hiring a good candidate on their own. They always hire the person with the flashiest resume, which is always a terrible candidate.)
    What if the candidate brings a project that isn't their own? Then they'll have a difficult time answering high-level questions about planning, workflows, problems, design decisions and further improvements. If I ask "Tell me about a problem you had when making this, and how you solved it", and they reply "I didn't have any problems", then that's a red flag.

    • @MrSlowestD16
      @MrSlowestD16 6 месяцев назад

      "I have yet to see HR hiring a good candidate on their own."
      - I have yet to see HR hiring ANYBODY on their own. What are you talking about? I've never heard of that - ever - hiring managers are always involved in the process, wtf....
      There's tons of problems with bringing your own project.
      Best way to interview people is to ask them questions about what they'll be working on. Present them with real problems that you or a co-worker have run into, and discuss it with them, have them write some code to solve it, or do part of it, etc. Whether they can invert a binary tree is useless, true, but discussing a project they've worked on is only appropriate for a manager interview, it's not appropriate for proper technical interviews.

  • @MementoMoriMementoVivere881
    @MementoMoriMementoVivere881 6 месяцев назад +5

    The amount of combined sarcasm, inside dev jokes and twitch humor truly drained my brain power. But I loved it.

  • @jayjeckel
    @jayjeckel 7 месяцев назад +3

    My cousin wanted to skip going to state college, instead starting his own business, and he tried that "Zuckerburg dropped out of Harvard" bit on his mom. She told him, fine, you can forget college and start your business as soon as you've also dropped out of Harvard. I laughed so hard.

  • @ivanjermakov
    @ivanjermakov 7 месяцев назад +5

    20:50 What I love about Neovim is that personal setup and plugin development is literally the same thing. You can decouple your config and make it a plugin and in reverse. It's especially powerful when you can peek how plugins did the thing you try to configure.

  • @loganmedia1142
    @loganmedia1142 6 месяцев назад +2

    Those methodologies that encouraged toxic open plan environments have a lot to answer for. In the old days we seldom had our own offices, but we at least had a semi-private area in which we each worked. Now there are no barriers and you sit so close together that you're almost on each other's laps.

  • @ivanjermakov
    @ivanjermakov 7 месяцев назад +14

    12:40 Interview alternative to leetcode is: few language knowledge questions (e.g. Java collections hierarchy) + system design (e.g. go through your thoughts on designing delivery app ) + code reviewing (give some project's PR and see what interviewee focuses on).

    • @Kane0123
      @Kane0123 7 месяцев назад +4

      Code review… that’s an interesting idea.

    • @drakey6617
      @drakey6617 7 месяцев назад +7

      Refactoring task is also a good one. Or giving the interviewee absolutely horrendous code and letting them explain it to you

    • @SkaiDragon
      @SkaiDragon 6 месяцев назад +1

      I agree, even take-home projects are better than leetcode. Why? It usually takes 6 months of practice to get good enough to be able to get a job. This means that you have to spend at least 1 hour each day for 6 months vs doing a 10h project.
      It is much better to ask relevant questions about programming languages/technologies and reviewing a PR is a good way to filter out coding monkeys who memorize leetcode problems.

  • @MorningNapalm
    @MorningNapalm 7 месяцев назад +4

    Agile is a great 5-sentence idea turned into several books. The reality of agile turns agile into the thing that agile wanted to fix.

  • @Altrue
    @Altrue 7 месяцев назад +39

    I feel like we are being scammed by Prime here. "I have mixed feelings about leet code" => No, for the longest time you were fully FOR this "secret handshake that will get you employed".

    • @SandraWantsCoke
      @SandraWantsCoke 7 месяцев назад +12

      He always said he did not like it, but it's the way it is and if you want a job, then you need to do it. The necessary evil he sometimes called it.

    • @SlyElliot
      @SlyElliot 7 месяцев назад +2

      @@SandraWantsCokebro has a clip where he writes a quick sort just to flex on chat

    • @DanDelarge
      @DanDelarge 7 месяцев назад +1

      Making a quick sort is a flex?

    • @SlyElliot
      @SlyElliot 7 месяцев назад

      @@DanDelarge strawman

  • @stormbread5096
    @stormbread5096 3 месяца назад +2

    7:43 I completely agree!! At my university, I had to take many writing classes where I didn’t learn anything about computer science yet we didn’t have a web development course. They require us to take classes unrelated to computer science and math, yet they force us to learn web development on our own.

  • @ercntreras
    @ercntreras 7 месяцев назад +14

    Agree 100% with you about DSA, kids never understand that 'cause they don't know how valuable it is but one day or another they will be in need to learn it if they want to grow and make the next step

  • @TheGingrBeardMan
    @TheGingrBeardMan 6 месяцев назад +1

    I had many interviews with candidates over the phone or video chat where it's obvious they browsing Google, SO or using AI to answer the questions. But my favorite interview, is one candidate who actually had the confidence, or maybe ignorance, to tell me "hold on, let me google that real quick." That was a short interview but I'll never forget it.

  • @yaminnather521
    @yaminnather521 7 месяцев назад +37

    Tbh I feel people just think its cool to dunk on the books on Clean Architectures and SOLID(I read through only these two books). If you use the patterns to solve the problems when you need the benefits of it, it'll make more sense than following it word for word for word all the time every time and then complain that you have to type more or whatever.
    Yeah functions being only 4 lines is a dumb take lol, buttt there's still some good advice in them.

    • @TehKarmalizer
      @TehKarmalizer 7 месяцев назад +7

      I would take 4 line functions over 4k line functions.

    • @climatechangedoesntbargain9140
      @climatechangedoesntbargain9140 7 месяцев назад +6

      Small functions aren't that bad as well IF the functions are at the same abstraction level such that you don't have to switch to the individual function to understand one function

    • @defeqel6537
      @defeqel6537 7 месяцев назад +3

      It's another case where you need to actually know and understand the principles so you know when to apply them and when not to

    • @Salantor
      @Salantor 7 месяцев назад +2

      The industry overhyped both books and way too many people were parroting them without deeper understanding or asking themselves if using them is the right thing to do, so now we are one the opposing end of the pendulum swing.

    • @Rob43955
      @Rob43955 7 месяцев назад +8

      I don’t know why people focus on that the lines of code guideline the more important advice was functions should do one thing. It’s like a single sentence some disagree with and then they dismiss the whole book wtf.
      To be honest I find this anti-clean code and SOLID trend bizarre, why the hell would you throw away the best practise lessons learned with basically no justification.

  • @Trezker
    @Trezker 7 месяцев назад +3

    Frontend? I remember s and table layouts. And we couldn't convince customers that "the web is not made to look they way you want, the tools don't exist, we have to cobble this together with sticks and ducttape". Or use flash...

  • @mattymattffs
    @mattymattffs 7 месяцев назад +7

    Trade schools for programming exist... We hire from them a lot. It's usually a technical college, but it doesn't go low level. It's surface level, but it's good

  • @RafaMakowski-lg7jn
    @RafaMakowski-lg7jn 7 месяцев назад +4

    Maybe I misunderstood Prime, but I don't think that LoB means that you put all code into single few-hundred lines long method like Prime seems to understand it. You still divide code into smaller methods for readability but put them in the same file so that everything needed is local to the core method. Extracting and giving a name to a meaningful portion of a long method eases reading and understanding a lot.

  • @steamer2k319
    @steamer2k319 7 месяцев назад +39

    I have a phrase for the opposite of "locality of behavior". When you have to jump back and forth to try and understand what's going on, it's because "everything is defined somewhere else".
    The best reason to break some statements into their own function is because the same functionality is needed from multiple call sites. If you're just doing it for stylistic purposes, and not to avoid repeating yourself, yer probably doing it wrong.
    Use early returns / guard conditions to avoid deep nesting and then just let it be a couple hundred lines if that's what's needed.

    • @-Jason-L
      @-Jason-L 7 месяцев назад +12

      Seperate intent from implementation details. Nothing is worse than wading through a few hundred lines of code to reverse engineer the devs intent.

    • @lyndog
      @lyndog 7 месяцев назад +3

      100% this. That does mean some methods end up being a handful of lines long but the benefit is that the larger function is easy to read and understand. It's just pushing things down levels of abstraction so it's easier to reason about what is happening at that point in the code. It's analogous to saying "I drove to work", rather than describing in excruciating detail your whole journey to work. Sure you can get carried away with it, but it's just a case of using your better judgement and being pragmatic rather than dogmatic.

    • @steamer2k319
      @steamer2k319 7 месяцев назад

      @@-Jason-L
      Use long, descriptive function names or doc-comments or commit notes for intent. If the dev couldn't communicate via that or variable names or test logic then functions for their own sake isn't going to help either.
      I usually care a lot more about what the code actually does than what the dev was hoping it would do, though. If the non-technical stake-holders (the ones who don't read code) can't tell you what the software is supposed to do, that's a much bigger problem than any code style issues.

    • @-Jason-L
      @-Jason-L 7 месяцев назад +2

      @steamer2k319 that doesn't explain the actual logic. You have to reverse engineer the "algorithm" from the code - after 30 years in the profession, that is what i consider bad code.

    • @steamer2k319
      @steamer2k319 7 месяцев назад

      @@andyk2181
      Yeah. I've learned, especially when debugging/troubleshooting, not to trust a function to do what it says in the tin. However, if the definition is inlined, a lot of the time you can see the bug just by a quick reading of the code in e.g., the GitLab web UI without even having to fetch a local clone.

  • @williamrgrant
    @williamrgrant 7 месяцев назад +3

    Whenever something goes from 'idea' to 'massive industry around training and certifying people to *correctly* implement that idea'.
    You're screwed.

  • @oscarhagman8247
    @oscarhagman8247 7 месяцев назад +7

    we actually have tradeschool for software development in my country, that's the path I took. 2 years of hands on development, it was great

  • @Ne0_Vect0r
    @Ne0_Vect0r 20 дней назад +1

    When you gave that shout-out to LSD while studying you just gained my loyalty my friend

  • @Readraid_
    @Readraid_ 7 месяцев назад +19

    4 minute video into 32 minutes reaction is a certified prime aging moment

  • @disguysn
    @disguysn 7 месяцев назад +4

    I've actually talked to Uncle Bob at a Ruby conference years ago. I believe he got the 4-6 line number from working in Ruby on Rails. Usually those functions are very short and Ruby devs would get bent out of shape if you wrote longer controller functions.

    • @vulpixelful
      @vulpixelful 7 месяцев назад +2

      And we probably got that from Erlang

    • @disguysn
      @disguysn 7 месяцев назад +1

      @@vulpixelful yeah it's likely the Ruby community got it from somewhere else.

  • @HeraldoS2
    @HeraldoS2 7 месяцев назад +3

    😅 Good to know I am not the only one calling for locality of behavior... One of the first open source project that I have read, lit. has 3 functions per file each always calling functions on different file all across +60 files and it is just an endless 🍝.

  • @garloin
    @garloin 3 месяца назад

    Thanks Primeagen, here a guy from Bilbao. This is more fun than watching Netflix by the way. Thank you very much!!

  • @ceigey-au
    @ceigey-au 7 месяцев назад +3

    In Australia we don't do the "year of general education" that US universities do - though there is plenty of space for that in your electives generally, so you have some freedom to learn interesting things that aren't 100% relevant to your major or minor.
    That said, I think the international study market is particularly interesting, because post-graduate degrees (like masters) are very popular, largely because they're a little more concise, but also because they open up international job opportunities too.
    I do agree with the sentiment that trade/tech schools might be a good fit for IT (and I think that education should still come with the same level of respect, employability and count towards migration for foreign workers). But that's something for society as a whole to sort out eventually.

  • @cajunguy6502
    @cajunguy6502 7 месяцев назад +1

    I was looking at a local junior college with my son, they had all kinds of great tech centric majors. The networking degree has Net+ and CCNA built into the program. The certs are worth more than the Associates degree that they come with! This is a good sweet spot, I think. Learn a vital skill without completing sacrificing the educational value of a core compliant college.

  • @Seven-ez5ux
    @Seven-ez5ux 7 месяцев назад +108

    Software Engineering is the biggest scam

  • @ccgamedes33
    @ccgamedes33 7 месяцев назад +1

    The problem with unqualified (or the requirement to achieve) "locality of behavior" is "reference [un]transparency". That is the unsolicited state changes or "the pulling of the rung from underneath".

  • @fabianmuhlberger6153
    @fabianmuhlberger6153 7 месяцев назад +12

    I always understood CC as more of a guideline than a strict rule. And it's the cause for its controversy. It is generally solid advice but put to the extreme and making it a strict rule just hinders progress. And when organization is everything, there is a huge overhead on being creative and productive. I saw 1000 line 4 deep nested switch cases in production code from a big company, and we can agree that this is just garbage. It's all about finding the balance, and never about just following one advice. Read, learn and improve, but don't get stuck on advice. Best

  • @Al_L.
    @Al_L. 2 месяца назад +1

    "6 months apprenticeship, no way" in Europe it is MANDATORY to do so if you want your Bs/Associate's

  • @khatdubell
    @khatdubell 7 месяцев назад +12

    LoB is the polar opposite of clean code.
    You're wrong.
    They go together like a horse and carriage.

  • @nitinmadan4009
    @nitinmadan4009 3 месяца назад

    For the life of me, I could never imagine a tech dude live stream on YT can be so funny and insightful at the same time.
    Way to go!!

  • @dlbike76
    @dlbike76 7 месяцев назад +18

    The VIM discussion is reminiscent of the old VIM vs EMACS wars

  • @defipunk
    @defipunk 5 месяцев назад +1

    Regarding interviewing and hiring: people used to work for just one company for their life. If companies didn't force people to keep hopping for career advancement or salary, ANY interviewing process would be fine and acceptable, because it's a once or twice thing in your life.

  • @georgehelyar
    @georgehelyar 7 месяцев назад +10

    Prime: The middle ground is where the worst ideas are from
    Also Prime: we should have something in the middle of bootcamps and degrees.
    Those unspecialised years at the start of US college do seem like a waste of time though. Most places don't do that.

  • @tobix4374
    @tobix4374 6 месяцев назад +2

    The 4-6 lines of code per function could be a remnant of old NASA coding guidelines for space-/aircrafts. They suggested that a function should be printable on a A4 sheet of paper with some specific fontsize.

  • @kuhluhOG
    @kuhluhOG 7 месяцев назад +14

    9:03 As a non-American, it's interesting to see what you do at college.
    In Germany we get e.g. our CS degrees at university or at Fachhochschulen (some translators say you can translate that as "technical college"). But we only do stuff for our degree there except if we voluntarily decide to do something else additionally.
    What Prime is talking about here is something we would do at the schools before that, e.g. the Gymnasium (one the schools you can go to after elementary school until 12th or 13th grade (we don't reset the counter)).
    13:40 I like apprenticeships, also for programmer (notice, not Computer Scientists). But it's not a 6 month thing or something along these lines, it's a standardized multi-year apprenticeship (in case of programmers it's 3 years; yes, the same system exists for all kinds of jobs) where companies and job schools work together (with you working for some time at a company and studying for some time at school) which you do when you are fresh out of school (normally). You also get a certificate afterwards (so you can apply at different companies) and normally also get hired by the company you made your apprenticeship at. And you don't do some specific technology in that time, but more generalized.

    • @Alex-lu4po
      @Alex-lu4po 7 месяцев назад +1

      I wanted to comment that as well

    • @natescode
      @natescode 7 месяцев назад +1

      American, that's what I did. 2 year technically college ONLY programming classes. No debt either. That was 10 years ago now

  • @deanschulze3129
    @deanschulze3129 7 месяцев назад +39

    I first heard 4-6 lines of code in my first programming class using Pascal over 40 years ago. Uncle Bob didn't create that.

    • @ArturdeSousaRocha
      @ArturdeSousaRocha 7 месяцев назад +2

      That's the idea of locality in some way. I think clean code just went too hard on it.

    • @retagainez
      @retagainez 7 месяцев назад

      It's just a meme at this point. I dont think anyone claims he made that kind of a conclusion besides people that are just trying to purposefully bait people.

    • @sk-sm9sh
      @sk-sm9sh 6 месяцев назад +2

      @@ArturdeSousaRocha book has like hundreds of little advice that are pretty good. And yet people somehow only bother to talk about this one point about number of lines in function that so obviously depends so much on language and project that is being built and obviously if you have function that case a switch case in it with 100 switch clauses then obviously function can't be 4 lines long. Much better advice that can be found in the same book about functions is that functions should maintain single level of abstraction and that function's name should describe what it does. If you can write function that is 200 lines long and it maintains single level of abstraction and if you gave it name that perfectly summarize what it does then you are still following most of advice of the book.

  • @amanullahmenjli
    @amanullahmenjli 7 месяцев назад +1

    Me seeing the video constantly in RUclips every single day: I'll just watch it later "Add to Watch Later"
    The Prime made a reaction video: Stops everything to watch the video. It's the Prime Time!!!!

  • @Youtubeaccount-jw9eu
    @Youtubeaccount-jw9eu 7 месяцев назад +10

    There's a trade school called 42 you might like to look into. It starts of with a 1 month boot camp, but the boot camp is just a selection process before you can truly join the school. The core curriculum lasts from 1 to 2 years and you can then stay longer to learn about more specific subjects

    • @Youtubeaccount-jw9eu
      @Youtubeaccount-jw9eu 7 месяцев назад

      The school has no teachers and forces the students to learn by building projects and communicating with other students

    • @johnsitarski4158
      @johnsitarski4158 7 месяцев назад +1

      I have a friend who is in it now, and another friend who has gone in to help mentor the people there. I can see the progression in my friend and would say it's much more fast paced than a university CS degree.
      I'm more worried about them trying to find a job after especially I live in the city where 42 runs and know the job market pretty well now, unless they have connections to some small to med level companies it will still be hard to land your first gig without a classical university degree.

    • @ruysg
      @ruysg 7 месяцев назад +2

      I did their "pool" or selection process. Wouldn't recommend it for anybody. Their teaching style is based on fear and leaving the students with vague and imprecise requirements, and then rejecting your assignments because you used stuff that's "not allowed". Then you ask them what's allowed, and they say that you should figure it out yourself. It was not an emotionally healthy experience. I still fail to see how throwing a bunch of beginners with no orientation into coding, give them no theoretical or partial guidance and then not let them use printf is some how a good teaching methods

    • @Youtubeaccount-jw9eu
      @Youtubeaccount-jw9eu 7 месяцев назад

      I'm sorry it felt that way to you. The "pool" is complicated and the students from the years before are not allowed to help you during it as it would be unfair if you were helped and other candidates were not.
      As for using disallowed functions like printf, I think the goal is to make most students start off at a similar point since people that try to prepare for the "pool" will have learned about printf and not about syscalls like write. (The goal being to not give too much of an edge to people that have the time to prepare, for example if you have children you would not be able to prepare as much)
      It's also about learning about abstraction level since you start your education using C with only syscalls and then proceed to use higher level functions once you have a better understanding of the basics.
      I have do disagree with you when you say it is not indicated what functions you are allowed to use as they are clearly indicated in each exercises.
      The goal of throwing the students at problems without any ressources apart from a few videos is to see how good they are at finding information with nothing more than the internet and they fellow students. This is a skill that is necessary if you ever want to be able to create a project without the help of a tutorial or a mentor
      (English is not my first language, I hope this wasn't too hard to read)

    • @Youtubeaccount-jw9eu
      @Youtubeaccount-jw9eu 7 месяцев назад

      ​@johnsitarski4158
      To my knowledge all 42 schools are free for the students and sponsored by companies that invest money in the school to make students want to work for them, the sponsors may be a good start for your friend to look for a job if one of them works on projects that interest them

  • @markgraybill737
    @markgraybill737 4 месяца назад +1

    Uncle Bob's work has got me to think, but by the time he published it I had a couple of decades of learning the hard way. Pragmatics usually rules and hard rules drool.

  • @yahi06
    @yahi06 7 месяцев назад +4

    I don't understand design pattern, and I have to protect Jr from understanding it!

  • @pockerface9505
    @pockerface9505 4 месяца назад +1

    About the college thing, I think one of the biggest problems is finding good teachers. Usually CS teachers are good teachers, not good software engineers, so they don't know how the industry actually work now.

  • @mmmhorsesteaks
    @mmmhorsesteaks 7 месяцев назад +6

    Just write good code. Doesn't have to be complicated.

  • @JChen7
    @JChen7 7 месяцев назад +2

    People conflate bad execution with the idea being bad....

  • @TheFoyer13
    @TheFoyer13 7 месяцев назад +3

    As a gear head and a software engineer, you couldn't be more right about that analogy, nailed it.

  • @monkemode8128
    @monkemode8128 2 месяца назад +1

    6:25 Imagine being part of a team where everyone is bilingual in Spansh and English and its not expected to change (say, you work in a team of translators). You're trying to figure out what language you should for your internal documention. You can choose Spanish or you can choose English, both will ~work~, however, a compromise where you alternate between Spanish and English in the same document is a horrible solution.

  • @herrquh
    @herrquh 7 месяцев назад +9

    On the point about small functions: The 4-6 lines I think is arbitrary but it should be something like the function name describes what it does without seeing the entire implementation, and if the function is small enough then it's likely that the function name doesn't lie. So instead of reading 6 lines of code to know what is done you just read the function name and understand what it does. It's an aesthetic/readability choice more than anything.
    I don't think it conflicts with the LoB principle as I understand it from the HTMX explanation. You are still calling the functions locally. There isn't any invisible system assigning behavior. You explicitly call the behavior. It's visible locally, even if the full implementation isn't.
    Compare that to the HTMX example of jQuery where you have a section of HTML with no visible calls to anything, and a locally invisible system assigning behavior to it. You can't know that "button" calls "click" from just looking at the button declaration. The "better" from HTMX is a function call located on the button.
    In fact I think the HTMX explanation in their point "Surfacing Behaviour vs. Inlining Implementation" points to this. I might misunderstand it though. It's got Latin in there and I can barely understand English.

  • @chrisorg170
    @chrisorg170 6 месяцев назад +2

    I’m technically a “scrum master” but the key is to trim all of the corporate bullshit part of the methodology, fight for your teams development time & meet on blockers and design. Or you may as well make the mantra of Agile (always changing and never deliver)

  • @eXit-ubermensch
    @eXit-ubermensch 7 месяцев назад +9

    Clean Code was an amazing book that helped me tremendously

  • @RA-xx4mz
    @RA-xx4mz 7 месяцев назад +3

    My dad was one of the best mechanics out there. Top tier mechanic at a top tier rolls Royce/jag shop in Beverly Hills.
    Dude has built engines. It was also taught how to do it in the 80’s at his trade school.

  • @maorhamami8106
    @maorhamami8106 Месяц назад

    actually the "few lines per function" is epic if used right:
    1. its easy to cover properly with tests
    2. you can reuse that method
    3. when reading small function that call small functions (with good names) you can understand the flow with ease instead of following whats going on.

  • @meltygear5955
    @meltygear5955 7 месяцев назад +4

    Blows my mind how software engineers will soon discover how apprenticeship was always the solution, and they were merely blinded by their own arrogance to admit it.

    • @granitetie
      @granitetie 7 месяцев назад

      Hard disagree here. I’ve worked with engineers in high school who were more productive after one week than engineers with multiple years of experience. The difference is their ability to break problems down and that’s a something I want to figure out before I hire and invest time in them.

  • @thecollector6746
    @thecollector6746 3 месяца назад +1

    Scams in Software Engineering : Every single Boot Camp and nearly every "Coding Influencer" on RUclips.

  • @SuubUWU
    @SuubUWU 7 месяцев назад +5

    The issue with "Probably shit company and you probably didn't want to work there anywhere" is that the alternative is flipping burgers for minimum wage or breaking a back for $17 in a warehouse.
    I'd rather work at that shit company for a year just to get some experience under my belt and I know there are many of us where this is the reality. We don't have parents to fall back on, rent and insurance is due; we need a job just to survive and look for another job.

    • @rusi6219
      @rusi6219 7 месяцев назад +1

      Insurance is pure extortion

    • @jeffwells641
      @jeffwells641 7 месяцев назад +2

      @@rusi6219 It's not pure extortion.
      It's only mostly extortion.

    • @maciejglinski6564
      @maciejglinski6564 7 месяцев назад

      @@rusi6219 get ready to hear about rent

    • @rusi6219
      @rusi6219 7 месяцев назад

      @@maciejglinski6564 at least with rent you enter a contract and it isn't imposed upon you

  • @ClaudioBrogliato
    @ClaudioBrogliato 7 месяцев назад

    The reverse normal distribution feels so true. It reminds me how I feel every time a scrum master (or a facilitator) gets in a heated discussion trying to find a compromise and move on: that idea is BS.

  • @LucasCordeiroSimao
    @LucasCordeiroSimao 7 месяцев назад +8

    Came faster than Prime configuring another Vim macro

  • @nox5282
    @nox5282 6 месяцев назад +1

    I started programming in high school, been working in the industry 5 years I’m over 30. It’s ridiculous but I lost my passion but also ability to actually program. Seems day to day work has degraded my skills.
    I’m now rediscovering the joy, by starting to program without expectation.
    Take a problem / goal
    Break it down as much as you can
    Google things you cannot figure out on the top of your head.
    Build, build and build some more.
    Yes I know design patterns, database management, scrum, tdd, devops, etc, yet I freaken forgot how to just program

  • @thought-provoker
    @thought-provoker 7 месяцев назад +5

    _"Agile is communism."_
    True on so many levels. Even to the point that back in 2013, I was in a Scrum training and people brought up the concept of identical paychecks for everyone.
    I was baffled: "So someone with 20 years of experience should get the same as a college fresher?" - "Yes, _because in the Complex you don't know who contributed how much, and a team succeeds as a whole."_
    But some are more equal: _"The Scrum Master should always get more salary than the highest-paid developer."_
    If your BS detectors aren't tingling by now, you may need to see a psychiatrist.
    There's so much nonsense going on in the Agile space, and it's really hard for an outsider to see whether you're getting taken for a ride.
    Disclaimer: I spent over 10 years as an Agile Coach/Consultant.

  • @Mkoivuka
    @Mkoivuka 3 месяца назад +1

    5:40: it's a common issue. The trap of thinking that small teams must communicate in a standardized way. So you end up with teams spending time doing stuff that has nothing to do with their core function. Reporting and documenting instead of solving problems. We see this in healthcare in the form of "structured medical records" which eat anywhere from 30 to 50 % of a doctor's daily working time.

  • @RickYorgason
    @RickYorgason 7 месяцев назад +4

    Canadian colleges are basically the trade school you're asking for.
    Note: in Canada, colleges and universities are different.

  • @spuriousGeek
    @spuriousGeek 7 месяцев назад +1

    Yeah the performance thing is very important but only in specific applications. I had to build a routing engine for a company working with the emergency services. Performance there matters..."sorry I'm just waiting for the system to figure out which fire engine can actually route to the incident quickest" "But my house is on fire :( "

  • @BrunodeSouzaLino
    @BrunodeSouzaLino 7 месяцев назад +5

    The moment programming stopped being about solving problems and started becoming about buzzwords and jargon, it's gone downhill from there.

  • @alexlowe2054
    @alexlowe2054 7 месяцев назад +1

    Bigbox knew. He totally knew. It's not a conspiracy theory if it's true. This video was a targeted attack against Primagen. And I loved it.

  • @SeaBike007
    @SeaBike007 7 месяцев назад +4

    @ 1:50, @ThePrimeTime is incorrect about the premise that Uncle Bob has a hard suggestion of 4-6 lines. That is not what the book says, that is not Uncle Bobs suggestion. Without correct premises, it's a straw man argument. There are a lot of valid & insightful criticisms of clean code, but those start with a correct premise.
    The book says (page 34): "The first rule of functions is that they should be small. The second rule of functions is that they should be smaller than that." A bit further on the same page, as an *example*, the book states: "Every function in this program was just two, or three, or four lines long. Each was transparently obvious. Each told a story. And each led you to the next in a compelling order. That’s how short your functions should be!" The advice on function length is that functions should be as small as possible in order that they are transparently obvious and tell a single cohesive story (and to get there, they in effect need to be short). That is _not_ a flat statement that all functions should be 4-6 lines long. There is both a distinction and difference there.
    Personally, I think there are a lot of caveats to that advice and it's a deeper story. I think there are elements of that sentiment that are good. More is needed though for it to really be good advice.

  • @puffinbasher
    @puffinbasher 7 месяцев назад +1

    Intentionally hard apps do exist. Well, one does. Oracle query designer for finance.
    It litterally got sent back to dev, due to "design is overly accessible, to the point we belive it will reduce contracting oppertunities".
    6 of the team of nine walked before the end of the day

  • @matthewread9001
    @matthewread9001 3 месяца назад +2

    9:55 My Software Engineering degree made us take
    a Compilers class and make a compiler
    OS class to make an OS
    Data Structures and algorithms class to implement these and then test them against each other
    much more hands on
    it was fun

  • @piptarou
    @piptarou 7 месяцев назад +2

    Where I live (east coast Canada) community colleges are a bit different than the states and are considered trade schools. I'm just finishing my first year in programming and it's a two year course. I don't know anything about ABET accreditation, but it is a well-recognized college with locations all over the province.
    We cover pretty much everything you listed; Git has been required for handing in projects (started the second semester), we've learned both Windows and Linux, we've briefly delved into cloud computing, etc etc.. It's nice to get actual tangible skills.
    Edited to add: In order to actually graduate from the 2 year program you have to have a 5-week work term as well. Forcing you to go out and make connections in the industry and getting some minor industry experience.

  • @Tigersoulification
    @Tigersoulification 7 месяцев назад

    Man I have recently know you. But you have already inspired me as a developer and as a person to be better just by your takes and opinions on this video. Definitively going to check your other mentioned opinions referenced in this video.

  • @emmaeilefsen7214
    @emmaeilefsen7214 7 месяцев назад +1

    10:00 Norway actually just recently started offering a trade school course to become a "IT-developer" as a split path to the existing IT trade. Same structure as becoming an electrician!
    The first class is graduating this year, so its really exciting to see if it will start showing up in job listings as a qualification soon.

  • @BoodskiBro
    @BoodskiBro 7 месяцев назад +1

    OG Agile: If you just f***ing did the work and allowed for scope change, and didn't have arbitrary deadlines.

  • @loganmedia1142
    @loganmedia1142 6 месяцев назад +1

    Languages that don't indicate types are the worst when everything is split into many little functions. You have no idea what the function being called returns until you dig into its code, and the code it calls, and so on through 50 layers of function calls.

  • @rileyschilling9268
    @rileyschilling9268 6 месяцев назад

    As a poet, I greatly appreciate your many shout-outs to the Artist Language . And I wonder what code snippets of your own have ever felt like Poetry?

  • @yoyocswpg
    @yoyocswpg 7 месяцев назад +1

    I am navigating through a million-line codebase and I keep asking myself what would happen if each function is actually 5 lines of code 😂