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 June 2019 had:

  • 641,330 visits
  • generated 820,657 unique page views.
  • 105 pages had more than 1000 views during the month and 27 had over 5000 views.
  • On an average day the site got 25,181 visits and served 29,119 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 don't do much speaking these days. I've given too many talks over the years and have become sick of speaking and the travel it usually entails. Almost all the speaking I do now is arranged by ThoughtWorks, usually by our regional offices. If you're interested in having me speak, the best thing is to get in touch with the ThoughtWorks office in your country. If you do contact ThoughtWorks, remember that I resist speaking as much as I can, so I only do a few events each year. (If ThoughtWorks doesn't operate in your country, it's extremely unlikely I'll be able to speak at your event.)

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 used to be happy with people doing translations and I would put links to them on my site. However, in recent years there's been a lot of spam translations of very low quality - I'm guessing done to improve search engine numbers. For a while I started to check translations by finding someone (usually a ThoughtWorks colleague) who could vouch for their quality. But this is a significant amount of work, so in recent months I've stopped doing that.

I need to rethink what my policy should be for translations, and what to do about the existing links on my site. I've put that on my todo list, but I don't know when I'll get to dealing with it. Until then I won't be linking to any new translations.

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. Libraries and tools that I find particularly handy include Nokogiri, emacs nxml mode, Sass, and Coffeescript. You can find a subset of my toolchain at my github account.

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 isn't your site mobile-friendly?

I wish it were, but sadly I'm the only developer for the site, and I've always had higher priority things to do than put in a properly responsive CSS for it. It's on my todo list, but since it's been sitting there since 2014, it may be a while.

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.

Your new website doesn't look right on IE6.

Internet Explorer 6 (IE6) is old and does not comply with modern web standards. As a result it's a lot of effort to make web sites look good with it and still work well with modern browsers. This, together with the fact that only 3% or so of my traffic comes from IE6, leads me to not try to support IE6. As a result the site will look awkward in IE6. However I do realize that many people have to use IE6 due to corporate standards. Thus I have tried to make the site usable with IE6, even though it will not look as good.