Frequently Asked Questions

Expand All

Are you writing another book?

No plans at the moment.

Are your books available in an electronic form?

Yes, there are a few different ways to get ebooks.

  • Pearson (together with O'Reilly) have an online service - Safari Books Online - which allows you to access books over the internet.
  • If you like Kindles, most of my books are available in Amazon's kindle store.
  • If you prefer epub, or just to be independent of Amazon, then Pearson's InformIT site offers ebook purchases. A single purchase allows you to download watermarked ebooks in epub, pdf, and mobi (kindle) formats. These do not use DRM, so you can use them on any device you own.

My books pages link to the appropriate pages on Amazon and InformIT.

I've found an error in one of your books or articles, how do I let you know?

If it's a book, first check the errata page for the book (linked from my books page). If it's not mentioned there then email me and I will get it fixed one way or the other.

Where can I download code from your books?

None of my books have downloadable code in any edible form. See CodeExamples.

Do you have slide presentations for your books?


How much traffic does your website get?

In April 2023 had:

  • 536,897 visits
  • generated 666,612, unique page views.
  • 101 pages had more than 1000 views during the month and 28 had over 5000 views.
  • On an average day the site got 21,426 visits and served 23,823 unique page views.

You can see some more detailed analysis on traffic for 2014 and 2018.

Will you speak at our conference or event?

I have mostly retired from public speaking, as it was never something I enjoyed.

I'd like to contribute an article to your website

While most of this site is my own writing, I do have articles from other authors that I think are useful additions to our understanding of software development. However I don't have time to review many articles so I only publish artices from people whose work I'm already familiar with.

Does your site carry advertising?

None, other than from my employer

I have written an article or framework based on your work, would you review it for me?

Sadly I pretty much always have a large list of material to look at, so I'll almost certainly not have time to read it.

I have this tool that I think you would really be interested in - will you take a look?

As with so many things, lack of time means that I rarely get the chance to take a look at software tools. In particular it isn't part of my role at Thoughtworks to do tool evaluations - indeed the reverse is true. The best way to get me interested in a tool is when a project or two at TW uses it and I start hearing good things from the trenches. I've seen (and done) too many demos to believe you can ever learn about the real value of a tool without trying it out on a real project.

I would like you to write an article for my magazine or web site.

At the moment I only write for my own web site (and don't do enough of that).

Can I get some advice from you about a problem I'm wrestling with?

Almost certainly I can't help much with dealing with issues over email. Like most things it's due to lack of time - I'd rather concentrate my time on my writing. Digging into a problem over email is inherently hard - particularly the kind of design stuff I work on, so even questions that seem simple to answer (such as "which persistence framework should I use?") require a lot of back and forth to answer. In general you would be better off getting some help from my colleagues at Thoughtworks. After all most of what I do these days is steal ideas from them. (For very useful general advice about asking questions over the net make sure you read this.)

Can I republish one of your web articles on my web site?

The short answer is no. The world-wide-web is all about linking and I don't see any advantage to a reader over providing a link to my original, where people can see it in its proper context and there's no danger of missing updates.

Can I syndicate your feed?

Yes. The whole point of feeds is to support syndication, and many sites syndicate my feed. My feed address is

Can I use one of your illustrations or photographs?

Yes, with attribution. Please provide some indication of credit to the author of the illustration, a link to the original article in which the illustration appears, and indicate if you made any changes to it.

If you use an illustration (diagram, photo or similar) from any source it's important to credit it. I look at using an illustration as like using a quotation, it's very bad manners not to credit the author. If you use it in a web article you should provide a link to the original page it came from. Personally I like to credit photos directly with them, as I did for the photo of me on my home page. If you use it a presentation, then I realize that credit text is a distraction, but some form of credit slide at the end is appropriate. This is essential if you provide handouts of your slides.

Can I translate one of your web articles?

I don't object to people doing translations and posting them on their site. If you do post a translation, you must include a link to the original article so that readers can see the original should they need to. With a very few exceptions, I won't link from my site to translations. There are many poor translations out there and I don't have the time and energy to verify that any translations I link to are of decent quality and to keep checking that these translations aren't replaced by junk.

What software do you use to produce your website?

I've used custom software for building this site since I started it. The sources for the site are in a custom vocabulary of XML which I transform into HTML using a suite of Ruby scripts. The codebase totals around 15 KLOC, mostly Ruby. The resulting site is a static site - just files with HTML, CSS, and a little Javascript. I deploy to my server using rsync.

Is there a way to add comments to your blog?

Sadly no. Part of the reason is I'd have to write that capability (since my site is all custom code). But the main reason is that I don't want to deal with comment spam. If you have thoughts, do email me, but don't expect a rapid answer.

Why is your job title "Chief Scientist"

It's a common title in the software world, often given to someone who has a public facing technical role. I enjoy the irony of it - after all I'm chief of nobody and don't do any science.

Do you still write code?

That depends on what you consider to be "write code". I don't spend any time these days working with teams on enterprise applications. That's why I see my role as channeling the good ideas from my Thoughtworks colleagues and other contacts who still do this work. But I do regularly generate stack traces, some of which come from the code examples I use to illustrate my writing, and most of which comes from ongoing development of the custom software I use to produce this site.

Do you have slides available for a talk you've given?

I design slides to be a visual channel while I'm talking - as a consequence they don't make any sense without me speaking. If you want to refer to a talk I've done you'll probably find a link on my videos page. This contains links to articles that cover the material in the talk and any videos made of that talk.