Skip to content

Instantly share code, notes, and snippets.

View DanielBMarkham's full-sized avatar

Daniel Markham DanielBMarkham

View GitHub Profile

FAQ

Are you looking for me to agree with this book?

Most definitely no. This book is meant to be a fun book that presents new and unusual ideas. As a senior developer, I expect you to have well-reasoned and good opinions based on your own experience. Don't expect me to agree with you, and I won't expect you to agree with me. Let's just exchange experiences and ideas in an atmosphere of friendship. We can disagree later. In fact, once this book is completed, I expect you to help me fix the various errors of my ways. Just not now. Now is a time for me to explain what I've learned in my career, not agree with you.

The first part is boring!

I get that. The first part is the only "super nerdy" part in the entire book. I put it first because I wanted to get it out of the way. The rest of the book just riffs off the first part to have fun in code and life by giving you examples of how the first part is applicable. I figure if I keep showing you examples eventually it's going to sink in. So if you're bo

@DanielBMarkham
DanielBMarkham / Oversimplifying For Fun And Profit.md
Last active January 21, 2020 14:55
Oversimplifying is always wrong, but many times it's useful

YAGNI is an old term from Extreme Programming. It stands for "You Ain't Going To Need It". What the acronym tries to teach is that many, many times, we add new features, UI, or other code structures simply because we want to, not because we have to.

In the programming community, we've long had an argument over static typing versus dynamic typing.

Dynamic typing in many ways is great. You just declare variable names and use them as you want to. It frees the programmer from having to figure out every place and every way a variable may be used. Instead they just use it. I love it for rapid prototyping, for testing, and for a dozen other use cases. Yes, sometimes it drives me crazy, but all programming is like that.

Static, or Strong typing, is great. You just delcare a variable and tell the computer exactly what kind of variable it is. It frees the programmer from having to figure out every place and every way a variable may be used. Instead, if you use it in a bad way, the computer prevents it. I lo

Keybase proof

I hereby claim:

  • I am danielbmarkham on github.
  • I am danielbmarkham (https://keybase.io/danielbmarkham) on keybase.
  • I have a public key ASAcrUmUd39JgYqjX_yZZ834KHQjPqfYat4-UGR4nuox_Qo

To claim this, I am signing this object: