If you’re just starting out in programming, you might be feeling overwhelmed by the sheer amount of information out there.
Here are some tips to help you organize your thoughts:
- Start small and build up gradually
- Document your progress.
- Don't compare yourself to others
- Practice, practice, practice
- Don't be afraid to ask for help! This is a great place to do just that!
Remember, learning to code is a journey, not a destination. It takes time, patience, and perseverance. Stay curious and keep learning!
For those of you who are a little more seasoned, what are some things you wish you’d known when you were starting out that would have made your journey a lot smoother?
Top comments (33)
This are some of the tips I can give after almost a decade working as a profesional developer:
wauuuu
you mean "wawu wawu wawu wawwuuu" lol
yeha like wawu wawu!!! lol
I'll say this: Some hype is real, a lot is not. Don't buy into the hype or become to cynical of new things. Try and develop a measured opinion of new things as they come out.
As a newbie, you probably have a hard time gripping the whole perspective of some new things, but also you don't have baked in opinions that hinder some seasoned devs.
All that is to say, just keep an open mind and stay in it for the long haul, and new things that are here to stay will sort themselves out.
Comments aren't usually good in modern development. A lot of seasoned devs will tell you descriptive variables are usually better than comments.
E.g.
Instead of doing this:
//this function formats a date to a string readable format and displays the date with the time
Const dateFunction = () => {...}
Do this instead, and eliminate comments:
Const formatDateToReadableString = () => {...}
Avoiding comments keeps your code way cleaner and much easier to read.
This also distinguishes between an experienced and non experienced dev.
Uriel give @timothydjones comment a chance. It's actually not true that comments are a bad thing. I've been a programmer for over 20 years and what I've learned is that comments are very important in your code, even to yourself. The key in comments is to try never to write WHAT your code does, you write WHY that code was made for. Your code must be clear enough to understand what it does. And now yes, to be clear, properly rename the variables, the functions, the same as the parameters. Avoid short names, unless short names are enough.
I agree that we should name or functions and variables in a descriptive way and write code that's as self-explanatory as possible.
But there are still several kind of useful code comments:
Asking for help is a difficult dance to learn.
I wish I had known earlier the practice of timeboxing activities where uncertainty is high: "I'm gonna work on this for 30 minutes/2 hours. I may be able to solve it all by myself. But if I don't I won't stay in a rabbit hole because I'm too proud, I will go back to my team".
Right!?
There is no shame in asking for help if you've investigated properly and can share what you tried.
Release early, release often 😎…
Build barebones prototypes as fast as you can.
Seeing others use your application will help you understand what direction you need to go in.
That talking to your customers is part of the job, and selling isn't an evil idea. I think many of us start out badly with selling, and struggle later on. Selling is what we do when we try to convince colleagues to try something new, or ask a manager for a raise. It's part of the things we do when negotiating a job offer.
I kinda disagree. I've been a dev for 10 years and very rarely had to talk to the customer. The only times I do is because my code needs to interact with our customer's code through APIs or SSO or something, and I talk to their developer. There are people who are much better at dealing with customers and writing specs than I am, so I'll gladly leave them that job.
Ok, then let's agree it depends on your job
I am just a newbie and I find this really helpful. I must confess that I feel overwhelmed at the sheer volume of materials I need to learn in order to acquire the skills I need as a developer. The task ahead is such that sometimes I have nightmares knowing that there is no escape for me anytime soon.
But then again I discovered that there are wonderful people here willing to lend a helping hand to a brother.
To cut a long story short: the learning is tough and intimidating but the people I find in the Tech community are some of the most wonderful, helpful and smartest people you will find anywhere in the world, and together they have made the task less intimidating and more fun to participate in.
It is my goal to meet some really nice friends here, whom I can learn from and share other life experiences as the journey proceeds.
You are welcome, take the your time to consume the content you find here so you don't get overwhelmed.
As you learn, try to take a break and implement what you've learned so you don't end up in tutorial hell.
I'm a newbie too and share the same feelings described by Mgbejxi.
What do you mean by tutorial hell?
I was watching one just now about flex box. (:
Tutorial hell is when you move from one tutorial to another tutorial without ever building any anything to demonstrate what you've learned.
That I could be a programmer for a living.
Honestly, I avoided it for over a decade because I didn't think I'd be good enough. Instead I started out with the first role I landed, which was "PC Support" and went on to become a sysadmin. I never risked trying to change tack because I thought I wouldn't be able to hold my own against professional software developers.
What nonsense!
Great question and lots of answers below can be used as valuable shortcuts for beginners 👍💯🚀
I created a list of my tips a couple of years ago, too 😉
OMG!
Great list, portfolio (which i'll look again and again) and website.
Thanks for the great tips.