BoostPro Computing

BoostCon 2010

Our Vision

Many of our values are driven by one core belief: even more than for computers, programs are for humans.

We believe that the most effective programmers operate with a sense of freedom and confidence, rather than uncertainty and doubt. Our training, and our libraries, are designed to bolster that feeling in our students and in our users.

The primary purpose of source code is communication. Most source code is read by a computer once (during compilation) but is read many times—often by many people—during its lifetime. We read and
re-read our own source code while writing it, our reviewers read it, and we read it again during testing, debugging, maintenance, refactoring, and analysis. Therefore, clarity is paramount. Even
if I am the only one who will ever read my own code, I need to be able to come back in a week, a month, or a year, understand what I’ve written, and see that it is correct.

The primary mechanisms by which we make programs understandable are abstraction and documentation. Simple and powerful abstractions allow us to code in terms of high-level concepts, without
presenting irrelevant details to the reader. The ability to express oneself tersely and rapidly depends upon the availability of and one’s fluency with expressive abstractions.

Documentation relates abstractions in code to the concepts they represent. As such, it is necessarily redundant: how can we claim that code is correct until it has been cross-checked against a
specification that says the same thing? Documentation is one of the main challenges facing the software community at large. Without high-quality documentation, programs seldom achieve maintainability
and tend to resist evolution. At BoostPro, we value documentation highly and actively develop our own documentation skills. As much as anything else, a program is its specification.

News

  • BoostCon 2011: Save the Date

    Mark your calendars! BoostCon 2011 is scheduled for May 15-20, 2011 in Aspen, Colorado.

    More...

  • C++ Next Blog update

    Dave and Sean Parent have organized a study group for Elements of Programming. Are you in?

    More...

  • C++0x, Hot or Not?

    Dave recently visited Sioux Embedded Systems in the Netherlands.

    More...