Inspirations


The mind is like a parachute: it only works when it’s open.

Frank Zappa, musician

I would rather be free in my mind, and be locked up in a prison cell, than to be a coward and not be able to say what I want.

Psychologically, you have to have confidence in yourself and this confidence should be based on fact.

Bobby Fischer, chess grandmaster

The best way to predict the future is to create it.

Peter Drucker, management consultant, educator and author

I’m an investigator. A professional respects the traditions of the profession and does what he’s taught to do. An investigator tears it all down, questions everything, asks, ‘What should we be doing?’ It’s a completely different posture.

Cal Meineke, violin luthier
Chicago Mag interview

Dr. Joe Armstrong’s favorite quotes

Dr. Joe Armstrong
Inventor of Erlang, Computer scientist, Physicist

Being really good at C++ is like being really good at using rocks to sharpen sticks.

Thant Tessman

When your hammer is C++, everything begins to look like a thumb.

Steve Hoflich on compl.lang.c++

Books

Hackers & Painters
by Paul Graham

Object Oriented Criticism

With procedural code—particularly pure functional code—even when the division of responsibilities amongst the functions is sub-optimal, new functions and data types can generally be added without making the existing code messier. Object-oriented design, in contrast, much more often punishes programmers for not thinking ahead.

Brian Will on Medium

Because it’s so easy to put responsibilities in the wrong place, object-oriented code doesn’t tolerate incremental design very well. Yes, in theory, perfectly decomposed classes are easily supplemented with additional classes, but in practice, class decompositions are never perfect, and so every new class and method tends to add to the existing confusion and produces more work for later restructuring.

Brian Will on Medium

Additional sources from Yegor256.com:

Object-oriented programming offers a sustainable way to write spaghetti code.

Paul Graham
The Hundred Year Language (2003)

The OO design concept initially proved valuable in the design of graphics systems, graphical user interfaces, and certain kinds of simulation. To the surprise and gradual disillusionment of many, it has proven difficult to demonstrate significant benefits of OO outside those areas.

Eric S. Raymond
The Art of UNIX Programming (2005)

Objects bind functions and data structures together in indivisible units. I think this is a fundamental error since functions and data structures belong in totally different worlds.

Dr. Joe Armstrong
Why OO Sucks (2011)

Industrial Design

Valve is traditionally a software company. Open platforms like the PC and Mac are important to us, as they enable us and our partners to have a robust and direct relationship with customers. We’re frustrated by the lack of innovation in the computer hardware space though, so we’re jumping in. Even basic input, the keyboard and mouse, haven’t really changed in any meaningful way over the years. There’s a real void in the marketplace, and opportunities to create compelling user experiences are being overlooked.

Valve Software job application, creators of Steam
%d bloggers like this: