Hands-on Learning for Cassandra

Katacoda scenarios now available on O’Reilly Learning site

Jeff Carpenter
4 min readAug 29, 2020

It’s been almost 4 months since the release of Cassandra: The Definitive Guide, 3rd edition. The response to the book has been great and I’m really grateful to my employer, DataStax, for sponsoring the book and making a digital copy available for free.

I’m writing to share about a new companion project I’ve had the chance to create. If you’ve read the book, you’ve seen that it contains quite a few code samples in CQL, Java, and more. It’s always been my desire to make it simple for readers to leverage these code samples without having to type out each individual command. To this end, for the 2nd edition of the book, I put together some scripts and made them available on GitHub, but for the 3rd edition there’s an exciting new option available — Katacoda. Here’s an example of what these scenarios look like:

The Get to Know CQL scenario teaches you basic syntax in a few quick steps

In all, there are 17 different scenarios that I’ve developed for the O’Reilly Learning site, grouped into four short courses:

  • Getting Started with Cassandra — this string is based on Chapter 3, Installing Cassandra, and Chapter 4, The Cassandra Query Language
  • Data Modeling with Cassandra — This string is based on Chapter 5, Cassandra Data Modeling, and also brings in some of the advanced topics from Chapter 7, Application Development with Cassandra
  • Application Development with DataStax Java Driver — This string is based on Chapter 8, Application Development with Drivers
  • Apache Cassandra Integrations — This string is based on Chapter 15, Migrating and Integrating

The development process

Writing the scenarios was a fun experience, as I really enjoyed the process of creating “learning as code”, carrying on the same toolset and process I shared about previously in my post Books as Code.

I write Katacoda scenarios with my go-to dev toolset — IntelliJ and Git

How to find the scenarios

The quickest way to access these scenarios within the site is to use this playlist that walks you through the flow of the chapters and scenarios mentioned above.

The playlist mixes text from the book with scenarios that allow you to execute the sample code

While the site does require a subscription, I’m happy to share that O’Reilly has made it possible for users to get a 30-day free trial that will allow you to experience these Cassandra scenarios and a wealth of other content that you’ll want to try out. Use this link to create your account (it will auto-populate the discount code CASSANDRA3E20).

Personally I’ve found learning.oreilly.com to be a super valuable collection of resources that I’ve made frequent use of in my day job, and as an O’Reilly author. As an example, check out this playlist on NoSQL Databases that I helped curate.

Upcoming hands-on workshops

I should also note that I’ll be making use of the Katacoda scenarios in two upcoming workshops on O’Reilly Learning:

Building Applications with Apache Cassandra (Sept 9)— I’ve been doing this course for about three years but have now had the opportunity to rework it so that we use Katacoda scenarios for course exercises.

Building Data Pipelines with Cassandra, Kafka, and Spark (Sept 30)— this is a new course that was originally intended for Strata London this past Spring. I’m really excited about the opportunity to share this content via live training using Katacoda instead!

If you’re reading this later and have already missed the workshops, just check the O’Reilly Live Training page for future dates.

Innovation in learning at DataStax

We’re also leveraging Katacoda at DataStax. Last month I had the privilege to announce the release of our new developer portal. datastax.com/dev features lots of hands on learning for Apache Cassandra and DataStax Astra, our Cassandra-as-a-service offering.

datastax.com/dev features tons of free, hands-on exercises you can do at your own pace

I’m really excited about the emergence of technologies like Katacoda that aid in creating learning experiences directly alongside code, and cloud IDEs like Gitpod that lower the barriers to setting up a development environment. I’m also looking forward to the opportunity we have to combine these technologies with personal interaction — whether online, or hopefully soon in person — and promote a culture of learning together.

Please reach out and let me know what you think of these tools and other ideas you have for improving the learning experience. Thanks for reading!

--

--

Jeff Carpenter

I’m a software engineer who is passionate about distributed systems, architecture, and helping developers succeed. Opinions are my own.