Paul Butcher

Greater Cambridge Area Contact Info
1K followers 500+ connections

Join to view profile

About

Technology startup veteran and author of software engineering textbooks.

I provide…

Experience & Education

  • Ten Tenths Consulting Limited

View Paul’s full experience

See their title, tenure and more.

or

By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.

Publications

  • Seven Concurrency Models in Seven Weeks: When Threads Unravel

    Pragmatic Bookshelf

    Your software needs to leverage multiple cores, handle thousands of users and terabytes of data, and continue working in the face of both hardware and software failure. Concurrency and parallelism are the keys, and Seven Concurrency Models in Seven Weeks equips you for this new world. See how emerging technologies such as actors and functional programming address issues with traditional threads and locks development. Learn how to exploit the parallelism in your computer’s GPU and leverage…

    Your software needs to leverage multiple cores, handle thousands of users and terabytes of data, and continue working in the face of both hardware and software failure. Concurrency and parallelism are the keys, and Seven Concurrency Models in Seven Weeks equips you for this new world. See how emerging technologies such as actors and functional programming address issues with traditional threads and locks development. Learn how to exploit the parallelism in your computer’s GPU and leverage clusters of machines with MapReduce and Stream Processing. And do it all with the confidence that comes from using tools that help you write crystal clear, high-quality code.

    See publication
  • Great Expectations: Better Testing Through DSLs with Ruby and Scala

    PragPub

    Improve your tests with custom expectations

    See publication
  • Forgive and Remember: Learning from Your Mistakes without Blame

    PragPub

    Some advice to make debugging a learning experience.

    See publication
  • Debug It!: Find, Repair, and Prevent Bugs in Your Code

    Pragmatic Bookshelf

    Debug It! will equip you with the tools, techniques, and approaches to help you tackle any bug with confidence. These secrets of professional debugging illuminate every stage of the bug life cycle, from constructing software that makes debugging easy; through bug detection, reproduction, and diagnosis; to rolling out your eventual fix.

    Whether you’re writing Java or assembly language, targeting servers or embedded micro- controllers, or using agile or traditional approaches, the same…

    Debug It! will equip you with the tools, techniques, and approaches to help you tackle any bug with confidence. These secrets of professional debugging illuminate every stage of the bug life cycle, from constructing software that makes debugging easy; through bug detection, reproduction, and diagnosis; to rolling out your eventual fix.

    Whether you’re writing Java or assembly language, targeting servers or embedded micro- controllers, or using agile or traditional approaches, the same basic bug-fixing principles apply.

    You’ll learn an empirical approach that leverages your software’s unique ability to show you what’s really happening, the importance of finding a reliable and convenient means of reproducing a bug, and how to avoid common pitfalls. You’ll see how to use commonly available tools to automatically detect problems before they’re reported by customers. You’ll construct “self-debugging” software that automatically provides access to crucial internal information and identifies the broken assumptions that lead to bugs.

    See publication
  • Extending JScript

    Dr Dobbs

    Paul extends Microsoft's JScript scripting engine by adding support for constructors and arrays. In the process, he presents JScriptTest, a program that displays a UI that lets you type and execute JScript source.

    See publication
  • Global Synchronisation in Linda

    Concurrency: Practice and Experience

    This paper examines the "Distributed Summation" problem, and its solution in Linda. A number of problems with the current set of primitives are examined, and a new primitive, collect, is proposed.

    See publication
  • A behavioural semantics for Linda-2

    IEE Software Engineering Journal

    Presents a behavioural semantics for the language Linda, written in the specification language Z. The language defined is the dialect commonly referred to as Linda-2. Linda is a co-ordination language, and therefore has to be embedded in a computation language in order to produce a full parallel language. This specification attempts to be (as far as is possible) base language-independent, i.e. as few assumptions as possible are made about the computation language. The author does, however, make…

    Presents a behavioural semantics for the language Linda, written in the specification language Z. The language defined is the dialect commonly referred to as Linda-2. Linda is a co-ordination language, and therefore has to be embedded in a computation language in order to produce a full parallel language. This specification attempts to be (as far as is possible) base language-independent, i.e. as few assumptions as possible are made about the computation language. The author does, however, make some assumptions, in particular that the language is typed. He assumes no knowledge of Linda, but an understanding of Z (or, at least, set theory and predicate calculus) is assumed

    See publication

Recommendations received

View Paul’s full profile

  • See who you know in common
  • Get introduced
  • Contact Paul directly
Join to view full profile

Other similar profiles

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Others named Paul Butcher in United Kingdom

Add new skills with these courses