June 24th, 2013

PressJack API

Dave Gildea: Software Engineer at Pressjack

Christian Hasker: Editor at Planet Cassandra, A DataStax Community Service

Christian: Hello Planet Cassandra users, today we have Dave Gildea of Pressjack API; thank you for joining us! Give us a little background about yourself and Pressjack, which seems like a really interesting and exciting application.


Dave: Thanks, my name is Dave Gildea and I am Software Engineer at Pressjack. I have about ten years’ experience, primarily coming from a .Net background. For the last year, I’ve been working on Pressjack, our content curation tool. Pressjack is designed to let anyone take their static web contents and turn it into a really nice, attractive, responsive web magazine that works on any device. It solves the problem of people who have web content but don’t necessarily have the skill-sets to make that content available on an array of devices.


Christian: On Planet Cassandra we have a ton of content now; could we use Pressjack to take something like this interview and lay it out in more of a magazine style and deliver it that way?


Dave: Absolutely, yes. We are designing this to allow you to get content from anywhere. The easiest way we do it is an RSS feed but you can also use individual pages. For example, we have a feature that allows you to have emailed submissions, so people can email in contributions that automatically get posted to your digital magazine; this works on any device as well.


Christian: We are in process of building our first Planet Cassandra newsletter, and we’re looking for nice layouts and easy ways to do it. We should take a look at Pressjack ourselves, for sure.


Dave: Absolutely.


Christian: So you have a .NET background, I’m imagining maybe SQL Server in the past. Would that be accurate?


Dave: Yes, lots of SQL server and MySQL, primarily web development.


Christian: What brought you to Cassandra? .NET and SQL server work out of the box pretty easily; why did you look for something different?


Dave: There were a few reasons but a big one is because of how new our product and type of industry is and I wanted something that allowed us to be very flexible.  I’m just pretty tired of relational databases with the restrictions and seeing constraint errors, and those kinds of things. We wanted something that would be easy to change. We might have to pivot very quickly and change what our stats engine does, which is why we use in Cassandra. Like I said, it needs to be very flexible and Cassandra is as easy to setup now as MySQL or SQL server. The barrier to entry of using Cassandra is now gone; it’s the same as any other offering.


Christian: What did you find different coming from the relational world? How did you wrap your head around the different data model? You had mentioned flexibility… how does the Cassandra data model allow you to think differently than you had in the past?


Dave: The most difficult thing really was coming up with the data model and structuring the schema correctly and getting out of the idea of having normalized data; so, getting my head out of that space was probably the most difficult part. I went through a lot of iterations of our schema before we settled on the one that we thought would work well, and what really works well for us is we use counters at the moment in a lot of places; it’s a little feature of Cassandra that works very well for us in the current stats that we have.


Christian: Working with .NET, we have a driver that’s in beta right now. What are you using as far as the client driver?


Dave: Well actually my background is .NET but what we’re working with at the moment is Celery and Python for one of the components and the other is PHP.


Christian: Okay, great.


Dave: There’re a lot of client drivers out there for Cassandra that work pretty well there.


Christian: Are there any lessons that you learned that you want to pass along to people in the community that are looking to get up-and-running with Apache Cassandra?


Dave: Sure, one thing that I found initially was it was a little bit intimidating; I felt like unless you have massive amounts of data, it’s almost like Cassandra is not for you. But as an actual data store for smaller data, in terms of gigs or smaller terabytes, it works really well!

It’s very easy to set up, and the thing I will say is definitely think about the model. Make sure you’re not trying to build a relational database in Cassandra; you will run into problems later if you do that.


Christian: As far as the community locally there, are you involved in things like meet-ups and energizing the community locally?


Dave: I started just recently getting in contact with some people within my local Ireland community; I have joined the Big Data Ireland group on LinkedIn. We’ll be meeting in Dublin in a couple of months to have a discussion about the kind of problems we’re having with Cassandra and see if there’s any areas where we can help each other out in, any lessons learned and any solutions that might be applicable to everyone.


Christian: Brilliant. It’s a really fun community to be a part of, and absolutely let us know how we can help with your efforts over there.  Dave, thank you very much for talking with us today.


Dave: You too, thanks to you guys at Planet Cassandra and DataStax because without you we’d be struggling to get things done; you’ve made setting up Cassandra really easy, so that’s why we’re using it today!