10 years blogging
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.