Goodbye 2020

nipafx news #82–30th of December 2020

Nicolai Parlog
nipafx news
Published in
11 min readJan 25, 2021

--

Hi everyone,

this has been a fucked up year. Somehow it seems each recent year managed to be a bit worse than the one before it. Remember Australia being on fire? That was just 12 months ago!

But while 2020 has been challenging for everybody, the real-life impact varied widely. I’m in the fortunate position that I already worked from home and, during the lockdown-esque phases, so could my wife. Stress from the additional workload aside, home-schooling our daughter was no problem either. I caught Covid two weeks ago (of all people — how?!), but had no more than a day of fever, and nobody else we know personally had it. What I want to say is: We’ve been very fortunate and most of the hardships of 2020 (predominantly loss of job, of mental/physical health, or of family and friends) passed us by.

I sincerely hope you and your friends and families are in similarly fortunate situations and I wish you all the strength in the world if you aren’t. If you ever feel like there’s something I can do to help you out, you know how to find me.

The events of 2020 make it challenging to take this newsletter seriously (for me, at least). Like every year, I want to look back at my professional year to see how I did and what needs to be done next, but this year that feels almost pointless. I was very tempted to just go with “Nothing bad happened to us” and leave it at that because that’s the most important outcome.

Then again, challenge and adversity are hardly reasons to stop thinking about what we’re doing. On the contrary, times of crisis are some of the best times to take a break, look back on what’s been going on, and realign our priorities with our understanding of ourselves and the wider world we live in. At least that’s how I see it, so maybe 2020 is even a particularly good year to look back on?

So let’s do it, here’s how 2020 went for me professionally. Caveat:

Naturally, this is an exercise in navel-gazing. I’m doing this more for me than for anybody else because putting my thoughts in writing sorts them out and publishing them makes sure I can’t easily go back and retcon the stuff that didn’t work out. If you’re not into me talking about myself and are here for the Java content, I kindly recommend to skip this [newsletter] and the next.

As usual, I’ll first review my plans for the ending year before looking at my various channels.

I send this newsletter out some Sundays. Or other days. Sometimes not for weeks. But as an actual email. So, subscribe!

Plans for 2020

My motto for 2020 was follow through — I wanted to move the projects I was already working on along and, where that makes sense, bring them to fruition while also regularly publishing new content. Before taking a look at that, I want to quote a small Twitter thread I posted in January 2020:

At the beginning of each year, I make goals for my public self. “write x articles”, “finish project y”, … stuff like that.

I’m not the most disciplined person, though, and after invariably distracting myself with something shiny, I fall behind. (Or at least I think I do.) I start shit-talking myself, being angry for being undisciplined, getting stressed out for not achieving what I set out to do. I get unfocused and fussy, eventually turning what could have been a slight dip in productivity into a steep drop. Even after pulling myself out of it again, the foul taste of being behind, of already having lost the year, never quite goes away.

Then comes the last week of December, the time to reckon… and it always turns out it wasn’t as bad as I thought. Quite the opposite, the actual data looks pretty good. Visitor numbers, income, new projects off the ground, etc. Why did I feel shitty again? Then, a few days later, the next year starts and the cycle begins again.

So for 2020 I want to try something new. I want to visibly track my achievements, so they don’t get lost in the hussle. A (hopefully long) thread of published posts, given presentations, Twitch streams, and YouTube videos. And I’ll start right now.

And would you believe it, it is followed by 54 tweets quoting various things I did in 2020. Admittedly, I was very generous with what counts as a “thing”, but that doesn’t change that the thread fulfilled its purpose: I worried way less about the year being lost just because I didn’t publish something that week.

This was of particular importance in a topsy-turvy year like 2020, which had weeks at a time where I felt I was merely scratching by in between quarantine logistics, home schooling, moving Accento, etc. Adding something to that thread always gave me a small feeling of accomplishment.

With that positive notion under our belt, let’s look at the larger projects before coming to the blog, YouTube, etc.

nipafx.dev

First thing on that list is of course the new website. I’ve written enough about it, so I won’t repeat it here, but suffice it to say that I’m very happy that ~18 months after the first idea the site finally launched in October. It was a lot of work and there’s still plenty to improve, but I enjoy working on it immensely, so I always look forward to making it better.

And once all the small things are fixed, I have a few interesting ideas I want to experiment with to make the site more interactive. Let’s see whether I get to that in 2021.

JUnit Pioneer

JUnit Pioneer is the gift that keeps on giving. I was already happy with it in 2019, when I just started working regularly on it, but 2020 blew that out of the water! To my own surprise, the regular live streams grew a small community around the project and what used to be a one-person side show is now a small team of four active maintainers and a few other contributors. Wow!

Over the summer we polished Pioneer and its infrastructure and in early October released version 1.0. It’s a real project now!

Accento

After spring made it obvious that there wouldn’t be any in-person conferences in 2020, we moved Accento from late September to early July and from a physical location in Karlsruhe to the intertubes. That was a lot of work, but we did it and, according to feedback, we did it well. I’m already looking forward to Accento 2021.

25 Hours of Java

That was so silly, I loved it! A few weeks before Java’s 25th birthday I was lying in bed and couldn’t sleep because I had this stupid idea to do a 25-hour live stream for the occasion and I just couldn’t stop thinking about it. After an hour of tossing and turning I got up and wrote everything down. The next day, the idea still looked solid, so I did it.

And it was great fun! So many cool guests and so many viewers and tons of interaction and everything. I thoroughly enjoyed it and, as far as I can tell, so did everybody else. I’m sure there’ll be something similar in 2021.

Blog

Now it’s time to look at the various channels that I publish content on and see how they’re doing. Lets have a look at the blog first.

Posts of 2020

I published five posts in 2020, which sounds abysmal, but has a (good?) reason: I simply didn’t feel like writing new blog posts for the old site and so I didn’t. The five new ones all came out after the new site launched in October and five posts in three months is ok with me.

Statistics

Statistics are weird this year. The data for the new website has markedly different characteristics and I’m not yet confident that I interpret them correctly. Here’s what’s weird:

  • bounce rate (share of people who leave after one page) is down from ~85% to ~25%
  • number of actions (e.g. page views) is up from ~1.3 to ~2.2
  • the ratio of unique page views to unique visitors went from ~1.3 to ~1 because unique page views shrunk

I just can’t make sense of that. If fewer people bounce after the first page and people do, on average, more actions per visit, than how on earth can there be fewer unique page views per unique visitor? Let alone 1:1 when there are ~2 actions per visit. It is also weird that while unique visitors is stable, unique page views shrunk.

There must be something going on here that I’m missing. And that doesn’t even take general unreliability into account.

All of that aside, let’s see some traffic numbers and compare them to last year’s stats. They’re all unique page views taken with Matomo (the declaration of will not to be tracked is respected).

Overall numbers

In 2020, the blog/site had 344,137 unique page views, down 30% from 490,570 in 2019. It is notable that, like last year, the first quarter was the strongest (~40k/month), with a lull in the summer (30k/month). This year, there was no recovery in the fall, though — quite the opposite the numbers collapsed further (20k/month), surely in part because of the weirdness described above.

So the inevitable finally happened. After two years of coasting on old success while publishing little new stuff, my audience shrunk. That is a jab to the heart, but was to be expected. And it gives me a clear goal for 2021: Publish good content, so the audience will grow again.

Popular posts

Most visited blog posts:

  1. All You Need To Know For Migrating To Java 11 (66,010)
  2. JUnit 5 — Parameterized Tests (27,802)
  3. Five Command Line Options To Hack The Java 9 Module System (13,302)
  4. First Contact With ‘var’ In Java 10 (12,180)
  5. Code First Java Module System Tutorial (10,481)
  6. JUnit 5 Setup in IntelliJ, Eclipse, Maven, and Gradle (10,261)
  7. A JDeps Tutorial — Analyze Your Project’s Dependencies (10,181)
  8. Definitive Guide to Switch Expressions (9,914)
  9. Beware Of findFirst() And findAny() (9,820)
  10. Maven on Java 9 — Six Things You Need To Know (7,906)

Comparing this to last year’s list once again underlines how stagnant the site has been: It’s basically the same list.

Referrers

In most of October and November, Matomo didn’t track referrers, so its numbers are too low. To better compare 2020 to 2019, but also 2021 to 2020, I will also estimate the numbers for 2020 by adding September twice.

After that correction, here are the referrers with more than 1k inbound visits:

  1. Google (229,763 / ~270,000; -18%)
  2. DuckDuckGo (2,579 / ~3,000; -5%)
  3. Twitter (2,431 / ~2,600; -72%)
  4. Bing (1,656 / ~1,950; -15%)
  5. GitHub (1,648 / ~1,900; -32%)

The Twitter drop-off is the most extreme change. I have to admit, that I feel like my tweet interaction went down since Twitter offers an algorithmic timeline, which may point to me not being the most viral tweeter — no news there. I think most of the lost traffic has a much simpler explanation, though: social media likes new things and I didn’t create many.

The decline in search traffic makes sense given that my content is intrinsically dated and I didn’t cover some of the new Java stuff from recent years.

Newsletter

Seven newsletters this year, four of which had a technical focus. Like I said last year, “better than none, I guess”.

The newsletter has 954 subscribers now and while that’s 209 more than last year, not all of you are new subscribers. For some time, I promised to offer online courses and collected email addresses in a separate list. When I moved everything to the new website, I had to redo my mailing list setup as well and took the opportunity to merge the lists. That means out of those 209, about 180 just came over from the course list, which means real growth is close to 30 (vs 139 new subscriptions in 2019).

Either way, I’m glad you’re here. Welcome! :)

YouTube

Another slow year on YouTube.

Videos of 2020

I published two videos this year:

The two videos got 55 and 91 hours of view time, respectively.

Statistics

I’ve got 214 new subscribers this year (for a total of 2,484 subscribers and compared to 804 new subs in 2019). For the videos, I look at view times to reflect engagement (vs. just clicks). In total, people watched 427h (down 42% from 735h in 2019) of my videos — here are the top five:

I didn’t publish very much, so I didn’t expect strong growth and that’s exactly what happened.

Twitch

This has been the only channel I continuously used. Partly because it doesn’t require any preparations, but also because it’s simply a lot of fun. I enjoy hanging out with people on stream while working on various projects and we’ve done a lot of different things:

  • continuous work on JUnit Pioneer
  • exploration of new Java features
  • a few conversations with interesting people from the community
  • a 25h stream for Java’s birthday
  • work on my website
  • a few games

In 2020, I streamed 338h and you watched 4948h, which means there were on average ~15 viewers. The channel has 849 followers (up from 126) and over the whole year, I had 89 subscriptions (up from 0). It has to be said, though, that the numbers are padded considerably by the 25 hour live stream, which was 10 to 20 times larger than average streams.

Looking at the various graphs Twitch offers, I can spot a few patterns towards the end of the year:

  • I streamed less frequently, but longer
  • average viewers is on a slight decline — it hovered around 5–15 in Q2 and Q3, but in Q4 is closer to the lower end of that range
  • similarly, new follows were higher in Q2 and Q3 (even ignoring the 25h stream) than in Q4

While I was initially very content with those numbers, analyzing how they developed over time gives food for thought. Looking over the data and my streams, it seems to better grow my audience, I need to:

  • stream more frequently, but shorter
  • have more varied content than just JUnit Pioneer and my website
  • organize the occasional bigger event
  • publish content on more discoverable platforms (not from this data; it’s just generally good advice)

Now, the question is whether I will necessarily do that. As I pointed out earlier, Twitch is mainly a fun way to engage with you folks while working on something I need to work on anyways. In that light, I’m not sure to how much grow-the-audience-on-Twitch energy I will end up brining to the table in 2021. :)

2020 in numbers

I think it’s safe to say that the good results of the larger projects mentioned earlier (and, you know, handling my portion of the pandemic) came at the cost of everyday content production, which is a shame because it’s still something I enjoy a lot.

Blog:

  • posts published: 5; -50%
  • unique page views: 344,137; -30%
  • from Google: ~270,000; -18%
  • from Twitter: ~2,600; -72%

Newsletter:

  • issues: 7; -12.5%
  • new / total subscribers: 209 / 954

YouTube:

  • videos uploaded: 2; -60%
  • hours watched: 427h; -42%
  • new / total subscribers: 214; -73% / 2,484

Twitch:

  • hours streamed: 338h; +382%
  • hours watched: 4948h; +2100%
  • average views: 15; +370%
  • new / total followers: 723; +470% / 849
  • subscriptions: 89
  • 25-hour live stream

Real live:

  • 7 talks
  • 20 training days
  • active work on JUnit Pioneer
  • Accento 2020

Goodbye 2020

At this point, I’m all out of words for 2020 except: fuck off, you shitty year!

so long … Nicolai

PS: Don’t forget to subscribe or recommend! :)

--

--

Nicolai Parlog
nipafx news

Nicolai is a #Java enthusiast with a passion for learning and sharing — in posts & books; in videos & streams; at conferences & in courses. https://nipafx.dev