Monday 31 October 2016

My beginners guide to becoming a developer from scratch

Vandaag start ik als ‘Junior developer’ bij Alledaags. Dit leek mij een mooi moment om de talk die ik heb gegeven bij RailsGirls Rotterdam en DjangoGirls Groningen eerder dit jaar te delen. Hij is in het engels omdat de talk voor een internationaal publiek was. Alle credits van de visuals zijn voor William.

Welcome everyone! A year ago i decided that i wanted to become a developer. When i first started out i tried to make a plan around it. I sat down with my computer, opened my note tanking app and… i blanked out.

Were to start? The options and challenges presented to you when you try to decide where to invest you’re precious time on are overwhelming. For example wat language should you learn. There are dozens to choose from.

My beginners guide to becoming a developer from scratch

So in the past year i learned a lot about how to learn programming and i would like to share what i learned. The one thing i want to leave you with today is that you all can be a developer and if you decide to pursue this goal i want to give you some pointers on where to start.

1. Why do you want to learn programming?

The sooner you get this clear the better you can decide what is needed to become the developer you want to be. Also make this as specific as possible.

To help you get started on defining your why In my experience there are roughly three reasons why we are interested in code:
1. You have an awesome idea for an app or blog and want to code it yourself.
2. Your curious about what it is a developer does.
3 .Your juggling with the idea to try and pursue a career as a developer.

So for example:
1. You may have an awesome idea for an coffeehouse-tinder app and decides to develop it yourself.
2. Your curious about what it is the developer of your website does exactly does to accomplish a better collaboration.
3. You’re juggling with the idea to try and pursue a career as a developer to contribute to our world with your vision on awesome apps that make a difference.

To put te reasons in perspective:
You can replace code with interest in cooking or construction. This talk is mainly for you guys in the third category but i will give out some pointers for you all.

If you replace code with cooking:
1. You could be interested in cooking because you came up with the idea of a Pizzamuffin and you want to be able to make them.
2. Your a restaurant owner and you want to have a better understanding of you’re chefs work to improve you’re collaboration with him. Or your boyfriend is a chef and you want to know what the hell it is he does all day.
3. You want to become a food-truck-chef to contribute to our world with your vision on awesome finger foods that are missing on festivals.

If you replace code with construction:
1. You could be interested in construction because you want to start a treehouse airB&B in your backyard and you want to build it yourself.
2. Your in search of a contractor for your new house and you want to have a better understanding of construction to be able to assess the different offers.
3. You want to become a architect to contribute to our world with your vision on awesome buildings.

Don’t know your why yet?
If the visual design and user experience of app’s, websites are what make you tick - start with HTML5 and CSS3(front-end).
If puzzles are your thing and your interested in creating functionality - start with Ruby or Python(back-end).

2. Dive in the world of tech.

Get to know the language that developers speak and what they invest their time in. It will be puzzling at first but putting in the hours it will help you understand the terminology, problems and priorities of the tech world. This will also help you decide what to focus on in your path to becoming a developer.

3. Try to make an app or website from scratch

You’ll encounter a whole new set of problems when you go from doing tutorials to creating an app by yourself. it sets your current skill level and you have something concrete to show other developers witch you can learn a lot from by talking about it. You learn what you don’t know and therefore it will help you to determine the next step.

If i would use the AirB&B treehouse construction example from earlier you could start with a small pink table. It is a small project that can be done in a couple of days.
You care about the comfort of you’re future guests so you want them to have something to put their drinks on.
You’ll learn for example that you don’t know witch material is the best for this use case.
You keep it fun by making it pink.

Now you have the table to show other carpenters and get their feedback.

4. Get a mentor, internship or entry level job.

Once you have some experience and established a sense of what your skill level is you should try to get in contact with developers who are more experienced than you. Together you can determine what you need to do to become the developer you want to be. Do this as soon as you have the change. This will jumpstart your skills as a developer. Start today, tell your coach what you want to accomplish with programming and together you can determine where you should start.

now you have some pointers on were to start your developer journey.

My own journey to becoming a developer

My ‘why’:
i want to leave a positive impact on the world and i believe that programming and digital development overall is a potential powerfull tool for accomplishing this.

My resources:
Developer tea: Great podcast for getting to know the developer
Treehouse: Great video site to learn how to code
Workshops like ‘RailsGirls’ and ‘DjangoGirls’: Great initiatives to meet other developers

My app:
You can see it at my github account.
My mentors:
I met my mentors at initiatives like 'Girls who like code’ and ‘RailsGirls’ and during my developer internship at Alledaags.

If you have questions about becoming a developer or you are already on the same journey please come and talk to me after the talks because i love to help or hear about your journey or the journey you like to start. I am having a lot of fun learning programming and meeting the awesome community. If you want to follow me on my journey look me up on Twitter (@hiltsje). You can read all about my journey on my blog

Dit is voorlopig het laatste artikel dat ik hier zal plaatsen. De focus ligt nu op awesome dingen ontwikkelen met Alledaags en ik heb daar heel veel zin in.