At first, everyone assumes that web and software development is all about writing tons of code, making stuff! In the same, a lot of people assume that writing is also, just about writing. Those are totally false beliefs and complete misunderstandings of how these two technical specialities work. Today we will be focusing on code only, but writing comes very close to this type of mentality.
For developers, it can be especially tough on the productivity charts, the ability to stay focus for prolonged hours loses its sharpness as time begins to pass and the amount of code you’ve written increases. I would like to imagine that startup environments do provide some sort of relief in terms of being able to relax a lot more, and have a good bunch of smart people around you, but not everyone is able to enjoy those privileges, majority of developers aren’t. So here are a few tips to help you stay sane and focused!
1. Get Your Books On
The web has evolved so much in the last few years, that anyone can become a web developer literally by not reading a single page of any kind of a book. I think our post about Python learning materials is the simple best example of that, while there are some books in that roundup — a lot of the tutorials/resources are of interactive nature, allowing people to learn as they go. Instant gratification definitely has become a thing!
With that in mind, nothing can replace a highly intellectual and well-curated book written by an experienced developer. A book will take you on a special journey of the developer; he will explain his own way of learning the language, and go in detail about the pitfalls he encountered along the way, saving you A LOT of precious coding time. We recommend to check out O’Reilly Media, Wrox and Leanpub for books of developer nature.
2. Get a Mentor
It sounds quite easy, doesn’t it. Well, it all depends on where you live. Literally. When I began programming, I found it incredibly hard to find anyone else in my small town that would do programming on that kind of level already, there were a few people; but their schedules were already tied up with students and other projects. Sometimes, it can mean tough luck to find a decent mentor, but don’t stop trying.
The most obvious benefit of having a mentor is learning from their real-life experiences in the field. You will be privy to their personal tips for overcoming professional challenges, making difficult business decisions or determining whether graduate school is a good investment. Because they know you, mentors and their wealth of knowledge will be far more useful than generic advice columns on the web. — ELISHA HARTWIG
A mentor is someone who will guide you in a way that you will learn all the ins and outs yourself, but sometimes you need a person to be there, to push you in the right direction — without taking much of credit for it. That’s what mentors do, they inspire the things that you overlook at first.
3. Style Guides are Important
Alright, the first two tips were all about learning coding and being on the same page with the latest developments, the following few tips are all about code, and its optimization. To begin with, you need to make sure that you’re fully aware of what a coding style guide is and how it can help you and your team. It just pays to follow a certain style guide, here is an interesting overview as to why it is so.
Your style guide is going to help you immensely with new recruits as well, instead of having to take on their individual coding style, they too, can follow a previously built style guide by you. Saving you a ton of headaches and mistakes along the way. A style guide should be reviewed every few months for optimizations and general review.
4. Deployment Optimization
Code deploying is like adding oil in a pan full of eggs, you simply need it to get the eggs cooking! Typical deployment can take anywhere from 30 to 60 seconds, depending on the size of the project, the system or platform used to deploy, or the general system resources available. It’s not a hard thing to optimize, and everyone will be working under different deployment rules.
For example, if you’re using NPM in your projects, you might be launching each deploy with a set of rules to update each dependency within your project through NPM, which overall is going to slow you down by a significant amount of time already. Learning how to Git properly can be of great use in these situations.
Andy Schwam is one of the people who has been kind enough to share with the community as to what the standard rules for deployment management should be, and what you can do to improve your overall deployment timers.
5. Pick Tools Carefully
Our whole site is 75% tools and libraries that developers and designers can take advantage off straight away. In reality, there is a ridiculous amount of tools out in the market that cater to pretty much any kind of imagination out there. We’ve seen great success with our tools posts, some of which have been viewed over 200,000 times, but there is one simple thing to remember.
Because of the vast amount of tools available, it’s easy to get distracted and lose your focus; especially when something requires of you to learn it. More often than not, you will abandon these new tools within a few days, since implementing them in your current project is simply going to be too much of a hassle.
Watch out for tools and libraries that are new and untested, definitely don’t use them on your production servers. We all know how tempting some of the new stuff coming out can be, but hardly any of it is ready for prime time. Stick to what works, until better alternative start to appear.