Every Monday we round up some of the last week's top posts, comments, and tweets. If you have any feedback, please leave a comment. â¤ï¸
For-loops are a fundamental concept within programming. Many devs likely remember first encountering them during their first few hours of learning how to code. But are we always using them in the most efficient fashion? Dan Homola summarizes how to execute a tight for-loop in different scenarios:
Of course, that's not the only way to deal with a loop:
The Practical DevDon't worry about the infinite loop, the program eventually crashes.23:53 PM - 29 Mar 2017
Software engineering is just like any other job in that it's easy to burn yourself out. Luckily Moran Danieli-Cohen has a few strategies for staving off that dreadful exhausted feeling.
Sometimes the solution is as simple as making sure the physical objects you rely on everyday aren't getting too shabby, as was mentioned in the comments:
Interestingly you didn't recommend the most basic rule of craftsmanship: check (and replace if necessary) the tools you use. And with "tools" I mean tools! Your keyboard, your mouse, your monitor(s), your chair, your desk.
While none of the above will give you a breakthrough like that one super-productive morning which the gods shone their light upon, their impact will be small but constant throughout the whole year and the evaluation of their suitability requires nearly no technical skill at all. Just the willingness to pay for quality - exactly what you want from your customers too.
These days, you're not really a programmer unless you mention machine learning at least a few times per day. But do you actually know the ins and outs of modern predictive modeling? Kasper Fredenslund walks us through some of the basics using the famous iris dataset:
Deadlines are something that almost every company uses in some form to keep employees focused on the task at hand. But if they cause programmers to write bad code just to keep up with the schedule, then they're really doing the whole team a disservice. Jolas Ladis Las discusses:
If you are going to miss a deadline though, it's best to be honest and communicative:
Missing deadlines is acceptable as long as it's communicated adequately early enough for the manager to take measures.
There's such emphasis put on embedding computer science into our children's curriculum and making sure the next generation can code that sometimes we might forget that plenty of people have been doing this whole software engineering thing for a while. Ben Hilburn discusses what he sees as the responsibilities of a "senior" engineer:
His list of ten core principles was well-received, but also inspired commenters to add on:
Related to John's 9 and 10:
11) Mature engineers encourage diversity. Of people, ideas, and viewpoints.
Most dev.to posts focus on the actual mechanics of writing and deploying good software, but there are of course non-technical aspects to the life of a programmer, especially if you'd like to start a company. Mo Bitar lists some of the key considerations for those looking to start their own business:
Documentation isn't exactly the most exciting part of a programmer's responsibilities, but it certainly is an important task that routinely gets covered by the dev.to community. Last week Tanja Lichtensteiger spoke about her minimalist approach when it comes to documentation:
Whether you agree with her stance or not, take care in crafting your documentation. Otherwise your users may end up with this feeling:
The Practical DevWhen I don't understand the documentation21:09 PM - 18 Nov 2016
That's it for our weekly wrapup! Keep an eye on Dev.to this week for daily content and discussions...and if you miss anything, we'll be sure to recap it next Monday!