I agree with the "know your programming idioms" advice. As part of that, I wish more novices boned up their skills on unit testing and simple design principles. At the very least, I wish they concentrated more on writing clear, expressive code.
Studying how to pick good names is not that hard but it's something you don't see many new or even relatively experienced developers caring about much. They tend to focus more on technologies and the nuts and bolts, not so much the craft of writing good software.
Study refactoring and code smells. Get better at recognizing when you have duplication and code that doesn't express its intent well. Study how to write clean code. Elegant code even.
I would suggest that you become aware of how whichever framework/programming language handles internationalization/localization.
While the project(s) which you would be working on may not require this at the beginning, it should be something you investigate before too long.
Not only that the next project for the next company that you work for may require it.
You may want to become somewhat familiar with some of the non programming terms/processes which many programmers use regularly such as:
Before you know it you may get dragged into a 'sprint' which in which some team members discuss 'Jenkins' and/or 'Gradle' and/or 'Maven' issues.
Knowing a bit about these things may prove very helpful.
Most likely other team members will know what these terms/processes are and can/will help you out as well.
There are a number of tools/articles/discussions regarding these processes and tools relate to GitHub.com found here https://github.com/marketplace using "Categories".
“The strongest of all warriors are these two — Time and Patience.” ― Leo Tolstoy, War and Peace
Wow, thanks guys, great response. I've got quite a while left for studying as I've got 4 years of part time uni remaining.
So I'll be sure to note downs and study up in all these areas. I'm well aware that doing something as a hobby and doing something professionally are 2 very different things. So all of you advice is very much appreciated.
Thank you all very much
All of the world's problems can be solved in a garden - Geoff Lawton. Tiny ad:
RavenDB is an Open Source NoSQL Database that’s fully transactional (ACID) across your database