Coming Back to a Programming Language After a Long Hiatus
I had a rather bumpy relationship with Java, up to now I re-started learning Java three times - gave up in my first two attempts, due to various reasons and the third time is the charm, as they say! Learning to code is tough, it can take a long time and can can be frustrating at times, especially at the very early stages - you will be tempted to give up it.
The First (Unsuccessful) Attempt
The first time I tried to learn it was in 2014,
I watched a few online tutorials from some university professor (I can't recall
the name) and at first, on the theoretical side it seemed okay, even though, at
the time I had no programming experience at all. But when the coding part
started I felt so lost and confused like never before, I had honestly thought
that something was wrong with my brain then. Back then (being a smart-ass) I
thought I could learn coding with little effort since it was generally always
easy for me to pick up new things. I had no idea at the time that learning to
code takes a lot of time, practice, dedication and commitment - hacking
away at it constantly is much more important than just being smart. I did not
touch Java for the next four years! But, in the meantime I put in effort to learn
JavaScript and PHP - as I was into learning web development at the time.
Second (Failed) Attempt
The second time was when I was a junior tester, at my second job, just getting acquainted with test automation in a real word project - prior to that I was doing only manual testing in my first company and my only experience with automation was a handful of tutorials I watched online. There were online resources online at the time, but a lot of them were either outdated, not using all the tooling I was supposed to be using at work and the Test Automation University didn't exist at the time. The biggest blocker here was my approach, I wanted to learn a specific combination of tool instead of learning the underlaying fundamental technologies - they were all Java based tools and my Java skills (at the time) were less than ideal.
Working against me was the fact
that I was working on several projects at the same time (three to four projects
usually, as I was a bench consultant) which made focusing on the project with
Java automation more difficult. Yet another difficult thing was the fact that I
was preparing for automation with C# NUnit, Visual Studio, etc. - as the
company was mostly using Microsoft technologies for everything, with the sole
exception of the small Java project I got assigned to. Seeing a finished test
automation framework, which was made by people with close to 10 years of experience,
was also pretty daunting, I knew the basic stuff, but to me, the framework
seems scary and overengineered - now it would make more sense to me
that it did a few years ago.
All in all, I think my superiors might have overestimated my ability at the time, or sold myself as a bigger expert than I really was - which is also possible, I'm quite adapt at bullshiting. To be honest, I can't blame others for my failures (tempting as it may be), the ultimate fault was mine, I just wasn't ready - I had a nasty case of the imposter syndrome, I thought I have to learn everything at once putting too much pressure on myself, instead of learning stuff incrementally in small manageable chunks. After that I was transferred to a different project where I did very little automation - I was mostly performing production support and after not coding for a few next months I resumed learning automation at my own pace.
Third Time's the Charm
The third time I started learning Java unexpectedly in my third company. At first I was supposed to be doing automation in C# on a microservices based project, in a newly formed team of testers. After a few days several unplanned events had occurred, I got the Coronavirus I was on sick-leave for several weeks, one of my co-workers passed away at the time and when I came back from the sick-leave there was a urgent need for a tester on a API-based product. As I was no longer a frightened junior (I got accepted as a mid-level tester) I accepted the challenge, even after I was told that the product was being made using the dreaded Java language!
I figured what the heck, for testing a REST API the language that is made in is was not that important, I was really comfortable using Postman and while I had a pretty good understanding of the HTTP protocol, so this time there was no room for panic. I was told that I should eventually create an API test automation framework and I figured I'd do it in Java - I even surprised myself with that choice. But, I had several reasons behind this Solomonic Solution: the company had a lot of really good Java developers which were practicing Test Driven Development and Pair Programming, meaning that I could (and I have done this) really on their help when I get stuck while coding and another important reason was a result of my research: while Java wasn't some new hot/trendy fancy hipster technology the sheer amount of online resources for automation in Java (Pluralsight, YouTube tutorials from Indian testers and blog posts) seems to outnumber other languages considerably. As a added note, being within a Java environment, it made sense to use Java-based tooling (InteliJ, TestNG/JUnit, Jenkins, Maven etc.) as these tools were very mature, well established, with good documentation and great community support - 90% of the problems I encountered were already solved by someone else. I stopped looking at a language from an emotional perspective and I took a gander at it from a more pragmatic point of view.
My main takeaway would be the following: don't
try to learn everything at once, focus on one thing at a time, make long-term
learning goals and plan your learning (don't be that tutorial-butterfly that
just jumps from one topic to the next one). This way you will break large and
complex topics into a lot smaller ones, which will make it easier to absorb
knowledge which will in turn result in frequent and satisfying small wins, as suggested
in the Dopamine-Driven
Development. Also, don't be a
fanatical supporter of any language or technology stack, even your favourite
one(s) since ultimately these are just tools of our trade (you don't see carpenters talking affectionately about saws and hammers, do ya) which we use to get
the job done - solve a problem for a customer so everyone involved can reap the
benefit$.








Nice blog..clearly explained…Thankyou so much for your wonderful information…Looking for the best programming platforms in Hyderabad contact cyanous software solutions now.
ReplyDeleteBest programming platform services in Hyderabad
Best software & web development company in Hyderabad
Thanks for this post.. The Elegant Training Center of Full Stack Java Developer Course is nothing but complete designing of both websites and applications where the developers need to work from frontend to backend development.
ReplyDeletePython Certification
Autodesk Authorized Training Center
Interior Designing Course in Dubai
Thank you for sharing this valuable article. If any student want to study in India and need proper guidance then visit the link DU SOL M.Com .
ReplyDeleteApart from the regular mode of study that you know, the BCA course is also offered in online and distance mode. BCA distance education in India has become extremely popular, especially after the Covid-19 pandemic. People have realized the advantages of distance learning after the pandemic and are now actively opting for online and distance learning courses.
ReplyDeleteExcellent blog. Thank you so much for sharing with us. If you want to learn coding you can try Lt3 Academy
ReplyDeleteAPTRON Solutions Noida stands tall as the Automation Testing Institute in Noida of choice, where aspirants transform into industry-ready professionals. With a commitment to excellence, cutting-edge training methodologies, and a track record of successful placements, we invite you to embark on your automation testing journey with us. Elevate your skills, and elevate your career at APTRON Solutions Noida – your gateway to a thriving future in automation testing.
ReplyDeleteThank you for sharing such an informative post. I truly appreciate the effort you’ve invested in crafting this valuable content. The clarity of your explanations and engaging writing style make it easy to follow and understand. Great job!
ReplyDeleteIf anyone interested in online mode education visit our website and read some excellent blogs for more information about the online education. website : Map my course
Online MBA, Online MCA
Blogs.
1. Importance Of Online Degree Courses In India
2. Computerized Accounting
Thank you for the info. Starting a web development project with this Software Development Company was transformative. The team's human touch, expertise, and collaborative spirit made the process go smoothly.
ReplyDeleteVisit CMOLDS a leading website development company dubai offering quality and most authentic services in this domain.
ReplyDeleteGreat article in an interesting way although you can visit CMOLDS Dubai a web design and development services company specializing in web and app development services in this domain.
ReplyDeleteOur Manual Testing Training in Noida is designed and delivered by experienced professionals who provide hands-on practical knowledge along with theoretical concepts. Whether you are a beginner or an experienced professional looking to enhance your testing skills, our courses cater to individuals at all levels.
ReplyDeleteWhat an excellent read! Your ability to present the information in a way that's both insightful and engaging is truly commendable. This post not only informed me but also inspired me to think differently about the topic. It's clear you put a lot of thought and effort into crafting this content, and it definitely shows. Thank you for sharing such valuable knowledge—eagerly awaiting your next post!
ReplyDeleteEnrgtech
Stand Alone Programmers
Very good and valuable information.Thanks for Sharing
ReplyDeleteAzure Fundamentals Az-900 Training
Great insights! I really appreciate how clearly you've explained everything. As someone diving into coding and web development, finding reliable hosting like Hosting Mella is crucial for my projects. Your post provided the clarity I needed—keep up the awesome work!
ReplyDeleteThis is Good Idea, Keep It up. I will also Like it and appritiate it.
ReplyDeletenew year wishes 2025
new year messages 2025
new year quotes 2025
New year greetings 2025
Happy birthday wishes
merry christmas wishes
Such a well-researched article! It’s clear you put a lot of effort into this. I’ll be bookmarking this for future reference. Thanks for sharing!
ReplyDeleteAndaman and Nicobar Package for Family
Best Time to Visit the Andaman
Flora and Fauna of Andaman and Nicobar Islands