See all blog posts

Learn About GoCQLX, How to Use It, and Common Use Cases at ScyllaDB Summit 2017

ScyllaDB Summit 2017

Programming libraries empower developers to enhance their applications with additional features such as providing connectivity to databases. Not every library is the same but if it is open source, the community can enhance or build new tools with it that can potentially benefit everyone. That’s just what Michal Matczuk of ScyllaDB did with GoCQLX and he will be doing a talk about it at ScyllaDB Summit 2017. Let’s begin the interview to learn more about Michal and his upcoming talk on GoCQLX.

Please tell us about yourself and what you do at ScyllaDB?

I’m a Software Engineer working with ScyllaDB on database management. I’m a Go enthusiast and contributor to many open source projects.

How did you get started as a Go Developer and what do you like about it?

I started with Go while working on a project that involved building a manageable reverse HTTP tunnel. Go turned out to be a perfect tool for the job with a lot of existing software to rely on. I like Go mostly for its conciseness and orientation towards code readability. I also really appreciate it’s fast compile times because I can be more productive.

What will you be talking about at ScyllaDB Summit 2017?

I’ll be talking about a new Open Source project that we released earlier this year called GoCQLX. It aims to provide tools over the Go Cassandra driver GoCQL and streamlines working with the databases for Go applications.

What type of audience will be interested in your talk?

Go programmers and application authors should benefit the most from my talk.

Can you please tell me more about your talk?

This will be an introduction to the library and I’ll show code examples covering much of what can be done with it. I’ll start from common use cases and then dive deeper into more sophisticated use cases.

What are some of the benefits of the GoCQLX?

GoCQLX is all about reducing boilerplate when working with ScyllaDB. It helps eliminate nasty bugs by providing help with writing queries, binding query parameters, and scanning the query results. It makes the code shorter and more resilient to changes and easier to maintain. The snippet below shows how one can automate loading query results into memory with GoCQLX.

stmt, names := qb.Select("gocqlx_test.person").
    Where(qb.In("first_name")).
    ToCql()

q := gocqlx.Query(session.Query(stmt), names).BindMap(qb.M{
     "first_name": []string{"Patricia", "Igy", "Ian"},
})

var people []Person
if err := gocqlx.Select(&people, q.Query); err != nil {
    t.Fatal("select:", err)
}

Where can we learn more information about your talk?

Everyone can learn more from my initial Blog post and the GitHub project page.

What’s the roadmap for the GoCQLx?

There is no official roadmap at this point. We try to get to know what the users want. If you have questions or comments about GoCQLX, you are more than welcome to share it.

How can the people get in touch with you?

The best way to get in touch with me is through email and Twitter.

Thank you very much, Michal. We can not wait to see your talk in person and learn more.

ScyllaDB Summit is taking place in San Francisco, CA on October 24-25. Check out the current agenda on our website to learn about the rest of the talks—including technical talks from the ScyllaDB team, the ScyllaDB roadmap, and a hands-on workshop where you’ll learn how to get the most out of your ScyllaDB cluster.