I’m often asked the most effective way for a developer to learn FHIR. If it’s your first FHIR project, where do you start?
For the technically minded, jumping straight in and learning by doing is often the best approach. I’ve never been a fan of guided courses spread over multiple days. They tend to “dumb things down” and cater to the weakest students.
I recommend following these 7 steps, in order:
1. Watch James Agnew’s “Intro to FHIR” video
James is a techie, and his is the best walk-through of FHIR out there for a newbie with a technical mindset.
https://www.youtube.com/watch?v=YbQcJj1GqH0
2. Install a local instance of FHIR
If you’re a developer you need a local environment to play in and to work in. Here’s how to set up a Docker instance of the HAPI FHIR server in minutes.
https://hub.docker.com/r/hapiproject/hapi
3. Use Postman to add a few FHIR resources
Here’s a small Patient Bundle I created to get you started. It contains a single patient and some associated resources. POST it to your local FHIR server.
https://darrendevitt.com/fhirs-patient-resource-sample-json/
4. Download Vanya and connect it to your Localhost FHIR instance
Similar to a database client but for FHIR APIs, Vanya is a tool for FHIR developers working with FHIR.
https://vanyalabs.com
5. Add a large and complex bundle of resources to your local FHIR server
Here’s a link to 1,000 sample Patients with complex medical histories. Run a few bundles into your server, then take a look at the data in Vanya.
https://darrendevitt.com/fhir-patient-test-data/
6. Learn how to write FHIR search queries
This post is from a talk I gave at DevDays in 2025. It walks you through 19 search query examples in FHIR, from the most simple to the most complicated.
https://darrendevitt.com/devdays-search-tutorial/
7. Install a FHIR SDK
Pick the SDK for your language, plug it into your test app and start writing code.
https://darrendevitt.com/fhir-sdks-c-java-python-php-etc/
By now you should be up and running. You should have a good grasp of what FHIR is and how to work with it.
At this point, look to the official FHIR documentation for finer details on whichever aspects of FHIR most interest you.
---