Every day we learn something new, people say,… and yet; you may end up in a situation you feel it’d only go further in one direction. You know there is so much outside of the box, and somehow you managed to get stuck inside. At least you don’t know how to get out anymore. That’s what happened to me four years ago.
I ended up making a huge move to break out, relocated and started my second undergraduate studies in the fields of mechatronics and computer science. Retrospectively, this was not the best solution, but at least, it was one. One reason why this had to be so radical was that I occurred to not be aware of sufficient other possibilities to extend my knowledge and skillset adequately. My actual inner vision and motivation were to build up a skillset and to be able to create my own products, i.e. apps or smart-solutions. Thus, a whole second study-program was a bit too much. Programming though was highly interesting because it promises to empower you to reach this goal!
So in this blog-post, I want to address two main learnings of mine, in the hope that you don’t need to make the same mistakes, but get a great head start to learn a specific hard skill, like programming:
- How to get into it?
- Why you should consider E-Learning
To learn programming turned out to be much easier than you maybe think. No need to start over again, no need to stop what you’re doing and you don’t need to start second studies either – but of course, nothing comes from nothing!
How to get into it?
Don’t be delusional
Learning to code is comparable to learning a new language. It will be complicated sometimes, it requires effort, endurance, and continuity. There are parts you won’t like, and parts you’ll love to do. I experienced moments where I simply didn’t want to go further, even though I knew, it’s just one rung of my latter to live my dream. As long as you don’t stop there, those moments pass and so are those tasks. But of course, nothing is perfect, so you can expect that even your dream isn’t as romantic as you want it to be.
When you expect results quickly, you should plan a lot of time and nerves. The more frequently you “speak the language” the more familiar it feels to you. Roughly estimated the latest after 6 focusing months you can code on a pretty satisfactory level!
Set a goal
There are several motivational factors when it comes to learning, of course. Something that extremely helped me was (and still is) my goal, to get my own ideas into life, as apps. I have clear products in my head and they are waiting for me to get them done. During my learning process, I quickly reached the moment when it got crystal clear why I should learn what I learn, what I can do with the new knowledge and how I could use it in my personal project.
So set yourself a goal: An app, website, portal, game or program you always wanted! If you don’t have any clue what your product idea could be: Talk to people, really anybody, and ask what kind of product they always wanted. Once you found something, keep talking about it!
The more you discuss it with people, the more present it is in your head and the higher the motivational-effect will be!
Before you go all-in, you better get yourself informed. With “informed” I don’t suggest to talk to people, read magazines, blog-posts or flyers. Instead put your hands on code asap! If you have a goal and decided on a platform (android/ios/windows app, webpage, or so) you have several options to choose from:
- Khan Academy,
- The Odin Project,
- Free Code Camp,
- Video tutorials on youtube or
- simply search for “my first …”.
Learning to code never have been as easy as it is now! So just start anywhere. You might switch from one to another platform after a few lessons, but that’s part of the process, don’t worry! I decided to learn Java and write my own app, so I ended up with Udacity for now, which is simply amazing! The best part about E-Learning-Platforms is, that most of them are for free and the moment you’d have to pay for something you already know if it’d be worth it, but more of “why I happily ended up with E-Learning” in the second part of this post.
In my opinion: You don’t need to learn the theory before starting, just work towards your goal!
Better sooner than later! There are hardly any reasons why you shouldn’t participate in a hackathon right now already. Even though the name says otherwise, hackathons are not about delivering code or hacking a technical system. It’s rather creating ideas, designs and creative solutions for whatever topic. Anyone can participate: Presentation- or design-skills are just as wanted as programmers or creative folks. It’s mostly for free: food, drinks, contacts and a lot of experience are provided. I found this amazing group (Billige Plätze) and we managed to take away two rewards out of three hackathons so far, in which I hardly committed any code! And then: the moment that you notice that you actually can participate coding will be epic – believe me!
If you don’t happen to have the time or stamina for hackathons, you will be surprised how many Meetups take place around you. Plenty of “Python from zero to hero”-like courses might take place somewhere around you. Check out this app, as a starting point to get involved:
Why you should consider E-Learning
Studies and other “classic” possibilities, like apprenticeships, retraining courses or workshop-series’, mostly come along with a bunch of problems which can turn your motivation into desperation. Of course: (under-)graduate studies and/or apprenticeships are very important stages of one’s career. But you simply shouldn’t expect to get out of there and automatically learned programming. You’ll hardly learn hard-skills, like coding. And yes, …E-Learning is (so far) not a proper official equivalent for your first educational path, yet it may helps you to add that little special something to you CV and empowers you to prove your worth.
On my journey, during the second studies, I faced four main problems:
To start over and/or start learning in a classical way is very expensive. Whether you end up with debt, no sufficient or fewer earnings, or unjustifiable costs. On the one hand this may be a good motivation to get it finished quickly and efficiently, but on the other hand it’s not always so easy to “get through” with either (…also, your goal shouldn’t be to “get through with it” as fast as possible, but to make it as effective as possible!). A lot of E-Learning-Offers are for free, have only some premium-features or are pretty affordable.
Nearly all the classic learning systems contain tests of some classic sort. There will be exams, working papers, (if you’re lucky) projects and at the end, there is this one person telling you if you managed. The result is nearly always the same: Within a (relatively) short period of time, you got to learn or do a lot of stuff. While most of this stuff potentially is crap, you probably stumble upon a few interesting topics, but you’ll lack the time to dig deeper into it. In my own humble opinion, the main problem is, that this system requires you to prove your learning-curve in the blink of an eye, metaphorical speaking. You will never have to do that when you’re actually coding, for example. With programming, it’s mostly the other way around. A lot of E-Learning-Solutions, if they have some sort of test, find proper solutions. That’s where concepts like gamification come into play! Mostly E-Learning-Platforms manage to guide and go with you on the journey and notice your development along the way.
Stuff you don’t need
The main goal of studies and other classic-learning-options are not to make you a specialist or practitioner of some profession. You end up with a lot of broad knowledge (if you don’t forget it again) and somehow not having reached your goal to be able to get something done. Studies, let alone, are not making a programmer out of you, it’s rather the activities along with your studies that can make this transformation happen. I’m sorry to say this, but if you want to learn to code, you don’t need Laplace-transformation, Fourier theory or partial integration. The moment you’d need stuff like this, you are already in spheres where you will and can learn it. If all this broadening-your-horizon would be a small part of the studies – ok! Unfortunately, it’s consuming a huge amount of your time and energy. With E-Learning-Programs you can choose the content yourself. For a profession, like programming, there’s a huge portfolio available. It’s quite likely that there is at least one platform that’s using the right methodology and practices for you.
When you build up your life, you gather more and more materialistic, emotional and social attachments. Putting effort and willpower into learning something new can require a lot of your (current) life. And at some point, I ended up feeling like having to say “no” to everything I’d actually like to do. I sacrificed a lot, due to a guilty conscience or simply learning pressure and stress. E-Learning-Portals mostly let you choose your own pace, give you soft or achievable due dates, and, if well made, still help you to easily stay on track.
Believe me, going all-in, like I did, may sound romantic, enthusiastic and brave… but those are no actual arguments. I’m not saying second studies or classic educational paths are always the wrong way, just don’t consider them the only or best one to learn something new, that seems big now.
So as you may have noticed, the main part that’s holding you back from achieving your goal is you. This border of “not knowing how to get started” is only in your head. Go through my advise, step by step, and you won’t even notice the moment, when you pass the line, that first seemed so far away. Grab that keyboard and let your own show begin. Hopefully, I managed to be the drop on the seed, and you will let the plant grow!
If so, see you at the next hackathon 🙂