The one thing you need to start out at software development

Ricardo Lopes
The start-out
Published in
3 min readOct 6, 2015

--

Being a software developer is great fun: you get to build new, exciting things just by typing some words on your computer, and you’re even paid to do it. Problem is, it’s not that easy to start.

But there’s one thing that will significantly help you start the career you want in software development, even if you weren’t born speaking computer: the drive to be always learning.

Be curious. Question things around you. And try to learn new things with every opportunity that you’ve got. New knowledge compounds, and even if you feel you’re never going to be good enough to publish your own app, small steps today will be crucial in the future. Don’t learn Swift because you want to get rich selling iPhone apps: learn it because that’s a fun, insightful experience.

I wasn’t born with some unnatural programming talent, and it took me years to start doing interesting projects. When I first learnt about HTML, all I could do were some simple, horribly designed web pages. I didn’t even think about building complex websites, because they were completely out of my reach. But without those first beginner tutorials, I would have never got to where I am today.

Learning something like a new programming language can be a real challenge in the beginning. Here are the tricks I’ve found to keep myself going:

Come up with a project to build

If you’re just copying instructions, you’ll get bored. Think of a simple project beforehand to make learning more interesting. It will be the difference between “this looks too difficult, I’ll just skip this part” and “oh, so that’s how I can make my page look better on mobile”.

But manage your expectations

The guide you’re following won’t result in a serious product at the end. Your project should be like a playground, where you get to test things and fail safely. Also, try not to pick something that is completely out of reach and that goes beyond the guide you’re following.

Share your progress with others

It’s so much easier to get motivated when you’re sharing your experience with other people. Try tweeting/blogging your latest achievements, or finding someone else following the same guide to discuss opinions and compare approaches. Also, summarising is one of the best tricks to better understand what we’ve just learned. By sharing summaries of your progress, you’re also improving your learning.

Think of it like a game

Software development is full of roadblocks. Outdated guides, obscure issues, unhelpful error messages, and so on. It’s easy to get discouraged with all these problems that stand in your way. That’s why it’s critical to view them not as something that’s slowing you down, but rather as challenges of a game. When you’re playing, you want to feel challenged, otherwise you won’t get that sense of achievement. Here it’s the same thing: overcoming these roadblocks is what makes programming so rewarding in the end.

Get ready to fail — and learn from it

Even if you embrace all difficulties as rewarding challenges, you’re still going to feel lost a lot of times. When programming, this is normal. Even experts fail all the time. The trick is to not take it personally and just accept it as part of the programming process. The practise of Test Driven Development (TDD), for instance, is all about introducing failure early on to learn and evolve from there.

So find something you’d like to learn today, even if there’s no obvious immediate outcome, and use these tips to get the most out of it. Happy learning!

Ricardo Lopes is a Ruby developer at FutureLearn (and they’re hiring!). You can follow him on twitter @ricardoplopes.

--

--

Ricardo Lopes
The start-out

Hacker, tech enthusiast, learner, judo black belt and occasional blogger