As I was learning to program, I took part in a few free workshops, among others in the Rails Girls weekend workshop. It was a great and fun adventure, during which I acquired some knowledge. Furthermore, It was a time I gained the courage not only to continue my journey but also – finally – apply for my first job as a programmer.
Rails Girls gave me mentally so much, that as a working programmer I felt a need to pay off my debt. I have already twice mentored during this kind of meeting. Aftermath I was honored to be a guest speaker at a Microverse Lunch & Learn Webinar. I decided to tell the students about my biggest mistakes and doubts which troubled me the most during my journey from non-technical person to the junior Ruby developer. What I found interesting, I realized I am inclined to make the same mistakes today as well. I decided to write it down and start to work against them. If you prefer to watch the video, here we are.
Background
I studied Polish philology. For 10 years books were my realm of study, my hobby in my free time, my source of income (I worked on books design, as a freelance editor, as an academic teacher), they were just my whole life. And then the Ph.D. thesis finishing happened. It was extremely hard two years for me and I felt I was overwhelmed by the literature topics. At that point, I understood it was time for a career switch. Fortunately, I met my colleague who after studying philosophy became a Ruby developer. He encouraged me to try programming. I tried and I knew: that’s it! Here my journey with IT began. I had a theoretically “simple” plan: learn html5, CSS3, SQL, Ruby, and Ruby on Rails. At the end find the job as a junior developer. In reality, I made all possible mistakes you can ever make when you’re learning by yourself.
Tutorials trap
I started with tutorials. It’s totally normal and OK when you begin. Even later when you already have some experience, but you begin a new topic – tutorials are helpful. But when you realize you’re “learning” the same things, which practically means, you do not learn any more – you should just stop doing it. It’s time for building something from scratch. If you do not have an idea for your own program/app – just copy already existing one.
Well rounded junior developer oxymoron
One of the reasons why I followed the next tutorials instead of building something by myself – I explained it to myself – was thinking: I still do not know how Linux works, how to optimize SQL queries, or… whatever! And, to be honest, it was true. But more brutal true is – as a junior developer you will still know nothing.
If your goal is to get the first job as a developer (to learn more, of course) – focus on small topics but be good at them. You don’t have to know the stages of the Linux boot process, but you have to know how to allow your application’s user to edit the blog post.
Top secret: the best programming language exists
I was afraid of starting my own project because my English wasn’t the best. Yeah, I know, there is still a lot to improve in this field. It was difficult for me to create a question to which Google would be able to answer, solving technical problems. As a wanna-be developer, you can find help quickly, if you only know this one the best programming language – English. If a programming language is just a dedicated tool to solve a specific problem, English is a sonic screwdriver. Work on that! By the way, I learn now English reading books… “The Great Gatsby” is immersive…
Feel the force!
There will be thousands of failures and getting stuck with things you are even not able to name. Once I spent 2 days looking for the error which was caused by the wrong place of question mark in my code. Finally, I asked an experienced developer for help. He showed me how to debug and we found a mistake in one minute! It’s good to have a mentor who won’t solve all your problems but show you a path to overcome all difficulties.
Laurel and Hardy
I struggled with a question mark, but when I got to know that a friend of mine put a comma in the wrong place – I understood that I’m not alone here. Especially when you watch too many tutorials where everybody works so quickly and efficiently you can begin to doubt your mind… But the reality means looking for question marks or commas in the wrong place. Sorry for that. It’s truly helpful to be able to see it or talk about it with your co-student. You even don’t to have learn the same language. Just talk about your struggles.
Fear is the path to the dark side
So, to sum up. I followed tutorials too long, I didn’t apply for a job quickly – because I was afraid. Afraid of everything, and that’s stupid. Don’t do that. Be brave. And just develop it.
Work smarter not harder
At least but not last – the biggest mistake I made was working unsystematically. I was learning 2 months, and the next two months were dedicated to finishing a Ph.D. thesis. 60 days with literature turns out to be enough to forget everything you have learned before about CSS. It’s much more better to work 0.5h every day than 3.5h only on Sunday.
Epilogue
I got my first job as a junior developer. I was lost and overwhelmed – I felt like I knew nothing. Indeed there was even more to discover. Today I’m not junior anymore. But I still do explore. And I still feel sometimes lost and overwhelmed, because there is still a lot to find. Simply avoiding all described mistakes – makes my learning much more entertaining and efficient.