Red-Green-Code

Deliberate practice techniques for software developers

  • Home
  • About
  • Contact
  • Project 462
  • CP FAQ
  • Newsletter

Why is Java I/O Slow?

By Duncan Smith Leave a Comment May 20 6

You can read a lot on Quora about the best language to use for competitive programming. Here are some of the points covered by those questions: C and C++ execute quickly, and their macro support can reduce the amount of code that you end up typing in your solution. A language like Java can be […]

Continue

Solving UVa 11340 in Java

By Duncan Smith Leave a Comment May 13 6

UVa 11340: Newspaper, despite being ranked at only Level 2 difficulty on uHunt, turned out to be rather tricky. Apparently others thought so too, judging by the 11 pages (151+ posts) of discussion on the UVa OJ message board. Many of the message board posts focus on the characters used in the test input. The […]

Continue

The Long Game

By Duncan Smith Leave a Comment May 6 0

The theory of deliberate practice is a popular starting point for online article writers. I subscribed to an alert for the term, and I generally get a few results every day (of varying quality). Its popularity isn’t surprising. Deliberate practice offers a process that anyone can use to get better, assuming they are willing to […]

Continue

Lessons from Competitive Programming 3, Chapter One

By Duncan Smith Leave a Comment Apr 29 4

This post is part of a series of commentaries covering each chapter of Competitive Programming 3 by Steven and Felix Halim. You can find the rest of the posts in the series by visiting my CP3 post category. Many of the problems in the UVa Online Judge are taken directly from past ACM-ICPC contest problems. […]

Continue

Lessons from uHunt Chapter One

By Duncan Smith Leave a Comment Apr 22 0

This post is part of a series that considers what can be learned from the problems in each chapter of uHunt, a tool for competitive programming practice. You can find the rest of the posts in the series by visiting my uHunt post category. This week, I submitted the solution to the last of the […]

Continue

Productivity Habits

By Duncan Smith Leave a Comment Apr 15 0

When you’re working on a serious learning project, especially if you’re applying deliberate practice techniques, it’s essential to have a set of core habits that you can rely on. Deliberate practice is intended to be a demanding process (see elements #4 and #5 from the linked post). This is good because it makes you push […]

Continue

What Are the Important Problems of Your Field?

By Duncan Smith Leave a Comment Apr 8 0

Do these questions sound familiar? What are the important problems of your field? What important problems are you working on? If what you are doing is not important, and if you don’t think it is going to lead to something important, why are you … working on it? They come from a 1986 speech by […]

Continue

Building Mathematical Thinking Skills

By Duncan Smith Leave a Comment Apr 1 0

When people hear the term competitive programming, they naturally think about programming contests and rankings. People who are encountering the term for the first time are just using the literal meaning, while those who are familiar with the topic think about the top competitors that they hear a lot about. But someone who is just […]

Continue

The Missing Piece of the Computer Science Curriculum

By Duncan Smith Leave a Comment Mar 25 0

Despite the increasing availability of alternative options such as online learning sites and coding boot camps, many students who are interested in programming still pick the traditional approach: getting a Computer Science degree. If you plan to do academic research, a degree is really the only option. But for someone who wants to get a […]

Continue

What You Can Learn from Easy Programming Puzzles

By Duncan Smith Leave a Comment Mar 18 0

When you start solving programming puzzles like those on uHunt Chapter 1, what are you learning about? The obvious answer is that you’re learning about competitive programming. After all, uHunt has a companion textbook called Competitive Programming, and many programming puzzle sites are associated with the competitive programming community, or even run their own contests. […]

Continue
  • « Previous Page
  • 1
  • …
  • 46
  • 47
  • 48
  • 49
  • Next Page »

Getting Started

Are you new here? Check out my review posts for a tour of the archives:

  • 2023 in Review: 50 LeetCode Tips
  • 2022 in Review: Content Bots
  • 2021 in Review: Thoughts on Solving Programming Puzzles
  • Lessons from the 2020 LeetCode Monthly Challenges
  • 2019 in Review
  • Competitive Programming Frequently Asked Questions: 2018 In Review
  • What I Learned Working On Time Tortoise in 2017
  • 2016 in Review
  • 2015 in Review
  • 2015 Summer Review

Archives

Recent Posts

  • Do Coding Bots Mean the End of Coding Interviews? December 31, 2024
  • Another Project for 2024 May 8, 2024
  • Dynamic Programming Wrap-Up May 1, 2024
  • LeetCode 91: Decode Ways April 24, 2024
  • LeetCode 70: Climbing Stairs April 17, 2024
  • LeetCode 221: Maximal Square April 10, 2024
  • Using Dynamic Programming for Maximum Product Subarray April 3, 2024
  • LeetCode 62: Unique Paths March 27, 2024
  • LeetCode 416: Partition Equal Subset Sum March 20, 2024
  • LeetCode 1143: Longest Common Subsequence March 13, 2024
Red-Green-Code
  • Home
  • About
  • Contact
  • Project 462
  • CP FAQ
  • Newsletter
Copyright © 2025 Duncan Smith