Info-Ops II
Minimum price
Suggested price

Info-Ops II

Build Things Right.

About the Book

Technology is applied philosophy. It's critical to understand that concept if you want to build things right, whether it's a new science or a computer program. We create useful tools to explore and understand the universe around us based on rigorous and consistent application of philosophy inside a formal system. We make our code and and work life better right now by applying what we learned in book two to our code and processes. Each action we take to build things right is better than countless other actions we take learning about the universe around us.

This book is about thinking and programming. It’s not about thinking. It’s not about programming. There are plenty of books that promise deep thinking and fill your head with fluff. There are plenty of books that promise to Learn you some Java in 21 days and leave you with — 21 days worth of Java. This is not one of those books.

I’m turned on by learning cool stuff, and by coding cool stuff. Maybe you are too. I’ve been fortunate enough to be able to spend decades coding cool stuff. And when I wasn’t doing that, I was teaching people how to code cool stuff. And when I wasn’t doing that, I was helping teams and startups to work together to code cool stuff and enjoy themselves doing it. And I’ve enjoyed every bit of it.

There’s a fuck-ton of great authors out there who know a whole lot more than I do. They’ll tell you how to think, how to cultivate the proper mindset to maximize your chances to achieve success. They’ll tell you the right way to write code, good code, smart code, code that will impress all the cool kids. These guys are a lot smarter than I am and they have a lot of great ideas. You should read them.

There’s only one reason why you should read this book, and that’s because you’re a certain kind of person. The kind of person who thinks, after reading about those other guys, yeah, that’s great, but…

About the Author

Daniel Markham
Daniel Markham

Daniel wrote his first contract program when he was 16 for a local bookkeeper using BASIC and an Apple IIe. Since then, he's spent his career at the intersection of what people need and teams that make good things happen. He ran a local software shop, consulted nationally as a programmer, and spoke at several conferences. As his consulting career continued, he moved from senior developer to tech lead, then architect, then architect team lead, then technical project manager, then release manager.

As an active coder and manager, for the last several years Daniel has spent time with clients as an Agile/XP Technical Coach, helping them rediscover how to discover and create value at speed. His clients include several Fortune 100 companies all over North America. He appears along with Uncle Bob in the Clean Coder F# Case Study.

Table of Contents

    • Preface
  • Dyads and Triads: The Gap Between Logic and Language
    • 1. From Logic To Language
      • Prelude
      • What’s In A Name?
      • In The Beginning: Dyads
      • Life Arrives: Organisms Add A New Level Of Complexity To Dyads
      • Life Changes Things
      • Evolution Makes Things Even More Complicated
      • Dyads Get Abstract
      • Signs Evolve: Internal Abstraction Layer + Language = Signs
      • So What?
    • 2. Naming Things: Logic’s Problem With Language
      • Birth Of Language
      • Language Demands Triads
      • Helen Keller And Triads
      • Children Know Something Animals Don’t
      • Why That Last Coder Couldn’t Name Anything Right
    • 3. From Language To Logic
      • Wittgenstein
      • Science!
    • 4. Language’s Problem With Logic
      • For Such A Failure, Somehow It All Works Anyway
      • What Up?
      • Translating Wittgenstein Into Peirce
      • Everyday, Practical Analysis
      • Programming Is Applied Philosophy
      • The Dance
      • Summary
  • Building Better Structures
    • 5. Architectures And Failsafe Programming
      • Types Of Coding Errors
      • Languages And Architectures To The Rescue
      • OOP, There It Is
      • Architecture
      • The Failure Of Domain Models And Moving On To Strategy #117
      • N-Tier Architectures
      • Where We Went Wrong
      • But What About The Errors?
    • 6. Good Enough Programming: Knowing When To Say When
      • Why Are You Coding?
      • Where’s The Coupling?
    • 7. Software Architecture, Star Wars, Mob Programming, and What’s Wrong With Post-Modernism
      • Three companies, six teams, same exact problem
      • Who’s Right and Who’s Wrong?
      • How books work
      • Postmodernism
      • Where Post-Modernism Went Wrong (For Some People)
      • What We Technologists Know That They Don’t
      • Mob Programming
      • Post-Post Modernism, Language As Tool-Making
    • 8. Code Budgets: Budgeting Our Code Like We Do Everything Else
      • How Much For A Line Of Code?
      • So why aren’t we budgeting our code?
      • Less Means More
    • 9. Measure The Quality Of Your Work With Code Cognitive Load (CCL)
      • Computing Code Cognitive Load (CCL) using F#
      • Using .NET Code To Inspect Itself
      • Outside-In Coding
      • Taking a look At Our First Method With CCL
      • Making It More Complicated
      • What About Exceptions?
      • Knowing When To Say When
      • Dynamic Tension
    • 10. Better Functional Programming Through Incremental Strong Typing
      • Last Responsible Moment Isn’t Responsible
      • The Unix Philosophy
      • Functional Programming Architectural Patterns
      • Daniel’s Rules For Functional Coding
      • F# Incremental Strong Typing: Coding Walkthrough
      • Delivering Chunk 1, The First Four Items
      • Delivering Chunk 2, The Next Five Items
      • Delivering Chunk 3: Next Four Items
      • Tests
      • Clean-up
      • Delivering Chunk 4: Final Touches
      • What If We Kept Going?
      • Supercompilers Are The Future
    • 11. Example 2: One-Page Chess
      • That is Never That
      • User Feedback
    • 12. Example 3: AirBlog
      • First Things First: Manage Your Coupling
      • Minimum Increment 1: Journal and Print
      • Minimal Increment 2: Show Me Something. Anything.
      • Minimal Increment 3: Move Any Kind Of Data From Front-to-Back
      • Minimal Increment 4: Components
      • AirBlog Recap
    • 13. Marines, Cynefin, Microservices, and All Domain Warfare
      • The Future Of The Marines
      • Minimum Viable Unit
      • All Domain Warfare Of 2040
      • Analysis Acceptance Criteria
      • Structures, Information, War And The Game Of Life
      • Analysis Commonalities
      • Winning The Game, Microservices And Warfare
    • 14. Test-Driven Infrastructure
      • Our Story Up Until Now In Ten Steps
      • Tests
      • Yin and Yang of ATDD/TDD vs TDI
      • TDI
      • Measuring Friction
      • People To Tests
      • Qualities Of A Good Infrastructure
      • Blue Green Deployment
      • Infrastructure Fuzzing
      • Zero Trust Infrastructures
      • Incremental Test-Driven Infrastructure Development
    • 15. The Platform Is The Enemy
    • 16. We’ve Been Developing Software Backwards
      • Unison
      • Back To Square One
      • Welcome To The Future
      • Bringing it Together
      • Inside-Out And Backwards
    • 17. Supercompilers
      • Maturing Microservices
      • Our Baby App
      • Supercompiler Stage 1
      • DDD
      • CSP et al
      • Supercompilers Defined
      • Supercompiler Stage 2
      • TLA+
      • Beat Me, Punch Me, Make Me Write Transactions
      • Recap
  • Evolving Humans And Machines Together
    • 18. Technology Is Heroin
    • 19. We Gotta Talk About Ethics
      • Please, no more politics!
      • Ground Rules
      • P2P
      • Levels of Ethical Concern in Human-Machine Interaction
    • 20. Data For Language Confusion
      • We Start With Fallacies
      • Rhetorical Devices/Figures Of Speech
      • Welcome To The Play Of Life
      • Fact Systems Are Inevitably Persuasion Systems
      • The Two Language Types
      • A Surprising Metaphorical Answer
      • Interface As Assault
    • 21. Is There A Robot God?
      • Everything Is About Nothing
      • The Unknown
      • The Great Unknown
    • 22. How Can AI Learn Alongside Humans?
      • Marx and Popper
      • Popper’s Proposition
      • How Do We Measure Scientific Tools?
      • How Do We Measure Intelligence?
      • Measuring AGI
      • AGI/AI Conclusions: Getting From Where We Are Today To True AGI
    • 23. That Ain’t AI
      • N-Grams and Markov Chains
      • Turing Test Versus Eliza
      • Fake It Till You Make It
      • Example Experimental Protocols
      • The Problem
    • 24. Don’t Be A Full-Stack Developer, Be A Full-Stack Human
      • From Star Trek to Teenaged Video Games of Death
      • Becoming successful by becoming an expert
      • They were right
    • 25. Synecdoche in programming and organization roles, just not in New York
      • Symbols needing resolution to understand the function
      • Types of interaction required
      • Now For The Synecdoche Part
    • 26. Learning To Learn
    • 27. Learning Using Reverse TDD
    • 28. Cache Invalidation
      • Irreplaceable Benefits Of Object-Oriented Thinking
      • Where To Go From Here?
      • Learning To Forget
      • Self-Improvement Is A Con Game
      • Things We Thought Were True But Were Bullshit
      • Ways To Cleanse Your Mental Palette
      • Misc
    • Appendix A: Types
    • Appendix B: Logical Fallacies
      • Formal Fallacies
      • Propositional Fallacies
      • Quantification Fallacies
      • Formal Syllogistic Fallacies
      • Informal Fallacies
      • Improper Premise Fallacies
      • Faulty Generalization Fallacies
      • Questionable Cause Fallacies
      • Relevance Fallacies
      • Red Herring Fallacies
    • Appendix C: 100 Most Common Words
      • Top 100 Adjectives
      • Top 100 Nouns
    • Appendix D: Curry-Howard Isomorphism
    • Glossary
      • Adios
    • About The Author
  • Notes

Other books by this author

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub