# Learning to program: A starter guide to stacks and command-line calculators

Curious about how old-school Unix tools can sharpen your programming skills today? This guide walks you through the classic `dc` command-line calculator, showing how Reverse Polish Notation (RPN) and stacks power its design. You’ll not only explore the fundamentals but also build your own simplified version of `dc` in C—managing input, math operations, and stack manipulation along the way.

It’s a hands-on way to strengthen your command-line chops while deepening your understanding of core programming concepts.

## About the Author

Jim Hall is an open source software advocate and developer, best known for usability testing in GNOME and as the founder + project coordinator of FreeDOS. At work, Jim is CEO of Hallmentum, an IT executive consulting company that provides hands-on IT Leadership training, workshops, and coaching.

[Read Jim's Full Bio](/content/authors/jim-hall/index.html)
