Blog

data.table: Swiss Army Knife for Data Wrangling

While data.table is mostly praised for its speed (which is undeniable), I was impressed with its versatility as well. The ability to manipulate the data in variety of ways using an extremely compact syntax is second to none. Sure it needs a bit of getting used to but the payoffs are phenomenal. I …

Quizme Workflow With Autoquiz

In earlier posts I have discussed in detail the design philosophy and development of quizme and autoquiz. While quizme manages the core functionality (storing quiz data and schedule quiz sessions), autoquiz works as a front end enabling to run quizme from terminal in interactive mode. Here I show …

Autoquiz: A Wrapper to Run Quizme from Terminal

Quizme is an R package that allows you to create a personalized quiz repository and enables you to learn any material efficiently. Autoquiz is a simple wrapper script that allows you to run quizme directly from the terminal window. Here I discuss the advantages of running the tool from terminal as …

Quizme Development

Quizme is an R package that allows you to create a personalized quiz repository and enables you to learn any material efficiently. Here I describe the functional logic underlying this package. I will discuss the layout of data structures employed and briefly describe the role of almost all of the …

Quizme Design

The idea of quizme started with a need to learn R more effectively as I could not spend more than few hours a day outside of my regular life. My first approach to the problem, while I thought was neat, needed a lot of manual intervention. In this design, I had two text files - one containing …

Testing and Continuous Integration in R

Often a useful function will do what we expected it to do. But sometimes it will do the unexpected. It is easy to find and address this unexpected behavior at the time of writing the function but becomes increasingly hard as the time goes by, codebase expands and dependencies become complex. To …

Just Enough... Vim

Vim is an extremely powerful editor. It is a bit scary in the beginning but once you spend a little bit time playing with it, you would start to realize its power. One of the great advantages I feel about learning Vim (when compared to a dedicated IDE) is that it is language neutral. So if you …

Atreus Building Experience

Here I write about my atreus keyboard builing experience. Atreus is a keyboard with very unique features like small form factor, freedom to program any key the way you want, ability to work with any OS without installing any driver and the best of all - the freedom to build it with your own hands …

Building R Package using Command Line

This post describes the process of building an R package without using RStudio. This can come in handy for anyone who is using vim (and of course Nvim-R!) as a code editor for their development work. Alright, let’s get moving. We are going to create a small package offering a new ggplot theme to …

Just Enough... git

This is just a list of git commands I am currently using. There are tons of tutorials out there as well as quite a few cheat sheets. While those are mostly comprehensive resources, I tend to get distracted and try to learn all commands at once without using them in real projects. That doesn’t help …