A few things I learnt in my journey to where I am today.
Hey guys! This is my first article on Medium and it’s great to finally start. I have always wanted to share my experiences and I’m finally here. Woooh.
So after a lot of C, C++ and Java experimenting (Not really!), I knew I liked programming and I wanted to pursue it further. After long hours of IIT coaching and a little hard work I managed to get into an Engineering College. Here comes the main part of the story - how I became a developer and what would be my advice to college students who want to be developers:
1) The Utter Confusion of what to do?
I had absolutely no clue what to do to become a better programmer. I knew the basic data structures and how to implement them in C++ or Java. I knew there were technologies such as websites, android applications, servers, networks etc. but I didn’t know how to learn them, where to learn from, how long it would take me or anything much actually.
I was that over eager, highly excited and eccentric first year who couldn’t wait to start ripping into code and building the next Windows operating system overnight. Lord, did I have a long way to go.
Figure out what all technologies are currently being used/developed and what you wanna work on.
2) Time and tide wait for none
I learnt that there is no use waiting for someone to come and teach me what all I needed and I finally decided to take the plunge and learn how to develop. I wasn’t a big fan of web technology and was highly fascinated by mobile app development. A lot of people ask me- Do I use this website to learn? Is this course good? How do I get into development? I personally never took any course or anything. I just started learning android right from their developer website and I still consider that one of the best ways to start learning android development.
I never needed to take a course per se to learn any of the development languages I used. I always went through the documentation, saw a few code samples and tried to build a demo app to get an intro and feel of the language. This has been true when I worked on Ionic Framework, React or even some Web Crawling in Python.
Basically, don’t be afraid to start and practically try to implement what you learnt from the get go.
3) Learn how to use Git or any other VCS
Git, GitHub, GitLab, BitBucket are a few examples of Version Control Software (VCS). If you have no clue what that is check the link below.
GitHub is basically my go to place for all code. It easily helps me store code, helps me collaborate with friends who are near or far and is also a great place to showcase what you do as a developer.
VCS can seem hard at first but it can make a huge difference in the long run. Start trying one now.
4) Connect and Network
I found this to be very important. Get to know other people who have the same passion for what you do and connect with them. This will help you in the long run. Build a LinkedIn account, find developer groups, attend meeting, text someone you look up to for help or advice etc. These can be really helpful. There are developer groups for almost all technologies. Some example are the Google Developer Group, FOSS, Student development clubs in colleges etc. LinkedIn is a great place to connect and interact with people from the industry. Feel free to connect with me! :)
Connecting and Networking with peers will help you improve and learn more.
5) Hackathons and Developer Meets
I learnt a lot from Hackathons and going to developer meets, conferences etc. It gave me direct access to technology being used in the industry, feedback from reputed professionals, a new perspective to look at approaching a concept and also an opportunity to learn 10 time more than what I would have alone.
Yes! The first few are hard, you won’t understand a lot, you might not like it but this is where the 4th point comes to the foreground. By networking and connecting with people you will slowly start learning and getting better.
These gave me some of my best feedback and opportunity to nurture my skills.
6) Read and read a lot
On a daily basis I read a number of technology blogs and developer website. This helps me keep in touch with the current trends and the latest developments in any field. These also contain a lot of tutorials and guides to help you become better at multiple things. I also read non-fiction books and a lot of them pertain to CEO’s and their experiences. On a daily basis some of the websites I read are:
Conclusion
These are just a few things that I did and would advise people to do when they are starting off. You will make mistakes but that’s good. Learn from your mistakes, move on and keep developing your skills.
I really hope that you find this article useful. I invite you to participate in the discussion in the comments below, I’m always interested to know your thoughts and happy to answer any questions you might have in your mind.
Thanks for reading! :)