My name is Robert Axelsen as I said, you can find me on most of things @robaxelson.
I'm a software developer by day by profession. I learned to code mainly via freeCodeCamp
The meetup we are at now is for freeCodeCamp.org
And I also organized meetups: this meetup here and also Vienna Go, Go Line meet up and Vue Jazz Vienna
And I really love being around open-source and
developer geek community
So I keep doing this because it's ultimately fun
If you want to learn more about mine and Daniel's journey
Going from learn to code and getting a first developer job
You can go to my website and there's a link to our talk there
Okay, so let's go straight into it the first obstacle that you might meet and to preface it
These obstacles are mainly based on
My own experience and talking to people
Fellow co-students. This is by no means as of this talk an exhaustive list
So, please feel free again in the questions section to ask. We'll leave room for questions after the talk
So when you're dealing with time the time might be an issue because
I think starting out. It's easy to think that oh, you know
I'll put like three weeks into this and I really focus and
Maybe I'll learn a lot and then you realize after three months that oh god. There's so much to learn so
There's different ways that time can hit you in the face
But I think there are some things to keep in mind to not get too overwhelmed or too impatient
One thing is to accept that learning takes time. Yes. It doesn't take too long to learn the basics of programming
That's one thing that I struggle with on the opposite of time was that I thought it would take
both the mind of a genius
You know
What is it called, prodigy or
a really really long time and math skills to learn to program, but I kept
having to face that
Myth or misconception and I gradually learned that no, it's easier to then I thought to learn the basics
but once you have the basics, what you really need to focus on is
repetition repetition and getting better and just doing a lot so
Things will take time. But to get the basics and get up to speed
It doesn't necessarily have to takes a long time, but just manage your expectations and that learning the code
It's not something to do on a whim and you need to be ready to commit
Maybe, you know several months a half a year a year
Depending on what you want to get out of programming if you want to learn to code
definitely think longer than two weeks
In learning to code you can also get trapped into spending too much time on stuff that
you might realize afterwards weren't giving you as much
Or weren't as beneficial to you, so you should instead of forcing yourself to
Stick with the course you found
You should rather try different courses, different books, different learning formats and see what works for you
and what some of the
Combinations of resources and courses and curriculum and teachers etc. might speed up things for you,
so don't be afraid to experiment
Again realistic time frame. We already talked about
It helps to form helpful habits
so instead of sitting down and forcing yourself to learn for two hours
if you have habits in place and routines where it's not an issue, it's not a struggle to get started.
It makes it easier. It's not easy to form habits
It takes commitment in the beginning, but once it's habits, it makes it it's a habit. It's much easier just to get going
Doubt is one thing that you can be faced with
I think especially when you're thinking about applying for jobs even when you've got your first job or
When you've started study. Like I had a wall after like three four months of starting freeCodeCamp
I was like god dammit. Can I really do this? There's so much left to learn.
I loved eating success stories for breakfast I still do
There's tons of success stories on freeCodeCamp, the Medium publication if you just google it online
There's so much stuff out there. Just talk to people in the audience today
And just remember that everyone started somewhere. So even the most, you know accomplished
Developer out there or even the most accomplished speaker / persona and whatever pick your programming language stage
Started somewhere some people yes started when they were almost starting to walk and were like four or five year olds
But most people started later in life
and there's tons of success stories of people starting when they were twenty thirty forty fifty
there was recently a great article by Quincy Larson, the founder of freeCodeCamp on just that topic
Even for experienced developers. Google is your best friend
So if you're doubting how to do this, someone else probably have also asked the same question
Can I really do what I was tasked to do right now or what I chose to create. So don't be afraid to Google
all the time
It only seems the haters, it depends a bit about on your family and your friends
I've been blessed to not have so many people
Questioning why I was learning to code or
Why are you learning to code and stuff like this?
but I know some people have that issue and it's not easy to just ignore them if they're important part of your life,
but don't give their opinions too much value and
yes, you can we have again success stories tons of stories here today of people that have dealt with doubt and still have overcome and
managed to learn to code
Resources. Mentioning this it ties into some of the other things we've discussed
When you are faced with doubt or time constraints
Also in the beginning but
When you are hitting a wall and feeling like Oh freeCodeCamp
is maybe not for me or you're doing another online course or you're reading a book and you're getting stuck
Don't be afraid to question the resource that you are using to learn to code.
I supplemented freeCodeCamp first with "Eloquent JavaScript", a book
and then gradually more with Udemy video courses
But just don't be afraid to experiment there's tons of free resources, there's tons of cheap courses
So the main focus on how to deal with resources is don't be afraid to test out things and switch it up
but on the other flipside
Don't get too fragmented. Like there's the shiny object syndrome of course
You might try to buy every new fancy course and think that that's going to be the "blue pill"
that's gonna get you from A to B in two weeks doesn't work like that, but
Find something that works for you, and when you find something stick with it
It can also help to have a mentor. It's not always so easy to find.
In absence of that, co-students can be in my experience really good to just meet regularly at meetups
taking initiative to meet people for coffee and some talking about code, you know
give each other feedback and to
have this
Social sort of pressure to when you meet someone the next time. Oh, I should have completed that JavaScript calculator
Let me just do that before I meet them tomorrow
And pair programming is worth trying if you haven't. There's a lot of online communities where you can meet people and pair program for a session.
You can also meet people in real life
Pair programming is sitting together with someone else and coding on the same thing on one screen normally
Just to not bore you too much I took in a bonus point here
An obstacle when learning to code can be vim. If you don't know what vim is, it's a code editor in the terminal
It's been around since the beginning of unix times
or not so long, but it's been around for a couple of decades
and it's infamous for being hard to
Exit out of so if you just open it up and you don't know how to exit out of it
You probably will not figure out and you close your terminal
But this is more of a joke than a real obstacle if you want to know how to exit vim, this is how you exit vim
Just to have that included
So you literally just do
Escape to have the command section
and then you have : q and exclamation mark
but you might be normally fine without the exclamation mark
It sounds simple but on the other hand, it sounds may be unnecessary when you just gonna exit something
so
Let's get back on track
Distractions is another thing, as with anything in life, especially with the infamous Millennials and all the distractions we have these days
it's easy to sit down and
You were going to learn to code today and then two hours later
You've been checking everything on YouTube and all the latest JavaScript news or whatever
It's a bit tricky one because again for me what helps the most is
I realized the one thing I haven't put here I'll mention that but its habits again.
If you manage to do stuff for the right reasons and also
form the habits that you need to have the routine that works for you
Like every morning for 20 minutes
At lunch or in the evening before you watch your favorite TV series or whatever
That you just stick with some routines and follow them.
I like really the routine of just sticking with freeCodeCamp and getting the brownie points if I help people at freeCodeCamp.org
Via the chat room you get brownie points when people thank you. I just kind of kept wanting that
Statistics of my points to go up that was the motivating force
One thing I didn't put up here is that it helps to... no, I got distracted. So I forgot what it was
so we'll get back to that
Again to the better resources, I think that's the theme of this talk now
But if you get distracted it might be because the course is not the best fit for you
Maybe you would do better reading a book for an hour than for following
something video or maybe
Tutorials where you get to do stuff as you go along is better for you and so on and also one thing
Actually it is here, but just didn't realize the thing that I forgot is
Work on your "why". So if you feel
lacking motivation or being distracted too easily. It might be because you're lacking motivation you need to learn to code
You might rethink why you're learning to code and if it's really the right thing for you now
Maybe it's a better fit in a year to be honest something happened
You're like, oh no I need to do this for other reasons, but if you don't either have the passion for programming code
These kind of things or you have the right reason to do it, it will be harder
It's just a fact so you can still do it. You just need to figure out how to work on that for you
I've been blessed that I've been loving computer since I could
walk and tap on
Keyboards, I just didn't get into programming until recently
We'll save the questions for after because we are filming so it's not so easy to take questions during the filming
But just keep them if you had some
Getting stuck again. We've covered this sort of and we've covered switching up
one thing I want to focus on is that if you feel like
You were committing to a course or a material and you're like, yeah, but I can't give up
I'm so invested in this for whatever reason, it's fine. You can just stop
Try something else and it might work you might even return to where you were because you learned something from a different perspective.
I had that experience with "Eloquent JavaScript" reading that for several chapters
And I got the same things that were explained in freeCodeCamp curriculum in a different way and it was like, "Aha!"
Now I felt more equipped to tackle the course afterwards
Debugging is a thing where it depends on what you're coding in.
It depends a bit on you and how strict you are on debugging with debugging tools in the beginning or not
There are different opinions on this. But whichever way you are debugging with your language with your set of tools
It helps getting better at
Figuring out why your code is not working right now
Google, again as we talked about if you're doing front-end the chrome developer tools and getting better at breakpoints and
debugging having debugger
as a
as
Variable name or like a method that you hook into your JavaScript and it stops in the browser to give you the
To stop in time where you are debugging and those kind of things help
If you don't know much about this, and I've had problems coding look into debugging
Just google it
What helps for me sometimes, and there's been studies done on this, if you are coding and you feel stuck and this could be
professionally or learning to code
it might be good with the context switch where you just force yourself to be like but I'm in the middle of this
I can make this work and then you're an hour later. I can make this work and you're like, okay stop
Just take a break 10 to 15 minutes
go for a walk, do something entirely different and you might be like
but now and then you go back to it or just the fact that you had a break you go back and you look at
It with fresh eyes, it very often helps
Yeah, Google again
Okay, so
For one of the last points. I think it's the last
obstacle we're going over today is
Deflation you might be like Oh
Goddamn it. I've I've been trying to learn to code for like one week three months half a year or more and you feel like
Yeah, you need some motivation. You're like, maybe it's not for me or whatever
In my experience it helps to go to meetups or to socialize with others that also are learning to code.
Sometimes it might help to be proactive for me and I also know Daniel
It helps to look at motivational talks and documentaries
I love these kind of success stories again or seeing like how this you know, seven year old kid
that was a programming prodigy
got into college early and just conquered the world with his iOS apps and those kind of things
and I'm like if he can do that, I can certainly get further in my course material, and stuff like this.
Yeah, and ultimately your "why," so if you're if you're kind of stuck ask yourself
Why am I doing this and maybe I try to do some self motivation
cool
Just to make this talk even more exciting. We're hiring at my company. I mentioned this before but we're still hiring
a front-end / full stack developer.
We're also looking for a back-end
The profile for both is a bit a little bit more
Experienced because yeah, that's the general gist
Have a look or send us an email if you are interested, and if you feel you don't have enough experience
Feel free to still approach me or send an email or look at the website. It might still be
Worth a look for you
Yeah, I worked there
I do JavaScript front-end stuff with Vue.js mainly at the moment
Cool, I think
Yes, I think that was it
before we end I want to reinforce and I'll
follow this up with putting a
repo in the comment sessions because I want this talk to be something that people can contribute to
I realized giving this talk that there's a lot of repetitiveness and there's some stuff that I could maybe when I talking about it could
want to add myself. If people have stuff they would like to add or
Feel they can contribute with help on how to overcome obstacles
You're free to help
With this talk for the future. Thank you very much
[applause]