Jay Little
So I Went a Little Viral and Survived

04/21/2023 18:02:16

Everybody knows I got a big mouth. That's why I have a domain for my name and I've been posting tripe to it for over two decades now. The surprising part is that every once in awhile I say something that resonates with other people. That happened last week and I'm happy to report that my website handled it wonderfully.

For starters, if you haven't read my post "Low Code Software Development Is A Lie", you should give it a go. The internet seemed to enjoy reading it for the most part. I generally don't do any self-promotion of posts short of directly sending links to a few friends over Discord that I think might be interested in the topic. So at least one of my few dedicated readers (who presumably use the RSS feed to keep tabs on my content), posted it to Reddit and YCombinator. A riveting discussion was had by all. Note: I did not participate in any of the discussions as I had already spoken my piece on this topic. I just enjoyed reading what others had to say about it.

So just how viral did I go? Well in big boy internet terms, not anything to write home about. But the initial surge was about a 100x increase in traffic on my site that quickly ramped down over the next few days. A week later, traffic is still elevated, but much closer to normal levels now. Here are the anonymized versions of the summaries so you can follow along Sans Crawlers and With Crawlers. Note: I will be referring exclusively to the "Sans Crawlers" version of the summary.

Here is the basic visual for those who don't wish to view the log summaries:

Unique Visitors Per - Day Before and After

The TLDR version is that this website generally gets between 100 to 200 visitors per day. The day after the post, the website got almost 23,000 visitors. It is now back to under 1000 visitors a day. The best part about this is that the site didn't experience an increased level of errors at all:

HTTP Status Codes Summary

Generally my website doesn't receive a lot of technical attention from me because it doesn't need it, but this just happened to occur during a time when I was actually checking the logs every single day instead of just occasionally looking at the daily log summaries that are replicated onto my home server each afternoon.

The reason for this is that I have actually been working very hard to clear up various issues on the site over the last few weeks. The bigger but less relevant one was related to an nginx misconfiguration which resulted in a lot of nginx error logs. The reverse proxy config for this website would attempt to connect to the Presentation Engine docker container via IPV6, which is not enabled by default in docker, before falling back to using IPV4. This is because my config file used localhost instead of for the address.

Beyond that the website also suffers through its fair share of script kiddy scanning and hack attempts. The scanning largely revolves around requesting various sensitive files that might be used to hack actually popular CMS platforms like WordPress (just gagged in my mouth there). The hacking involves cheeky bastards attempting to score a cheap SQL Injection win over me by dumping garbage into query string parameters on the search results page.

Sarcastic Aside to Hackers: None of those parameters are utilized within SQL, so stop wasting your time and mine.

Anyway over the last few weeks I have been working diligently to address all of that and had made a great deal of progress. When I was a young and dumb software developer, I didn't mind a 500 error here and there. I didn't mind compiler warnings either. But I eventually realized that letting shit like that go will eventually turn even the best piece of software into crapware if its allowed to fester long enough. So every once in awhile I do some deep log diving and get to work.

As for the reactions to the post itself, let me just say this: Beyond the obvious comments in which the poster didn't even read the damn article (e.g. Why is he blaming the clients?), most of you had something insightful to offer and I enjoyed reading a wide variety of viewpoints, whether they ultimately agreed with me or not. A few of you choose to email me directly and have a more interactive discussion on the matter and I really appreciated that as well (and yes I replied because I'm small time enough to allow for that possibility).

I'm happy to have inspired a good and healthy discussion on what I suspect is going to become an even bigger point of contention in our industry, especially in the age of faux-AI technology stacks like ChatGPT and Bard.

Thank you so much for coming along for the ride... and not crashing my website in the process ;)

Also for people wondering what hardware and software actually powers this website, below is a brief overview. Please note: The HTML content on this site is dynamically rendered and never cached. There is no real caching being employed on the server side. But there are also lots of very aggressive methods in use to cache secondary resources that users require to render the website (css, images, fonts, etc) which is why the data transfer amounts in the stat summaries are relatively small. I manage the OS install entirely on my own, though nearly every pertinent operation beyond major OS upgrades is scripted and run via cron.

[Top] [Rss] [Email]