Week 6

Starting Cassandra: Some Potential Initial Commits

Hello everyone! Last week I wrote about how I decided that Apache Cassandra will be the first open source project I will contribute to. Since then, I have downloaded the application, played with it on my local machine, and learned a bit about its internals. This book is a fantastic resource for anybody interested. This Udemy course is also decent for getting started with Apache Cassandra.

After getting comfortable with Cassandra’s internals, concepts, and some basic queries, I decided to look for issues to tackle.

Here are a few I am interested in solving:

  1. This new feauture for the cqlsh client. I believe I could write this feature because the cqlsh shell probably could easily be updated to record and hold the previous command data internally. Then, on the SHOW HISTORY command, it shouldn’t be hard to output the data collected in that session. Also writing a unit test for this does not seem to be too difficult.

  2. This bug that seems easy to reproduce. This seems a bit tougher than the above issue though. However, I think that because the bug looks easy to reproduce, testing and finding out why it crashes may not be too difficult. I think this issue also has the potential to lead me down a rabbit hole, leading to lots of frustration in the process.

  3. This documentation that needs to be written. This is a very good issue to work on. Not many people like to write documentation, but it has a lot of impact on the community and can be done in about a day. It can also be solved while getting more comfortable with the application, and the community will be very grateful for it. Also, it is one of the first documentation section in the entire project, so it should REALLY be filled out. Apache Cassandra has millions of users, so writing the documentation that is the first frame of reference would be very rewarding. One potential pitfall with this issue is that it is an overview of the entire architecture. This may be difficult to write.

  4. And this documentation that needs to be written. Same as the reason above. Except for this issue is for a smaller piece of the architecture. It does not bring the level of impact as the other issue above, but it may be a better place to start.

  5. Answering questions from the users, writing more robust unit tests and reproducing bugs on Jira seem like great ways to contribute. The community will greatly appreciate it, and it will get me more comfortable with the system,

That is all for today. I will post next week on which issue I choose and my next first steps into the Apache Cassandra community.

Written before or on March 7, 2019