10 years blogging

# COMMENTS

I read Doug Peterson's post this moirning on his 10 years blogging. I realized that I'm also finishing off my 10th year of doing the same. I also noticed that for a second year in a row, I've eclipsed 100 posts. That's an average of a bit under 2 posts a week which is more than I thought particularly when it feels like I go through multi weeks stretches without writing anything.

I thought it would be interesting though to do a slightly deeper dive into my posting habits. My blog archive tells me how many posts I wrote each year.

Year: 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
Posts: 26 4 18 32 55 47 86 87 103 101

Two things pop out. First is in 2011 I only wrote 4 posts. The second is that there was a big increase from 2016 on. That could due to my moving from Stuy to Hunter but I think it's more than that. While it is true that my time is much more flexible than it was as a high school teacher, I've also gotten busier and busier at Hunter and yeat I've still upped my blog output as my Hunter life got more hectic. I'm guessing it's more due to the fact that I made a concerted effort to blog more with the life change and it's stuck.

Still, I wanted to drill down deeper but how to do it easily? I thought about writing a program that would read in the top matter from all my posts, parse the dates and go from there but that was way too much work.

Shell scripting to the rescue!!!!!!!

I've been recently using ripgrep as a tool for searching and navigating code. It's a combination of grep, which lets you search for text patterns in a file and find which traverses directory trees to find files. Ripgrep finds files across a directory tree and looks for patterns in them. It has loads of options and is really fast.

If I wanted to find out how many posts I wrote in Oct, 2017 I would do this:

rg -t org "date:.*2017-10" | wc -l

The -t org says to look at all the .org files in the directory tree and match files with lines matching the regular expression I specified. Then wc -l tells me how many lines which is the number of files.

Here's what I used to get monthly totals



for YEAR in {2010,2011,2012,2013,2014,2015,2016,2017,2018,2019}
do
    for MONTH in {01,02,03,04,05,06,07,08,09,10,11,12}
    do
	t=`rg -t org -t md  "date:.*$YEAR-$MONTH" | wc -l`
	emacs=`rg -t org "date:.*$YEAR-$MONTH" | grep emacs  | wc -l`
	echo $YEAR , $MONTH, $t, $emacs
    done
done

Note that I specified -t org -t md since my older blog posts are markdown not org files and I also pulled out all my *Using Emacs* post counts.

Here are the results (sans emacs separation):

2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 Total
Jan 9 0 3 1 6 3 7 6 5 11 51
Feb 3 0 1 2 7 3 0 9 6 11 42
Mar 1 0 3 1 5 4 1 8 14 5 42
Apr 0 0 2 2 5 0 6 4 15 8 42
May 1 0 1 2 2 2 14 4 4 4 34
Jun 1 0 0 1 2 4 12 9 7 11 47
Jul 0 0 0 4 7 2 5 10 10 12 50
Aug 11 0 0 2 4 4 3 5 7 3 39
Sep 0 0 0 1 5 4 7 7 11 6 41
Oct 0 0 1 9 3 11 9 7 11 9 60
Nov 0 1 3 6 7 7 12 7 7 12 62
Dec 0 3 4 1 2 3 10 11 6 9 49
Total 26 4 18 32 55 47 86 87 103 101 559

Looking at the data I learned a few things. May and June of 2016 stuck out as big posting months but it turned out that I started my Using Emacs series in May 2016 so it seems I had a burst of video posts at the time. I also noticed that once I got started for real in 2013 there doesn't really seem to be a pattern to my posting frequency.

I thought that the summer months would be sparser and August seems so but July not so much - that's probably due to CSTA conference related posts.

I decided not to dive in to a content analysis since I'm pretty inconsistent with tags but maybe I'll try that at some other point.

In any event, I'm glad I'm blogging more rather than less but wish more CS Educators would join in the party.