Malcolm Sparks

Technical Director

Malcolm Sparks has been programming computers since 1981.

During the 80s he wrote a number of games in 68000 assembler for the Atari ST, and almost had a title published by Electronic Arts. In 1993, he won an award for his final year undergraduate project at Warwick University, a vector-based satellite navigation system for cars, written in C++ and XWin.

Malcolm’s first jobs after university led him into Unix systems administration and from there to becoming an Oracle DBA, before finding a route back into full-time programming with Java in 1996.

Clojure

Malcolm is a Clojure expert, systems designer and builder. He introduced Clojure (and Git!) to Deutsche Bank in 2009 and hasn’t looked back!

Malcolm is a prolific library author and responsible for many of JUXT’s open-source libraries on GitHub.

HTTP

Malcolm has been building web APIs for customers for over a decade and is intimately acquainted with the HTTP specifications.

He has authored or contributed to a number of web libraries that assist in the creation of HTTP-based services, including plugboard, Liberator and is the primary force behind JUXT’s own acclaimed web library yada.

Making the right decisions when building web APIs is critical to success. If you are building, or have built, a web API inside your organisation, Malcolm is available to provide expert guidance and feedback, and to facilitate reviews.

Modularity

Malcolm has been thinking about and building modular architectures for medium-size software systems for 15 years. During that time he has won an award for his modular packaging technology used at IONA Technologies, has consulted on modular build systems used at the BBC, and writes about and demonstrates modular software in Clojure at modularity.org. He is the primary author of JUXT’s modular project.

Middleware

Malcolm has a long history in distributed systems. In 1998 he built one of the first Java EJB servers - EJBHome - which was acquired by IONA Technologies the following year. At IONA he co-led the team that created their J2EE application server - one of the first to receive a compatibility certification from Sun. Malcolm built the first version of the JSP engine, sitting on Sun’s EJB 2.0 technical committee and won the President’s Award for revolutionising IONA’s approach to product packaging.

malcolm maths
Malcolm talking at ClojuTRE 2016 on 'The Universe As A Value'

Agile

At IONA, Malcolm met Kent Beck and learned about XP.

In 2003, Malcolm built jcoverage, which became Coburtura, still a hugely popular tool for measuring test code coverage for Java.

JUXT

In 2012, Malcolm and Jon Pither founded JUXT.

Malcolm's Blogs

clojure  
Aug 15, 2019
mal
by Malcolm Sparks
opensource   clojure  
Feb 01, 2019
mal
by Malcolm Sparks
opensource   clojure  
Dec 12, 2018
Edging forward an update about our Edge project
mal
by Malcolm Sparks
clojure  
Jan 17, 2018
Parsing text with clojure.spec The library that keeps on givin'
mal
by Malcolm Sparks
clojure   jobs  
Jan 04, 2018
mal
by Malcolm Sparks
clojure   jobs  
Aug 27, 2017
mal
by Malcolm Sparks
opensource   clojure  
Jun 02, 2017
Speak friend and enter! Authenticating web requests with yada
mal
by Malcolm Sparks
opensource   clojure  
Mar 20, 2017
Of Routes and Resources Understanding URLs and web resources in yada
mal
by Malcolm Sparks
clojure   xt16  
Mar 08, 2017
XT16 - Tommy Hall Unlimited Register Machines
mal
by Malcolm Sparks
clojure  
Feb 28, 2017
CloudBleed What programming languages have to do with safety, and why it matters
mal
by Malcolm Sparks
clojure   xt16  
Feb 09, 2017
XT16 - Frankie Sardo ClojureScript Without Boundaries (with live coding)
mal
by Malcolm Sparks
feedback   clojure  
Jan 27, 2017
'Live' programming, server-side Using instant feedback to develop server-driven websites
mal
by Malcolm Sparks
clojure   xt16  
Jan 13, 2017
XT16 - Portia Tung Play for Your Life
mal
by Malcolm Sparks
clojure   xt16  
Dec 22, 2016
XT16 - Karsten Schmidt Low fat computing
mal
by Malcolm Sparks
clojure  
Sep 14, 2016
ClojuTRE Report - 2016 Personal reflections on a great Clojure conference
mal
by Malcolm Sparks
clojure   xt16  
Jul 21, 2016
Meet up with Karsten Schmidt If you go down to the woods today…
mal
by Malcolm Sparks
opensource   clojure  
Jul 05, 2016
Edge A complete Clojure project you can leap from
mal
by Malcolm Sparks
opensource   clojure  
Jun 22, 2016
Concerns with Ring Part Two of a series introducing yada
mal
by Malcolm Sparks
clojure   xt16  
Jun 21, 2016
The 10-year-old test Building for accessibility
mal
by Malcolm Sparks
opensource   clojure  
Jun 06, 2016
Introducing yada A new approach to creating API services on the web
mal
by Malcolm Sparks
opensource   clojure  
May 03, 2016
Configuration: Make it obvious! Avoid misleading application configuration schemes by being explicit
mal
by Malcolm Sparks
clojure   training  
Feb 10, 2016
How to build an Om Next Remote Notes from a training course
mal
by Malcolm Sparks
clojure   tech  
Jan 05, 2016
Data Macros Expanding abbreviated data literals
mal
by Malcolm Sparks
clojure  
Oct 08, 2015
Upcoming talks at Skills Matter Next Monday at CodeNode
mal
by Malcolm Sparks
clojure   tech  
Oct 06, 2015
javadoc from the repl How to launch javadoc in your REPL
mal
by Malcolm Sparks
opensource   clojure  
Sep 23, 2015
iota Cheer up your testing with this small library
mal
by Malcolm Sparks
clojure   macros  
Jun 25, 2015
Component, meet Schema How to validate Clojure component systems
mal
by Malcolm Sparks
clojure   transducers  
Jun 02, 2015
Processing documents with transducers Using transducers to extract information from XML, JSON and other documents
mal
by Malcolm Sparks
clojure   training  
Apr 24, 2015
mal
by Malcolm Sparks