Equation Solving is the Key to UVa 11236

UVa 11236: Grocery Store is an unusual problem for UVa Online Judge: it takes no input! There’s just a problem statement explaining the rules for finding the output. The lack of input and the mathematical nature of the problem reminds me of the problems on Project Euler. And as with Project Euler, you could cheat […]

Continue

A Git Workflow for Programming Puzzles

If you practice programming puzzles regularly, you probably keep an archive of your solutions. This can be useful for reference when you encounter similar problems. And even if you never look at some of them again, disk space is cheap and source code is small, so why not? The simplest way to save your solutions […]

Continue

Book Review: Deep Work by Cal Newport

For many years, Cal Newport has been writing about ways to get better at doing difficult things. His first three books were manuals for students, advice on learning techniques and where to focus one’s efforts during high school and college. In 2012, he wrote So Good They Can’t Ignore You, about building career capital by […]

Continue

Math Fluency for UVa 927

From time to time, I’ll run across a UVa problem description that makes liberal use of mathematical notation. UVa 927, the first starred problem in uHunt Chapter 3, is one of those. uHunt classifies it as a Level 4 problem, but most of the challenge is in interpreting the problem description. Once you figure out […]

Continue

The Role of Questions and Answers in Learning

Here are two approaches you could take to learn something new: Passive review: Consume an explanation of the topic you’re trying to learn. For example, read a textbook chapter, watch a video lecture, or read an online article on the topic. Active recall: Do an activity that requires you to remember something that you know […]

Continue

Why Measure Your Productivity?

It’s impossible to measure developer productivity. At least, that’s what the experts say. Martin Fowler came to that conclusion over 10 years ago in a classic article, and the consensus hasn’t changed since then. My favorite recent article on the subject is by Jim Bird, a development manager and CTO. So let’s take that as […]

Continue

The Competitive Programming Debate

Which of the following statements best describes your opinion of competitive programming? -2: It is harmful to the software industry, and should be abolished. -1: It’s no worse than any other form of entertainment, but it has no educational value. 0: It may help some people get better at programming, but it’s a niche hobby. […]

Continue

The Time Bank Productivity System

Earlier this year, I wrote a survey of the Productivity Habits that I’m using to keep my project moving along. This week, I’m going to focus on one habit, which I’m calling Time Bank. I’ll also share a handy spreadsheet that makes it easy to try out this system.

Continue