i first learned cody in college having
worked as a software engineer for nearly
eight years how would i learn to code if
i could go back in time what would i do
differently here are the 10 things i
would do if i could start over again
number one
do it the best way to learn anything is
by doing it here's a quote from
confucius a renowned chinese philosopher
what i hear i forget what i see i
remember what i do i understand passive
learning like plainly reading textbooks
and watching lecture videos is the
biggest mistake i made initially it's
not an effective way to learn coding is
about active learning you must write
code to understand it reading and
watching online tutorials isn't wrong
but when you do always follow along
write the code finish the exercises run
the program and check your answers you
need to do it to make it your own number
two build your career early if you're in
college put in the best effort for the
4.0 gpa the gravity of your gpa
depreciates as your career grows but it
is vital for your first job if i had an
excellent gpa i might have started my
career at a fang
don't let your summer breaks go to waste
find internships in fact that's my
biggest regret i didn't do any don't be
embarrassed because you don't have a fan
internship learning something is better
than relaxing on a beach whether you are
in college a boot camp or learning to
code by yourself start a project don't
stop at the minimum requirements you
will need far more than a simple crud
and some certificates to be competitive
spend at least a month perfecting it
treat it as an unpaid professional work
working on projects is the best way to
learn to code and build experience if
you're wondering what or how to start a
project
number three
copy not the code but the idea copying
is one of the fastest and the most
effective ways to learn anything that's
how i quickly learn to code and play the
drums for example try to copy games like
sudoku or minesweeper i've made my own
version of bomberman what data structure
should you use what algorithms how would
you change the bumps to explode all
together answer these questions as you
copy try copying my bookkeeping app if
you would like a challenge what about
drumming instead of creating my own drum
beats and fills i copy the pros it saved
tremendous time and effort in inventing
my own here's my point you need skills
to copy someone else's work as an
amateur focus on the techniques
initially creativity comes later you
need a strong foundation in math to
architect the next skyscraper likewise
you need a strong foundation in coding
to build the next amazon or facebook
start by mimicking a relatively simple
idea that already exists there's plenty
of resources for you to use as a
reference remember it's not the time to
develop the world's most original idea i
hate to disappoint you but even if you
do you're not the first
number four be proactive don't wait
until you are 100 ready you never will
is there something you want to build
like a website a mobile app or a game
just begin be aggressive google how to
create a website search how to make a
game on youtube you can find the answers
to 99 of your questions on google once
you start you'll arrive at the right
questions naturally how do i add a
button how do i change the color on
click how do i make my game character
jump search for the answers as the
questions come up in fact that's how we
do it at big tech we sketch a high-level
design and then fill in the details as
we code had i known that google is the
way the truth and the life i wouldn't
have been so unconfident in starting a
project your project will never kick off
if you wait until everything is
perfectly planned out an app is a giant
collection of search results stitched
together as needed don't wait just do it
number five invest get a macbook trust
me on this i've been a windows user for
more than 30 years it wasn't until
recently when i tried an m1 macbook that
i realized the power of apple silicon a
delay is the greatest enemy to
productivity and concentration nothing
is more annoying than a shitty old
laptop that takes years to load compile
and run you need to invest in a setup
that helps you immerse into focused
undisturbed and uninterrupted learning
there's a reason why a macbook is the
default developer laptop in some
companies i can't emphasize more the
significance of a robust development
machine start with an m1 macbook air it
costs less than a thousand dollars and
is powerful enough for entry-level
developers now's not the time to be
pennywise and pound foolish invest in
your learnings before we go on further
let me introduce an app i use daily
grammarly grammarly is a cloud-based
typing assistant that reviews spelling
grammar punctuation and writing style
with over 10 million daily active users
it's the most popular grammar checker on
the planet before publishing i review
everything i'd write formally with
grammarly including my youtube scripts
announcements and webpage articles it's
the core of my writing the centerpiece
that empowers me to deliver my ideas
effectively to the audience download the
app or install the chrome plugin to get
your writings automatically checked on
apps like gmail outlook word notion in
social media try it out you can get
started for free and when you sign up
please use my affiliate link an
affiliate link tracks whether you click
and make a purchase if you do i may get
a commission using affiliate links is
optional but it enables me to create a
free video like this
number six
master a programming language one of my
biggest mistakes as a beginner was
hopping around several programming
languages without mastering any commit
yourself to learn one programming
language deeply establishing one sturdy
in-depth foundation in a single language
is paramount to having a shallow
knowledge across multiple once you
master a language you'll realize that
all programming languages are virtually
identical as a starter i recommend
python it's an immensely versatile and
easy to learn language with many
applications across the industry i wish
i had learned python first it's also the
best programming language for coding
interviews the language syntax is so
concise that you can implement the same
solution with the minimum number of
codes compared to other languages that's
precisely what you want more time less
coding
number seven be autonomous being
autonomous or being able to work
independently is arguably the most
critical skill in the industry learn to
solve a problem without relying on
others your best friend is again google
googling is a skill anyone can search
but not everyone can search well pick up
the skill of finding your way out before
asking for help here's a challenge put
your project on a cloud service like aws
azure and google cloud all by yourself i
recommend aws as it's the market leader
and has a free tier cloud computing
technology is one of the best skills to
learn now use this opportunity to
provide high visibility of your work and
prove that you can finish the job
independently learn to handle things on
your own don't stay as an individual
contributor become an independent
contributor
number eight learn how to debug printf
system that i'll print console the
writeline echo console.log i don't
remember most of the libraries and
methods in any language but i do
remember those that i put to the console
why
because they are great for debugging for
instance open up your chrome browser
press ctrl shift j on windows or command
option j on a mac to bring up the chrome
developer console type in console.log
this you can see all the properties and
values stored in the object in
javascript not every language outputs
the entire content to the console but
you get the point visual studio code and
visual studio are the best ids in the
world don't look elsewhere learn how to
put breakpoints they are the best way to
debug take advantage of debugging tools
and debug often if you're not debugging
in between development you're doing it
wrong make debugging a habit
number nine lead code early do me a
favor and stop arguing how relevant the
code is in real life just
do it it doesn't matter who's correct
because you'll have to lead code to
clear the coding interviews anyways like
it or not the system is not changing
anytime soon so better start early than
be late for starters i know how
intimidating lead code can be however
it's a skill that can be learned and
improved for what it's worth even fan
engineers delete code two to three
months before jumping the ship why
because it's hard i was never good at it
and still don't think i am but the
difference is that i never gave up do
you want to join a fan know your data
structures take time and space
complexity seriously get them wrong and
you lose the game the questions might
not be relevant in real life but
complexity analysis is learn to optimize
and write efficient code brute for
solutions are unacceptable at things
when i know how i crack my fang
interviews check out this video
number 10
win adopt a winning mindset you're a
winner if you strive to be better than
someone you were yesterday whatever you
do promise me this do your best it's
okay to fail but learn to accept
failures as a stepping stone to victory
coding is hard and you won't survive
without the right attitude if i could go
back in time i would discipline myself
in these three areas
one perseverance learn to sit for hours
concentrate until you reach a meaningful
milestone failure is a part of the
learning curve giving up is not two
humility there's no room to grow if your
cup is already full embrace the fact
that computers can never be wrong but
you can if you're fighting your laptop
you're fighting the wrong opponent three
determination never lose sight of your
goal do everything you can to realize
your ambition seek help when necessary
again google and youtube are your best
bets where there's a will there's a way
everything i mentioned here can be done
in parallel meaning there's no actual
order these are 10 genuine pieces of
advice i would give myself if i could
travel back in time which one did you
find most useful let me know in the
comments below don't forget to like and
subscribe if you find this video helpful
thanks for watching i'll see you in the
next one
peace
[Music]
you