Next Up

« Update

Shopping List »

I've tried not to write a book about Functional Programming in Swift for years.

Despite my background in mathematics, I'm mostly self-taught as a programmer and there are people way smarter than me.

But they didn't write the book that I want to write.

I've learned a ton from books, talks, blog posts, conversations, and videos from folks like Chris Eidhof, Rob Napier, T.J. Usiyan, Stephen Cellis, Gwen Weston, Doug Gregor, Ben Cohen and so many others.

But still - the book I'm looking for is a bit different.

I tend to write books for smart people who just don't know the thing I'm writing about. They're really smart - they just don't know this.

My books move too slowly for some people.

That's ok.

If you've read one of my books then you know the approach I take and maybe it's a good approach for you and maybe it isn't.

That's why I'm so glad we have so many great resources available.

Years ago I wrote a book on Mac programming.

I didn't want to write that book either.

I was working for Pragmatic Programmers at the time as an editor and I really wanted James Duncan Davidson to write that book.

He would have been perfect. I loved his Cocoa and Mac books and found his writing to be just the right level and pace for me.

But he was busy. He had other interests and commitments and wasn't interested in taking on a new book project.

So I wrote it and it did quite well.

Dave was my editor and I learned a ton from his comments (although some of my favorites were his eye-rolling at the verbosity of Objective-C).

Dave was exactly my audience. A really smart person who just didn't know this.

And then there was the time...

I hit the wall in high school Chemistry.

I just didn't get it.

My teacher didn't believe me.

I must not be trying hard enough or doing my homework or something. After all, I was doing well in my other subjects including two math classes. How could I not understand Chemistry?

I just didn't get it.

And so I also try to write for the eleventh grade me. The person who is smart enough but just doesn't understand the why.

I try to write why and I try to write how.

I don't go as far or as deep as other books. I think that's ok. My goal is that when you're done with my book you can go to the documentation or to other books and do well.

So after fighting the urge for four years, today I started writing a book about Functional Programming in Swift.