8 answers
Updated Viewed 269 times Translate

What's the one thing you would do differently if you could travel back in time to where you started your career / coding journey?

As a self-taught web developer, at some point during my coding journey, I got distracted and switched to a different language just out of curiosity. (switch from JavaScript to Python). Three months later, I realized that Python or Data science isn't really my thing. (I definitely see the beauty and power of Python!)
However, I love JavaScript or Front-end web development more than extracting insights from data set.

So for me, I would definitely tell myself to FOCUS on one language if I could travel back in time.

1. What about you?
2. What kind of advice would you give yourself if life can rewind and replay?

I'm asking this question because it allows me learn valuable lessons / insights from others' story! (If you don't mind sharing!)

As always, Thank you for your time in reading this post and sharing your story!
I wish you all the best & take care of yourself!

#career #business #coding #professional #timetravel #focus #programming #webdevelopment #python #javascript #careerguidance #education #learning #careeradvice #careerchoices #technology


+25 Karma if successful
From: You
To: Friend
Subject: Career question for you
15
100% of 11 Pros
100% of 1 Students

8 answers


Updated Translate

Shravan’s Answer

Mastering one language is indeed really important, especially in the initial stages, before we move on to different languages based on the requirements.

From my experience, one of the biggest mistakes I did was blindly copying code from Stackoverflow/ Github without understanding each and every line, be it CSS in Web development or Python in Data science. Later I understood the importance of understanding what each and every line does and why that line is required in the first place. This is especially important when the code breaks or when we want to add an extra functionality which we may not be able to find elsewhere.

Nowadays, I try to write piece of code on paper or text editor without referring to any external source on Internet or the past code I wrote (as far as possible) . The more I am able to do it, the more it gives me the confidence that I can code without any sort of help and by just relying on my brain. My teacher, who was a professional in Cisco for 10+ years always used to say that the code we write on a piece of paper should be so perfect that when we actually execute the code on a computer, it should work in the first instance itself. So this is the level of perfection I am working towards each day.

noted! writing code on a piece of paper is definitely a great practice! Thanks for sharing Shravan! C L.

5
100% of 4 Pros
100% of 1 Students
Updated Translate

Wesley’s Answer

If I could just have done one thing differently, it would be to just go out there and code more. Code because you enjoy coding. Code because you want to try something out. Having the experience from personal projects and being able to put them on my resume have been an immense help, but I still regret not having coded as much as I could have.

Like any other skill, practice improves, and commitment plus geniune interest is valuable in the job market, in addition to being fulfilling to yourself!

The cool thing is, it's never too late. You can always code more, any day any time. Look for problems in your life and see if you can solve them with your skills. I personally swing the way of making practical things. You can do leetcode and all that, but if it's not your cup of tea, you're not going to have feel as satisfying and rewarding to keep doing. Getting good at what you love opens doors to careers doing what you love.

One thing I would also add for your particular case, is that you didn't lose anything by trying out Python. The thing with programming is that it's so many different things, and just like real life, you won't know if you like it 'till you try it. Exploring a different approach to code and just getting that experience and perspective expands your mind (think about how, if a problem comes up that would work nicely in Python, you are more equipped for it) and helps you fine tune where your interests lie.

The tech field is rapid and changes often, so you always have to be light on your feet to adapt to new paradigms, languages, design patterns, etc. No matter what you do, never stop learning!

So true! Wesley! Thanks for sharing! :) C L.

A wonderful answer, Wesley! Enjoyed reading it! Alexander B

3
100% of 2 Pros
100% of 1 Students
Updated Translate

Anand’s Answer

If at all I could travel back in time, I would just take life all the more easily. Will try to have fun with friends and family which I gave away just for the sake of studies. Now, I know studies are important but I took too much into it thereby neglecting precious moments which I could have lived fully.

Apart from above I dont think I would alter anything in life.

2
100% of 1 Pros
100% of 1 Students
Updated Translate

Helen’s Answer

Agree with others, trying something new isn't a bad thing! I see it as a trial and error process to figure out what you like and what you don't like to help you decide what interests you the most. Like others have said, it's all about figuring out your next steps. You may never know you like something until you try it!

I do agree that it is helpful to focus on one language first to help understand the foundations of coding, but don't be afraid to try others! After you pick up one it is easier to pick up another.

The biggest thing would be to find side projects that interests you the most and start building hands on experience through that. Plus, is that you are also building your portfolio too.

Thank you Helen! C L.

1
100% of 1 Students
Updated Translate

Diana’s Answer

First of all, I don't think trying out python is anything you should be regretting! Sure, it might feel like a lot of time was wasted, that could've been focused on something you realize you enjoyed more, but you've actually learned lots. You've learned more about your preferences, but you've also gained experience in a new field. It might feel like you will never use your data science knowledge, but the fact is that data science is everywhere! Imagine if you're applying for a web dev position for the front page of an ecommerce website. If, on top of your JavaScript skills, you show them how you understand the mechanism behind their recommender system, you'll be able to really stand out.

To give you an example from my life, I spent one winter break building a website. It was miserable, and I've decided that I will never be happy as a web developer. When time came to apply for jobs, I knew what jobs to avoid. That really helped narrow down my search, and prevent me from working a job I had no interest in.

As for what I would change if I were to go back in the past, it would be to work more on personal projects, and focus on the foundation of computer science (in demand languages will change, but the foundation never will). I would have also liked to read tech blogs when I was in school. Software engineering field is constantly changing, and unfortunately, a lot of college classes and concepts begin to get outdated fast. So it's important to be up to date with latest news from tech leaders/innovators.

1
100% of 1 Students
Updated Translate

Ashwin’s Answer

Hello C.L,
It's great that you are at a stage in a life where you ask such questions.

First of all, there is nothing wrong in trying out new things. You would not know that you didn't enjoy Python without trying it out. There was something that attracted you to Python first and then you tried and then you didn't enjoy it. There is your lesson, it's not waste of time or resources. It is an important lesson for you that you don't enjoy Python. Now and in the future, "whatever your initial motivation to try out Python" was.. it would not come back and haunt you.

Yes, there are many-many tools and many-many languages, some would keep evolving, some would get absolute, new tools/languages will come in the future. Most important thing is to keep learning and improving your skills. But you can't do it for all of them. You can't learn the entire ocean. Take baby steps and you have to do trial & error as you move forward. It is very much like how you did for Python.
Once you are comfortable with particular language say Javascript, make some time for something new - try it out. If you enjoy then continue otherwise you know you need to move to something different or move back.

Other than that, I would highly recommend to take breaks. Take time off between learnings. Go out, spend time with your friends/family/nature. Pause and shut off your brain from constant learning, there is huge research on how such constant breaks of shutting your brain completely for sometime would help you to learn new things more efficiently and with focus. Breaks constantly help you re-evaluate what you are doing in professional and personal life rather than just going after what rest of the crowd/industry is going after. (I assume you wanted to try out Python because that was the "hottest" language in industry).

When you are trying out something new, always make sure you are doing it with full heart and you are doing one thing at a time.

Always prioritize your personal life over your professional life.

I have learned these lessons in hard way in my life :)

0
Updated Translate

Gautam’s Answer

One thing that I would definitely change especially during my high school and undergrad would be to explore more of what is out there in the world and how other people are using their expertise to improve their society, surroundings, and the world.

My high school was primarily focused on going deep into science and maths, while that was an amazing experience, I shut my eyes to anything other than my academic curriculum. Understanding the application of those concepts in the real world, connecting with people who were applying science and maths to solve problems, and learning from them is something I wish I can tell my younger self.

Similarly, my undergrad experience was centered around building one huge project for three years. I went deep into the project and learnt how to solve problems, create teams, recruit people etc.. While that was a wonderful experience it would have greatly helped to have a mentor from the industry, being aware about how others are solving similar problems, and the different technologies that are out there to solve similar problems.


0
Updated Translate

Travis’s Answer

While it's potentially useful to focus on a single language early in your career when you're still getting your sea legs, staying too focused on a single technology stack can be also a trap. Over the course of your career, technologies will come and go and it will be important that you can transition between them. For example, when I started my career, the existence of the internet was not widely known amongst the general public. PowerBuilder (PowerScript), Delphi (Object Pascal), Visual Basic, and COBOL were where the hot jobs were in my city. I don't think I'd want to be a Delphi or VB specialist right now! (though I'm sure there are still high paying jobs out there keeping legacy systems alive) As somebody who has coded in 30+ languages professionally at this point, I think it's a good idea to pick up a new language every once and awhile and play with it. You'll get to see different design perspectives in both the language and its popular frameworks. Before you know it, you'll also get extremely good at quickly learning new languages.

That being said, precisely _because_ languages come and go, I would focus the majority of personal development efforts on more transferable skills than on specific languages. Examples might include:

Objected Oriented Design Patterns, Functional Programming, Systems Architecture, Test Driven Development, Continuous Integration, Continuous Deployment, etc.

These types of skills translate across languages and technologies and are more durable as a result. In addition, they're super important in the industry but they aren't well taught in school if they're taught at all.

If I were to travel back in time I actually wouldn't do much to change the first few years of my career. Everybody is sort of doing their best to figure things out for the first few years and that's fine. I would go back to the point at which was just starting to become a seasoned developer. At that point, I would be more aggressive at trying to find jobs where I was surrounded by people much smarter and more skilled than myself. I spent some years coasting on being the resident expert when there was much more I could have been learning if I'd been in a more challenging environment. (Also, I'd read the "gang of four" Design Patterns book and everything published by Robert "uncle Bob" Martin.)

0