by Aaron Contorer - CEO
In 1999 I went to Bill Gates with an idea to create a software
tools group dedicated to shipping complex software faster.
Engineers’ time is valuable, and more importantly, software that
ships on time with fewer defects is worth a lot. I organized a team
that analyzed what was missing from the old toolsets for our most
valuable products. Based on developers’ input, we conceived and
delivered five in-house tools within our first year, spanning areas
from build to source control to localization. I'm proud of the
talented and motivated people who chose to be on that team, and the
positive impact it had: If you have a copy of Windows or Office
today, it probably arrived on your desk a little sooner and a
little better thanks to the Productivity Tools Team. From a
business point of view, Microsoft got its tools investment back
many times over.
Since then a lot has changed, but one thing has not: software is
still hard to write. Too often software projects miss schedules and
products are shipped with bugs. Meanwhile the wizards of electrical
engineering have made massive progress in areas like multicores,
vector processors, GPGPUs, hybrid processors, and other ostensibly
"unconventional" architectures. Techniques once reserved for exotic
supercomputers are now found in everything from Web servers to
network routers to phones. As systems become more parallel and
hybridized, requiring complex new logic in our code, and market
forces demand we make enhancements more rapidly, software just gets
harder and harder to write, debug, and test.
In the face of all these challenges, the one exciting
development is the maturing of Functional Programming; in
particular what we consider to be the most robust FP system,
Haskell. Developers who use Haskell often report 2x or higher
productivity improvements, even as their bug count is significantly
reduced. Add in Haskell's great support for parallel processing,
domain-specific languages, and numerous other truly modern language
features, and you get the new best solution for a wide variety of
applications. This outstanding FP system didn't happen by accident,
it is the result of 20 years of hard work and selfless
collaboration involving people from institutions all over the
world. The Haskell community is a remarkable accomplishment in
We created FP Complete to realize the dream of Functional
Programming: unprecedented software power, accuracy, and
flexibility available to a broad number of programmers. We want to
double the productivity of the world's outstanding software
developers, while slashing the number of bugs and unleashing the
dramatic computing power of modern hardware designs.
FP Complete will be a good citizen in the Haskell community.
We'll be helping to complete and maintain the tool sets, the
libraries, the platform and integration support, as well as the
human and business infrastructure needed to enable Haskell
adoption. We'll be bringing together current and potential users,
supplier firms, and our own experts. A major new platform isn't a
one-company show. We look forward to working with you.
Do you like this blog post and need help with DevOps, Rust or functional programming? Contact us.