10 Mistakes Every Rookie Developer Should Avoid
By Octavio Jacobo
So, you’re finally out of school and working in your very first job as a developer. Bravo! However, there are a few bad habits that will keep you stuck in the ‘rookie’ zone until you kick them to the curb. In this post, I’m going to run through those habits, offer some advice, and help you to nail that promotion sooner rather than later.
1. Doing prototypes as final code
Welcome to the real world, kiddo! This is one of the most basic things you need to get your head around as a professional developer. Sure, you know that you wrote those 5000 lines to show a pretty loading animation and get some data from an external source — or whatever. But if the code you write is not clearly legible to other developers, it’s bad code and you should feel bad about yourself.
When developing projects for your work, there are a certain amount of things you must take into consideration; one of which is that you may not be managing the project from beginning to end, so it’s important to write clean beautiful code that you can feel proud about. Oh, and no more I’ll fix it later down the road… Fix it there and then.
2. Not practicing in your free time
Being finished with school doesn’t mean your homework is over (no, really). If you want to get ahead in this game, it’s essential to practice during your free time to gain those missing skills and stay up to speed. About 1.5 million new engineering graduates come from India alone every single year, not everyone will be great but the competition is real, so you better get in shape.
Open up your Buckets to do list and set your weekly goals; schedule small but strong coding exercises, or sign up for that code challenge online you’ve been seeing around on Facebook. Pick anything you want, but pick something and get to it.
3. Don’t just copy and paste someone else’s work!
If you are new to developing code for a job, chances are you don’t know who this man is, nor does the name Jeff Atwood ring any bells (if it does, you know what I’m all about on this one). Well, Jeff is of the owners of StackOverflow — ya know, a pretty teeny-tiny website that you’ll stumble upon more than once in your career as a developer.
If you find an answer on one of the posts from StackOverflow that solves your problem, that’s great, but please don’t copy and paste it like you came up with it yourself. Study it, understand what your problem was in the first place, feel the flow of ideas behind the proposed solution, and make it your own. The ability to be logical and objectively assess your work should always be your number one priority; make sure that you understand what you couldn’t achieve in the first place, and how you did it, AAAAND give credit where credit is due.
4. *I did it because I can*
If you are someone who codes something in a way that only our good lord understands, and then can’t even understand it yourself after a few days, stop it, stop that right now. It’s very tempting to opt for the cheapest, dirtiest solution to a problem. Some people will even just copy a bunch of code from another file and paste it to change one variable.
I once a saw a guy do this:
<center><html>…<html></center>
I know HTML is not a coding language per se, but it IS a markup language, so you get the idea — just because you can doesn’t mean you should. Most of the time, you’ll be under a pretty tight timespan to finish a task, but take a few seconds to think before you start writing something completely out of this world that solves that one specific issue in a way that you know it shouldn’t be done. If it doesn’t look right, it’s probably wrong. Step back from it, just for a bit, and put those brain cells to work.
5. Not submitting your work for review
Don’t be shy, share your code with the world, or at least with your teammates. If there is somebody in charge of code review, go ahead and ask them for a check up. If there is no one with such a role but there are more developers around, ask them to review your code. Getting a few external points of view will help you in the long run. It’s not always easy to submit your work for critique but it’s something that needs to be done if you want to see where/if you’re going wrong and continue to grow and improve. Also, don’t take it personally because the whole point of the critique process is to help you to become even better at that you do.
6. Not reading documentation
You’re using a brand new API, or someone’s framework, and you think to yourself “Hey, I’m just going to look for a quick tutorial instead of reading the whole thing, yeah, surely that’s the way to go!”, and off you go searching for tutorials. Bad idea. Most decent sources will have helping materials available for you to chew on and, trust me, the answer you are looking for is right there. Documentation can be pretty beefy but it’s that way for a reason. Heck I’ll even go ahead and shake my head to the next point:
7. Not documenting your code
Not only is it a good practice to write documentation for your work, you should do it every single time. Not just a quick ‘function F takes parameters A and B and outputs C’, either. Write meaningful documentation and include examples of how to use it. Remember: the code is no longer for yourself anymore, it must be understood by other people.
8. “It works on my side!!”
This is one of the most common phrases you will hear in this field of work, and it’s just not good enough. If, for whatever reason, your projects will work just fine on your local environment but a multitude of problems show up in an outside environment, what do you do? Well, if you’re not prepared, you’ll probably panic.
Be sure to perform testing, beta testing and — if possible — external testing, for what you are doing. It’s also important to note that, after spending some time with your projects, you will become accustomed to them and you won’t recognize simple errors anymore — so make sure to have your code tested by someone else before releasing it.
9. Typing the first thing on your mind right away
Planning should be 50% of your work, if you have started coding without really knowing how to finish the thing, stop, once again — just stop. These basic questions will help you decide whether or not you should go right ahead with your idea:
- Is there a better way to do it?
- Can I reuse this afterwards?
- Have I ignored other solutions for the problem?
- Does it feel wrong?
- Do I know this is completely ludicrous and I’m doing it because I’m out of ideas?
If you answer yes to any of these questions, you may want to rethink your approach to solving the problem. It’s all about learning; you should never stop learning despite your age, career, hobbies, etc. By improving your skills and trying new things on a daily basis, you’ll become a more open minded person and an experienced developer with the knowledge required to tackle any problem that arises.
10. Not reading this very document
Be honest, have you ever looked up the most common mistakes when learning to drive, or the difference between drawing pencils 9h, 4h, 2h, hb, 2b, etc…? Often, we can be a bit too confident in our own skills, or we simply decide to stay within our comfort zones. Most people work that way, even I — your humble writer, but we need to be more critical of our own work if we want to increase our level of expertise.
I hope you enjoyed this article. Assuming you are here for a reason, I wish you good luck on your new adventures and welcome you to the world of development. Enjoy your stay and get that coffee maker going! Farewell.
About Me:
My name is Octavio but everybody calls me Miyagi (yeah like in the movie), I live at Morelia Michoacán, México, and I’m 30 years old. I’m a developer at Buckets.co in charge of the mobile app for iOS. I’ve started working with this amazing team about 4 months ago.
I’m lucky enough to have had a very good experience working with these guys, the kind of feeling you get when everybody involved is an expert at what they do. I like video games and I think that has helped me to connect with my co-workers too — fun times!
______________________________
Thanks For Reading!
Buckets helps to supercharge collaboration and organization needs across the world. If you enjoyed reading this post, please let us know by clicking on the ❤ below!
To sign up for Buckets, just click here.
For regular updates from the Buckets team, you can also catch us on Twitter @bucketsdotco.