5 tips to quickly understand a new code base - FunFunFunction #7

Ғылым және технология

💖 Support the show by becoming a Patreon
/ funfunfunction
Full script here ( / a578b08f3593 )
Breaktime, the app I mention: breaktimeapp.com/
When you work as a programmer, it’s only a small percentage of your time that is spent on writing code. The vast majority of your time is spent trying to understand code that is already written. Either code of others, or code that you yourself wrote a last year.
It’s especially tricky to get into a completely new codebase. You might when you start a new job or perhaps your team takes ownership of a new system.
I have done this a couple of times now, and I have a process for it now, and I figure that it might be interesting to some people to hear about it, and that is what we are going to explore today.
💛 Follow on Twitch and support by becoming a Subscriber
We record the show live Mondays 7 AM PT
/ funfunfunction
💛 Fun Fun Forum
Private discussion forum with other viewers in between shows. www.funfunforum.com. Available to patron members, become one at / funfunfunction
💛 mpj on Twitter
/ mpjme
💛 CircleCI (Show sponsor)
Robust and sleek Docker-based Continuous Integration as a service. I used CircleCI prior to them becoming a sponsor and I love that their free tier is powerful enough for small personal projects, even if they are private. Use this link when you sign up to let them know you came from here:
circleci.funfunfunction.com
💛 Quokka (Show sponsor)
Wonder how MPJ evaluates JavaScript inline his editor. Quokka is the answer - use this link when you buy to let them know you came from here:
quokka.funfunfunction.com
💛 FUN FUN FUNCTION
Since 2015, Fun Fun Function (FFF) is one of the longest running weekly KZread shows on programming 🏅 thanks to its consistency and quality reaching 200,000+ developers.
🤦‍♂️ The Failing Together concept is what makes FFF unique. Most coding content out there focus on step-by-step tutorials. We think tutorials are too far removed from what everyday development is like. Instead, FFF has created a completely new learning environment where we grow from failure, by solving problems while intensively interacting with a live audience.
Tutorials try to solve a problem. Failing Together makes you grow as a developer and coworker.
📹 Each show is recorded live on Twitch in a 2-hour livestream on Mondays. The host, assisted by the audience, is tasked to complete a programming challenge by an expert guest. Like in the real world, we often fail, and learn from it. This, of course, reflects what the audience identifies with, and is one of the most praised aspects of the show.
⏯ On Fridays, an edited version of the show is adapted for and published on KZread.
Content Topics revolve around: JavaScript, Functional Programming, Software Architecture, Quality Processes, Developer Career and Health, Team Collaboration, Software Development, Project Management

Пікірлер: 139

  • @Middollo
    @Middollo5 жыл бұрын

    I felt so underqualified every time i joined a new code base, its such a relief to know experienced developers struggle on new codebases too! Great tips, thank you!

  • @GeorgeBezerra85
    @GeorgeBezerra858 жыл бұрын

    Man, that #4 rule really hits home. I'm totally guilty of not asking for help when stuck.

  • @FotisKaralis
    @FotisKaralis8 жыл бұрын

    most valuable rule i think is #4. I usually get depressed when i stuck :D

  • @ilikememes9052

    @ilikememes9052

    3 жыл бұрын

    Me too just right now and i am overwhelmed by the codebase

  • @abdurrehmanazeem5119

    @abdurrehmanazeem5119

    3 жыл бұрын

    SAMEEEEEEEEEEEEEEEEEEEEEEEEEEEE

  • @LCaaroe
    @LCaaroe7 жыл бұрын

    I started a new job recently, and these are good tips. Having someone with experience around to answer your questions and review your code is a great way to avoid getting stuck.

  • @Loige_com
    @Loige_com8 жыл бұрын

    Great video as usual! My experience lately in joining a new company with an existing code base had a bit of all these 5 tips and I have to say they have been extremely helpful in getting me started and productive in a matter of days. I especially love code reviews because I believe it's the very moment when you share and compare what you have done with others and you have a great chance to learn new things or different approaches to the problem you are solving. I look forward to seeing the next episode, keep pushing ;)

  • @VeryBlueBot
    @VeryBlueBot6 жыл бұрын

    "dont get stuck rule" this is soooo important....

  • @arsal123
    @arsal1237 жыл бұрын

    You really have a good way to think about the things and come up with solutions or better ways. I am a programmer (mostly backend) for ten years but I m learning many interesting things from you. Thanks for sharing

  • @christianhorauf9958
    @christianhorauf99588 жыл бұрын

    new sprint, new unfamiliar code base, best chance to try out your 5 rules :) thanx s lot

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +Christian Hörauf Let me know how it goes!

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +Christian Hörauf Let me know how it goes!

  • @ianedmonds9191
    @ianedmonds91914 жыл бұрын

    I'm working with a company who insist on pair programming and 100% test driven development and a whole bunch of other XP ideas. It's totally different to my experience but the code produced will be 100% tested and we should be able to to deploy every build. That's a new thing for me. I can see why it works. I can also see why it will need a massive organisational change in my my company to embrace it. They funded it so I guess they're up for it. Luv and Peace.

  • @camarada-marcos-jeeves
    @camarada-marcos-jeeves8 жыл бұрын

    Thanks, I was not so productive in my new job just because I don't thought about a "dont't-get-stuck-rule". I'll try these tips, master jedi! :)

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    Yeah, me too. That's how the rule came to be. ;)

  • @yvonh

    @yvonh

    8 жыл бұрын

    spoton i have same problem here ....

  • @mindbodysouldeveloper9688
    @mindbodysouldeveloper96888 жыл бұрын

    I admit I've failed miserably at step #4. Thanks for all these great tips. Very easy to follow and understandable.

  • @amymccabe9638
    @amymccabe96386 жыл бұрын

    I am starting a new job on Monday and your videos have helped me to prepare a lot. Thank you! :)

  • @sathyaprabhagirish3595
    @sathyaprabhagirish35958 жыл бұрын

    Great Video! As someone who started my first job, these tips are soo relatable! Thanks.:)

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +Sathya Prabha Girish glad to be of assistance!

  • @karthikpangala9854
    @karthikpangala98542 жыл бұрын

    Thank you. This video finally took me out of depression. And #4 is a golden rule

  • @DavidMcClellan
    @DavidMcClellan8 жыл бұрын

    Not gonna lie, you sir, are my new favorite KZreadr. Instant sub after watching just one of your videos. Thank you for the time that you're putting into these.

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +David McClellan awww

  • @slubulinio
    @slubulinio8 жыл бұрын

    This is very helpful. Will make sure I'll apply all the rules in my new job that I'm starting soon. Thank you!

  • @Nephinim
    @Nephinim7 жыл бұрын

    Thank you for such practical advise, I've been stuck for days thinking I will figure this out and hurts so bad to think about how much time was wasted. Got help, it was so simple, I should have established the don't get stuck rule. Thanks again for your help.

  • @DaveStewartLondon
    @DaveStewartLondon6 жыл бұрын

    Great advice! I'd add the following: - keep notes on everything as you audit the code - pick up bug-fix tickets to get to know disparate parts of the codebase

  • @nomiSimonP
    @nomiSimonP8 жыл бұрын

    Just checked out your videos for the first time - awesome stuff, man!

  • @asmilespeaks1132
    @asmilespeaks11323 жыл бұрын

    The "don't get stuck" rule is a policy at my office. At first it took a while to get used to because I hate bothering others, but now I really appreciate it.

  • @mr.w7803
    @mr.w78036 жыл бұрын

    I call having to explore a new code base without assistance being a “code detective” It’s a huge pain, but when you inherit undocumented code or your teammates live in a time zone 7 hours ahead I found the best thing to do a mentor may not be ideal. I was in that situation a couple years ago at work and I made heavy use of my editors go to definition feature. I started with functions that were easy enough to track down and went from there. Still not convinced I know the entire code base and I’ve since moved on, but I learned a lot about reading others code from having to do it.

  • @cedrickvstheworld1810
    @cedrickvstheworld18103 жыл бұрын

    Every time new code bases is served to me. Everrrrry time. I feel so sick and overwhelmed. Design patterns are so diversed!

  • @d_professional
    @d_professional8 жыл бұрын

    Seen two vids and already subbed. very informational

  • @DaChud555
    @DaChud5558 жыл бұрын

    Thanks for the awesome, entertaining, and informative videos! :D

  • 8 жыл бұрын

    what helps me is to check pull request for some other issue that was fixed by experienced member of the team. This way I have an issue, I think about how to do it and thenI go through the sent PR that recently fixed it. This really boosts my understanding and I do not need to bother anyone .:-) Feel free to try

  • @roopamrajvanshi4724

    @roopamrajvanshi4724

    4 жыл бұрын

    How do you go about finding a similar PR?

  • @mpho438
    @mpho4382 жыл бұрын

    i like the dont-stuck-rule , as a junior software developer is crucial for my career

  • @78njh33
    @78njh338 жыл бұрын

    You're very good at making the topics you talk about clear and interesting. Any chance you'd be able to do some videos on node.js and how to structure an app made up of multiple modules and relying on callbacks, emitters and promises. I'm trying to learn at the moment and getting in a tangle.

  • @minispecs123
    @minispecs1238 жыл бұрын

    Omg this is the exact position Im in at the moment! Currently taking on a massive backbone js application, my only experience with js frameworks is ember

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +minispecs123 Haha, what a coincidence! Good look, and hope I was of some help. Another tip is the book "Working with Legacy code" - it's awesome.

  • @leafdragon94
    @leafdragon946 жыл бұрын

    Love your advice! Thanks!

  • @davethorn9423
    @davethorn94237 жыл бұрын

    Yes I remember as a green as grass beginner having a complex codebase shoved into my unprepared arms - no mentor , sh*t culture - total disaster and wrecked my confidence for a while ... wise words

  • @achang28
    @achang288 жыл бұрын

    I prefer to watch the videos @ 2x speed! Awesome videos!!!

  • @shamsartem
    @shamsartem5 жыл бұрын

    Real great advice. Thanks!

  • @IsraelBautistaWebDev
    @IsraelBautistaWebDev8 жыл бұрын

    step 4 don't-get-stuck rule is incredible valuable

  • @JasonCtutorials
    @JasonCtutorials8 жыл бұрын

    What's your opinion on codeschool or teamtreehouse? Even though I only been coding js since april. LOLs.

  • @nyhunter77
    @nyhunter776 жыл бұрын

    This is great! My company had a big layoff ... again ... I am one of the survivors as always but i have lots of video code to learn better! (I subbed for video over the holidays but don't really know all the code yet) - I was happy to see you did a video on this subject! BUT BUT BUT !!! What if the original coders are gone !? :D By the number of tickets, I guess I'll be questing a while ! :o

  • @nechief
    @nechief5 жыл бұрын

    Thanks, I guess you saved my new employment!

  • @nischalsrinivas
    @nischalsrinivas8 жыл бұрын

    Logo is cool! did you create it?

  • @serdavosseaworth2188
    @serdavosseaworth21888 жыл бұрын

    Oh no, swedish java script uses eval :(

  • @josifyesyes9427
    @josifyesyes94276 жыл бұрын

    I have subscribed before finishing your video

  • @alwaysthirty
    @alwaysthirty8 жыл бұрын

    step1: coffee step2: coffee step3: find a mentor

  • @aryankhullar7101
    @aryankhullar71012 жыл бұрын

    Thats pretty good advice , I dont think doing random pull requests here and there is a good option for a beginner, rather understand a big mainstream project and doing stuff within it seems more realistic. Am i thinking in the right direction or not?

  • @stomachfat
    @stomachfat7 жыл бұрын

    JUST STARTED A NEW JOB! THANS FOR MAKING THIS VID!!!

  • @funfunfunction

    @funfunfunction

    7 жыл бұрын

    +Jimmy Truong congratulations!!!

  • @stomachfat

    @stomachfat

    7 жыл бұрын

    I'm a week in now! : ) I'm pretty much doing everything in your video except I don't have a mentor. No one has time for that to babysit me so I gotta find different 'mentors' everyday haha. I've got 7 bugs and two sets of units test under my belt :D!!! And you're right there's some things about the code I could never really know without asking lol!!! Your video is more awesome now that I'm living it!

  • @kevinflorenzdaus
    @kevinflorenzdaus8 жыл бұрын

    awesome vids man! kudos!

  • @daverit40
    @daverit408 жыл бұрын

    Great video, I've found that taking the time (if available) to create my own documentation of the code is really helpful. I do this as granular as is reasonable to understand the system. Quick episode suggestion: You recommended a book in the comments, and in the past you've recommended other books. How bout an episode where you assemble/review a list of what you consider "mandatory reading" ?

  • @itsvdu
    @itsvdu8 жыл бұрын

    I love the tips!

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +itsVDU love the comments!

  • @emilhammarstrom8138
    @emilhammarstrom81388 жыл бұрын

    Hello! Is there a chance you could share your opinion on Scala? This was meant to be a broad question since your answers always seem to converge to an interesting point. I thought it would be an interesting language to share your views on for us viewers to develop a greater understanding of programming.

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +Emil Hammarström I don't have a strong opinion, it seems nice. A lot of the machine learning people at Spotify like it.

  • @coolbeatguy
    @coolbeatguy8 жыл бұрын

    Great coffeemachine, i've got the same one! haha

  • @shikhindahikar8488
    @shikhindahikar84884 жыл бұрын

    Hi, I want to work on a open source software to gain some experience on coding good code which someone will use irl. I have problems with rule 1, how do I get someone to mentor me for open source software? How do I ask without being awkward?

  • @chrisjaeger6213
    @chrisjaeger62138 жыл бұрын

    I'd like to push for a code review process with the team I work with. Is this a daily/weekly thing with the entire team? An episode on this alone would be very useful!

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    An episode on code review is a great idea! The way we do it at work is really simple: - every change has to be made through a pull request in github. It is not (easily) possible to push to the repo directly. - discussion about the Code is conducted in the PR comment system - before the pr can be merged, someone other than the person submitting must write a comment containing the :thumbsup: emoji - when that is done, you can write the :shipit: emoji to merge it. The system is mainly enforced culturally, but github and tutter bot allows you took make it a hassle to do the wrong thing. Main benefit for developers with code review is that you never stand completely alone when you make a mistake that takes the app down. ;) I think that should be the main sell-in to the team. As you use it, you will discover lots more benefits. In the beginning, it's hard to take feedback because you still think of code as "your" code, so take it easy in the beginning and be okay with people just +1 ing and not really giving feedback. After they've let their first bug through, they'll start reviewing better. ;)

  • @chrisjaeger6213

    @chrisjaeger6213

    8 жыл бұрын

    Awesome, thanks for expanding on your review process! I like the point about never standing alone too. I imagine another bonus of review is allowing the team to be more familiar with the overall code, rather than the chunks one solely works on... great way to improve and level each other up. I'd like to adapt a similar process to our more basic centralized git workflow (we're a small team), but maybe it's time to move to github, since PRs and the comment system seem like a key component for reviewing. Also, a github bot? That sounds interesting...

  • @WHYCANTIFINDMYMONEY
    @WHYCANTIFINDMYMONEY7 жыл бұрын

    May I assume something like a council of friends that work in development area instead of A only mentor? In my case I don't have one.

  • @shivamnema05
    @shivamnema057 жыл бұрын

    Can you please give me a idea how to find the entry point in a javascript project. When don't a mentor.?

  • @metamee
    @metamee8 жыл бұрын

    So guilty of the don't get stuck rule. While my workplace doesn't really have the opportunity for mentors for most projects, seeking out people that specialize in the libraries and frameworks that I'm unfamiliar with would save me tons of time (like jumping into a PHP code base as a JS developer).

  • @brycepj1
    @brycepj16 жыл бұрын

    1. Find a mentor: kzread.info/dash/bejne/gaJ3x8ODlMfFo7w.htmlm42s 2. Get an overview: kzread.info/dash/bejne/gaJ3x8ODlMfFo7w.htmlm53s 3. Do a small quest: kzread.info/dash/bejne/gaJ3x8ODlMfFo7w.htmlm49s 4. Have a don't-get-stuck rule: kzread.info/dash/bejne/gaJ3x8ODlMfFo7w.htmlm8s 5. Use code review: kzread.info/dash/bejne/gaJ3x8ODlMfFo7w.htmlm23s

  • @kishorchintalchere
    @kishorchintalchere2 жыл бұрын

    Thank you❤️

  • @sadhvigupta1269
    @sadhvigupta1269 Жыл бұрын

    I am also stuck .. also not assigned a mentor .. i was confused ,how can I understand code flow

  • @vinciwang9703
    @vinciwang97032 жыл бұрын

    really very useful tips

  • @MrGtsouk
    @MrGtsouk8 жыл бұрын

    What's your opinion about sites like codewars.com , codefights.com , codingame.com , etc. ? Thanks :)

  • @arslanwaqar
    @arslanwaqar8 жыл бұрын

    IMO don't-get-stuck rule time should vary based on the urgency. Solving something on your own is far more rewarding than having someone else guide you to it.

  • @HenriqueSchreiner
    @HenriqueSchreiner8 жыл бұрын

    Do you write your video scripts before or after recording videos? Are you reading while recording?

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +Henrique Schreiner It has varied a lot from video to video. Many of my videos have detailed scripts, but on the latest ones I'm working off pretty detailed outline made in MindNode, but not a word-for-word script. It's a good compromise.

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +funfunfunction I've never transcribed from a spoken video, that would be so goddamn boring to do. :)

  • @HenriqueSchreiner

    @HenriqueSchreiner

    8 жыл бұрын

    Haha! Tell me about it!

  • @anaradun234
    @anaradun234 Жыл бұрын

    I've seen multiple senior developers being expelled from their teams because of asking where is something in the code base located. Many teams I observed valued that one can do the task completely independently. Asking after 15 mins or even a few hours would completely fail in there. How common is this in the industry actually?

  • @navroze92
    @navroze926 жыл бұрын

    Make a video on how to go through documents and huge books during the learning phase. As an example suppose I wan't to learn node.js, in that case what is the most quick and effective way that I can learn node so that my learning curve is small as possible.

  • @Bobby-mf6fw
    @Bobby-mf6fw2 жыл бұрын

    This is my first project and I am not able to understand the codes ,feeling helpless ☹️ I am trying hard to understand it....any tips

  • @saulfalcone4817
    @saulfalcone48172 жыл бұрын

    thanks for the 5 tips.

  • @FizWiz91
    @FizWiz916 жыл бұрын

    Thank you.

  • @nicolasschurmann
    @nicolasschurmann8 жыл бұрын

    Great video!, can you talk about monads on the next one?

  • @mugnoom
    @mugnoom8 жыл бұрын

    i just got iOS Developer job after a year of self-educating, I'm subscribing for sure, you help a lot!)

  • @heathergray4880
    @heathergray48805 жыл бұрын

    Unfortunately, I cannot follow the advice on this video because the codebase I've been given was written by someone who is no longer here and no one else knows about it! :(

  • @michaelhorstmann7737
    @michaelhorstmann77378 жыл бұрын

    The only series of words that freak me out, but at least you only applied them to a plant were "this is probably not the right way to do it, but this is the way I do it." Okay with plant watering, not so much with production code managing customer accounts. lol

  • @michaelsharer
    @michaelsharer8 жыл бұрын

    How long does a typical 7 minute video take you to produce? Just curious.

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    8-14 hours

  • @michaelsharer

    @michaelsharer

    8 жыл бұрын

    Thank you for your time and hard work every week. I know I am not the only one who appreciates it.

  • @sudhansu23

    @sudhansu23

    6 жыл бұрын

    +Fun Fun Function "8-14 hours"!! WoW! Hats off to you for the hard work that you put up. Thank you very much.

  • @Salamaleikum80
    @Salamaleikum808 жыл бұрын

    Love your show, do you do anything else but coding? Any other interests?

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +ReaperPlayzLeague youtubing ;)

  • @Salamaleikum80

    @Salamaleikum80

    8 жыл бұрын

    funfunfunction obviously :D

  • @yash240196
    @yash2401967 жыл бұрын

    how to find a mentor?

  • @berbudy
    @berbudy7 жыл бұрын

    5:00 so true

  • @johnnyw525
    @johnnyw5256 жыл бұрын

    From the video: Step 1: Find someone who knows the code. Step 2: Get that person to give you an overview of the codebase and its history. Step 3: Get that person to set you a challenge using the codebase. Step 4: Ask for help with challenge if you get stuck for 15+ mins. (Use a timer to make sure -- don't go into 'lone wolf' mode.) Step 5: Get that person to review your solution. In short: You're screwed if you don't have anyone to help. Also code reviews = Yay!

  • @nvd80
    @nvd808 жыл бұрын

    Great tips especially No 4. All along i thought its a good challenge to figure it out myself. Nowcan you become my mentor ? :)

  • @jason9199b
    @jason9199b8 жыл бұрын

    Step 1 would be great, but when you're joining a small company sometimes you're the only developer...like in my case. In my company I'm the only developer. Is there any tip for that situation? Or just "sucks to be you"? Seems like the rest of the tips depend on having a mentor.

  • @funfunfunction

    @funfunfunction

    8 жыл бұрын

    +Jason Carpenter I have not been in the situation where I'm joining as the only developer AND there is a legacy code base. That seems weird to me. Did they fire the old developer, wait for his contract to run out, and then hire you?

  • @jason9199b

    @jason9199b

    8 жыл бұрын

    +funfunfunction the other developer quit in between the time I was offered the job and when I started. They're a small company (only 2 years old) so they're trying to be conservative with their money and haven't hired another developer to replace him. Only me.

  • @danielharbor
    @danielharbor8 жыл бұрын

    2:55 I almost cried. hahahahaha

  • @marquinhusgoncalves
    @marquinhusgoncalves5 жыл бұрын

    👏🏼👏🏼👏🏼

  • @aanchalsharma8362
    @aanchalsharma83623 жыл бұрын

    Guilty of being stuck and spending hours :D It's definitely the most important rule.

  • @cosname
    @cosname7 жыл бұрын

    Can you talk a liitle bit more about "nog get stuck rule" ? Thank you! Watched dozens of your video, after subscribe. Very entertaining!!!

  • @Jocke1234
    @Jocke1234 Жыл бұрын

    15-20 minutes of being stuck before asking for help? Ive been a junior backend developer for 6 months now and im constantly ashamed if i have to ask for help more than 3 times a day.. No one is rushing me and i get help every time i ask, but if i ask more, i feel like it would be the same as if the mentor would do the code himself.. Im really struggling with monkeypatching and a big codebase and feel like a burden to anyone that has to help me :/

  • @jeanclaudeaoun6183
    @jeanclaudeaoun61838 жыл бұрын

    what is code review?

  • @DanielVazquez
    @DanielVazquez2 жыл бұрын

    I am a new grad and my company already expects to be productive with just poorly documented code.

  • @ward7576
    @ward75762 жыл бұрын

    If you don't follow the #4 rule, you can get fired easily. Swallow your pride and ask - have lost so many jobs due to me thinking "I should be able to fix this".

  • @nes2293
    @nes22937 жыл бұрын

    Can you suggest any good open source code base to hack, and learn javascript, node, express, or angular?

  • @Timooooooooooooooo

    @Timooooooooooooooo

    7 жыл бұрын

    Neelanjan Sen I suggest you check out Free Code Camp's codebase. Warning: it's complicated. Disclaimer: I'm a contributor myself

  • @nes2293

    @nes2293

    7 жыл бұрын

    Thanks. I'll try....

  • @malmahsyar3347
    @malmahsyar33476 жыл бұрын

    I never get a mentor until now :(

  • @jacquelinewalker-5731
    @jacquelinewalker-57315 жыл бұрын

    your the mentor- right?

  • @FakeAssHandsomeMcGee_
    @FakeAssHandsomeMcGee_7 жыл бұрын

    "Swedish JavaScript" =D

  • @thatoneuser8600
    @thatoneuser86002 жыл бұрын

    I think he forgot a crucial step which is to build the code and then run the debugger (use "step into" to see every piece of code being called)

  • @AnimeReference
    @AnimeReference4 жыл бұрын

    I'm not sure about rule 4. When are you considering yourself stuck? when you haven't typed for 15 mins or 15 mins after you're out of ideas? And how much less are you going to learn from being given the answer.

  • @funfunfunction

    @funfunfunction

    4 жыл бұрын

    Typing doesn't have anything to do with progress - I'm talking actual progress. The 15 minute figure is arbitrary, the intent is to have some mechanic in place that prevents you from spending hours on a problem solo that would take minutes to solve. Programming is a team effort, it's not pole vaulting, it's football.

  • @Schimshamity
    @Schimshamity6 жыл бұрын

    Given that you've got 105k subs here, I'm fairly sure I already know the answer but here goes anyway...: Do you have room to take someone else(me) on as a mentee?

  • @The_Nova_Glow
    @The_Nova_Glow6 жыл бұрын

    if i could sub more than once, i would

  • @funfunfunction

    @funfunfunction

    6 жыл бұрын

    You can! That's what Patreon is for! :) You can also watch on Twitch, and follow me on Twitter!

  • @neithanm
    @neithanm7 жыл бұрын

    Let me save you 7 minutes of your life: find someone that knows the code and ask him about it.

  • @CapitaineBleuten
    @CapitaineBleuten3 жыл бұрын

    When young Lenin teaches coding

  • @auctifer0
    @auctifer03 жыл бұрын

    2:58 what the hell was that xD

  • @fisfisarenskanal
    @fisfisarenskanal Жыл бұрын

    OMG glassbilen = )= )= )

  • @fabriziomeinero
    @fabriziomeinero5 жыл бұрын

    I disagree on the 15 mins stuck rule. I mean not getting stuck for too long is fine but 15 mins are not enough to figure something out your self and mentors would definitely get frustrated with this rule. Especially with juniors

  • @funfunfunction

    @funfunfunction

    5 жыл бұрын

    Don't focus too much on the actual figure, it's of course individual - the important thing is to pick a number that works for you, in order to prevent yourself from trying to be a hero an banging your head against a problem when it is much more effective use of engineering time to collaborate on the problem. Also, notice that I'm actually using the term "stuck", not "slowed down" or "struggling with". It's 15 minutes without any progress. No clues, no "ohhh maybe this" - it's *stuck* I'm referring to here talking about here. For me, I find that if I stare at a problem for 15 minutes without making progress, I'm not going to make progress without help, but you might be different. Also, if you're a senior dev that is tasked with mentoring and is frustrated with questions from a junior, you should frankly GTFO from the business, in my opinion. That kind of attitude is poison to a team. No task is more important that raising the level of juniors to get them up to speed on the project.

  • @fabriziomeinero

    @fabriziomeinero

    5 жыл бұрын

    I get your point but mine instead is about learning by insisting. If you are a mentor and tell a junior "if you get stuck for 15 mins ask for help" you will turn into a baby sitter from my expirience. I've seen it on my self and others and also applied to life in general. If one has a problem and he just asks for help without struggling, the next time he faces the same problem he will need help again. Of course I'm generalising and I'm not suggesting to spend a month without making progress but my point here is that "no pain no gain" and that expressions like RTFM were born for a reason.

  • @funfunfunction

    @funfunfunction

    5 жыл бұрын

    Yeah, I'm sorry, but I could not disagree more. You cannot just "insist" your way into knowing things that only exists in the heads of your peers. Try to figure out on your own, sure, but if you're stuck for a while it is extremely likely that you simply lack knowledge and context and banging your head against the problem further is just your expensive time down the train. Software development is a team effort - make use of your team. A junior dev needs to feel that they are safe and supported in the first few months of a project. I've seen the "I don't want to babysit juniors" and "RTFM" attitude lead to new developers trying to slug it out against impossible odds and ended up quitting even though they were perfectly fine developers being pitted against really nasty code segment.

  • @fabriziomeinero

    @fabriziomeinero

    5 жыл бұрын

    Junior or not you cannot just "give up" after 15 mins IMO. It could perfectly be laziness instead of lack of knowledge. We probably worked in different teams but from my experience your rule is not applicable in the real world. Also because it assumes that the mentor is immediately available to help and in my "world" that almost never the case. In fact, many times when the mentors get available the other says "never mind! I figured it out!" Again, I'm not saying one should not eat until his prob is solved. But I just don't see the 15 mins rule like a realistic thing. I can be wrong though. Anyway thanks. I really enjoy your videos and I think you do a great job.

  • @funfunfunction

    @funfunfunction

    5 жыл бұрын

    Asking for help is not really giving up. The point with the rule is to drive collaboration. Asking a colleague for help is not laziness - collaboration is a smart thing that makes the team *faster*. You should not interrupt too often, which is why 15 minutes, but you should be asking for help as much as possible. I understand that you remember many "never mind! I figured it out!" but I also remember many times where I spent an entire day struggling with a problem and a senior solved it in 15 seconds by pointing out an obscure API quirk that I had no way of knowing about without asking. Also, note here that the video is talking very specifically about being Introduced to a new code base. This is not normal work, this is relating to the first few days/weeks of work in foreign code. We're not learning a well-documented framework here, it's the innards of a living code base. If you're lucky, it's somewhat ideomatic to a framework you know, but other than that best-case scenario, it's going to be completely unfamiliar ground. I'm talking from a position of the best cases in the best teams I've been in. I understand that there are real-world situations where you are not provided with the tools and people that you need to perform optimally. The video is very much "this is me retelling the best way I've found to do it". The best cases I've been in is where I've been introduced to projects having a senior dev sitting next to me that I could ask as soon as I was confused, and even pair programmed a lot things. I was up and running in a fraction of the time that I was in prior projects where I had to perform archeological surgery. I am absolutely, vehemently against the "throw the new dev alone into the pond" mentality. It just sucks compared to a proper buddy system.

  • @PoojaSumann
    @PoojaSumann3 жыл бұрын

    it will be heaven if i unstuck myself in 15 minutes all by my own...!!

  • @georgesamy00
    @georgesamy00 Жыл бұрын

    Come back :)

  • @OperationsAndSmoothProductions
    @OperationsAndSmoothProductions4 жыл бұрын

    Jenny Campbell don't look happy to be in those adds does she ! ? !

  • @sent4dc
    @sent4dc8 жыл бұрын

    Well, it's all good and well ... in theory. In real life what matters is how well the code is documented/commented out. Finding a mentor... come on, dude ;) In real life you'd be happy to see variable names other than i, j, x, and a. (I'm not sure why coders go for those in particular.) So my "real world" two rules are simple: 1. If code is not documented or well commented in variable definitions and method calls, I won't take on it. Sorry. 2. Spend time on it by writing a test app. There's really no way around it. You just have to spend some time on it.

Келесі