code-for-a-living July 28, 2021

700,000 lines of code, 20 years, and one developer: How Dwarf Fortress is built

Dwarf Fortress is one of those oddball passion projects that’s broken into Internet consciousness. It’s a free game where you play either an adventurer or a fortress full of dwarves in a randomly generated fantasy world. The simulation runs deep, with new games creating multiple civilizations with histories, mythologies, and artifacts. I reached out to him to see how he’s managed a single, growing codebase over 15+ years, the perils of pathing, and debugging dead cats. Our conversation below has been edited for clarity. 
Image
code-for-a-living July 24, 2021

Level Up: Linear Regression in Python – Part 8

In the eighth and final lesson of the series we’ll practice everything we’ve learned to date by loading and preparing some data, fitting a few different models, and comparing them. This is an open-ended session where we’ll examine some questions from our audience and demonstrate what a data analysis workflow could look like. If you…
Podcast logo The Stack Overflow Podcast is a weekly conversation about working in software development, learning to code, and the art and culture of computer programming.
Image
code-for-a-living July 21, 2021

Why you should build on Kubernetes from day one

If you’re building a new app today, it might be worth taking a closer look at making it cloud-native and using Kubernetes from the jump. The effort to set up Kubernetes is less than you think. Certainly, it’s less than the effort it would take to refactor your app later on to support containerization. 
Image
code-for-a-living July 5, 2021

Best practices for writing code comments

While there are many resources to help programmers write better code—such as books and static analyzers—there are few for writing better comments. While it's easy to measure the quantity of comments in a program, it's hard to measure the quality, and the two are not necessarily correlated. A bad comment is worse than no comment at all. Here are some rules to help you achieve a happy medium.
Image
code-for-a-living July 3, 2021

Level Up: Linear Regression in Python – Part 7

In the seventh lesson of the series we’ll discuss some methods for comparing linear regression models. In the process, we’ll learn about the problem of overfitting and investigate some of the pros and cons of various evaluation methods (such as R-squared, adjusted R-squared, log likelihood, AIC, and BIC). We’ll also continue to practice our Python…