Personal Webpage of Blake Watson https://blakewatson.com The personal webpage of Blake Watson Mon, 24 Feb 2020 06:27:14 +0000 en-US hourly 1 https://wordpress.org/?v=5.3.2 167038248 02/24/2020 https://blakewatson.com/journal/02-24-2020-2/ https://blakewatson.com/journal/02-24-2020-2/#respond Mon, 24 Feb 2020 06:27:14 +0000 https://blakewatson.com/journal/02-24-2020-2/ No one:

Me: a browser-based Yahtzee clone with personal high score tracking and RANDOM.ORG integration. https://blakewatson.com/rdo3/

]]>
https://blakewatson.com/journal/02-24-2020-2/feed/ 0 385
02/24/2020 https://blakewatson.com/journal/02-24-2020/ https://blakewatson.com/journal/02-24-2020/#respond Mon, 24 Feb 2020 04:25:00 +0000 https://blakewatson.com/journal/02-24-2020/ I’m still rocking macOS Mojave. At this point I wonder if I can make it to the next major release.

]]>
https://blakewatson.com/journal/02-24-2020/feed/ 0 384
02/20/2020 https://blakewatson.com/journal/02-20-2020/ https://blakewatson.com/journal/02-20-2020/#respond Thu, 20 Feb 2020 22:18:36 +0000 https://blakewatson.com/journal/02-20-2020/ I really love the Rainier – Retro theme for VS Code. https://marketplace.visualstudio.com/items?itemName=joytrekker.rainier

]]>
https://blakewatson.com/journal/02-20-2020/feed/ 0 382
02/19/2020 https://blakewatson.com/journal/02-19-2020/ https://blakewatson.com/journal/02-19-2020/#respond Wed, 19 Feb 2020 17:29:12 +0000 https://blakewatson.com/journal/02-19-2020/ I have this fear that governments will ruin the web and in the future we’ll have to tell stories to our grandchildren about how awesome it was.

]]>
https://blakewatson.com/journal/02-19-2020/feed/ 0 381
Scratchpad https://blakewatson.com/journal/scratchpad/ https://blakewatson.com/journal/scratchpad/#respond Fri, 14 Feb 2020 06:20:52 +0000 https://blakewatson.com/journal/scratchpad/ https://blakewatson.com/scratchpad/

Need a quick place to jot something down? I made a little scratchpad. Stores whatever you write there directly in your browser so you can reference it later. That’s it. That’s all it does.

]]>
https://blakewatson.com/journal/scratchpad/feed/ 0 379
Why I host my websites with NearlyFreeSpeech.NET https://blakewatson.com/journal/why-i-host-my-websites-with-nearlyfreespeech-net/ https://blakewatson.com/journal/why-i-host-my-websites-with-nearlyfreespeech-net/#respond Sat, 08 Feb 2020 05:56:54 +0000 https://blakewatson.com/?p=366 There are a lot of web hosting options. You’ve got popular serverless platforms like Netlify and Zeit Now. If you’re using WordPress, you’ve got fully managed WordPress-optimized hosting services like WPEngine/Flywheel. There are VPS options like Digital Ocean and Linode. There’s the venerable Amazon Web Services, upon which many hosting providers are built. Then there’s the plethora of shared hosting services—many of which are owned by EIG1—but also others like DreamHost, which I’ve heard good things about.

But there’s one web hosting company I rarely see mentioned anywhere which has nonetheless been a wonderful home for my apps, personal site, and a sea of half-baked side-projects. This is a love letter to NearlyFreeSpeech.NET.

NearlyFreeSpeech.NET (hereafter, “NFSN”) doesn’t have an affiliate program or really much of a marketing machine at all. My endorsement of their service gets me nothing. I just think more people should know about them because they have been in the business for a long time and they offer a great service.

No frills

A screenshot of the NFSN homepage. It's an older looking, text-based layout that's very simple.
NearlyFreeSpeech.NET homepage

NFSN’s unique value proposition is running a lean, but robust, operation and passing the savings to the customer. NFSN runs on a pay-as-you go cost model. They offer email support, but if you don’t want it you don’t pay for it. NFSN is a great match for for someone who’s comfortable enough with web dev and admin basics to use a little bit of SSH and do web development without a lot of hand-holding. They offer a custom interface that’s straightforward and doesn’t get in your face with any upselling or marketing BS.

From the FAQs:

To put it another way, some people change their own oil. Some people pay a mechanic to do it because although they could do it themselves, they want to spend their time another way. And some people pay a mechanic to do it because they just want their car to work and the details don’t interest them. NearlyFreeSpeech.NET is a service for people who want to change their web site’s oil.

NFSN’s site design screams early 2000s. But that’s alright in my book. The user interface of their custom administration system is eminently usable. If you’ve ever had to click around a hosting admin area looking for something as simple as an IP address or FTP information then you will love the utilitarian nature of NFSN’s service.

Pay for what you use

I think services like Amazon’s AWS made this pricing model much more mainstream. But among shared hosting providers, a fixed monthly rate is much more common. NFSN lays out the argument that by charging for what resources you actually use, their interest and that of their customers are aligned—the more successful your site becomes (and, thus, the more resources it uses) the more you pay. Your success is good for you and good for NFSN. Contrast that with a fixed monthly rate. A host that charges a fixed monthly rate has an incentive for your site to use as little resources as possible.

It’s a good argument. I don’t think that means that every hosting company charging a fixed monthly rate is evil or anything. But the pay-for-what-you-use pricing model is a good, honest system. It seems fair and reasonable. And it makes NFSN great for low-traffic sites (which, let’s be honest, most websites are low-traffic 99% of the time; don’t get me wrong, though, NFSN can and does handle high-traffic websites).

Fully managed, but customizable

NFSN has the perks of being a fully managed service, but I think it also has some of the perks that running a VPS provides. You have the option to get your typical Apache/PHP setup. But NFSN offers a blank slate option that lets you set up your own web server should you want to use something like NodeJS and Express. NFSN offers support for many languages. There is even a completely static server option, which costs less since it uses less resources.

From the FAQs:

Is your service easy to use?

No.

Compared to the endless parade of hosts that provide tons of “one-click installs,” one-size-fits-all web site templates, unlimited toll-free telephone support, and cookie-cutter control panels, our service is arcane and complex. We consider this a positive.

Documentation

NFSN has a robust collection of searchable FAQs that not only serve to document their service but also give you a glimpse into the creators’ views on a variety of web-related topics. And as I’ve demonstrated already, they come with a bit of earnest flair.

From the FAQs:

How big is a gigabyte?

On our system, a gigabyte is 1,073,741,824 bytes. Hard drive manufacturers would have you believe that it’s 1,000,000,000 bytes, but we don’t sell hard drives.

Technically 1,073,741,824 bytes is a gibibyte, but we have a hard time calling it that without a childish urge to snicker, and nobody likes a snickerer. If you want to be strictly accurate, the hard drive manufacturers are right, and we bill storage and bandwidth based on gibibytes* and mebibytes* (1,048,576 bytes), not gigabytes and megabytes.

Someday we’ll grow up about this, but that day has not yet arrived. We are moderately more mature when it comes to the abbreviations, and we try to use MiB and GiB to represent base-2 prefixes correctly wherever possible.

*Must… keep from… snickering.

Writing this article is taking me forever because I keep being distracted by NFSN’s excellent and entertaining docs. I’ve been linking to the publicly available FAQs, but there’s a members-only version that constitutes their self-serve support documentation (or “knowledgebase,” if you prefer).

Support for introverts

That’s a description I’ve assigned it, not what NFSN themselves call it (though I suspect they would agree). NFSN doesn’t offer phone support. Every NFSN membership comes with access to the extensive members-only FAQs I mentioned as well as access to a forum. You can add a $5 per month subscription for email support, but you don’t have to get it if you don’t want it. The FAQs are quite extensive and answer my questions 95% of the time.

Free speech

The name “NearlyFreeSpeech” is not only a reference to their affordable pricing but also a nod to their libertarian tendencies. Politics aside, I think most of us (in the US) would agree that the First Amendment is pretty important. It’s perhaps most important on the world wide web, where publishing has been democratized.

NFSN definitely requires that you follow US law and the laws of your government. But they consider takedown requests on a case-by-case basis—they won’t follow a takedown request without examining the situation first. For example, this is from the FAQs:

Will you honor a court order requiring the takedown of my site?

Usually. However, we do handle these issues on a case-by-case basis, considering a number of important factors.

Some countries’ legal systems now include the theory that their courts can exercise jurisdiction over any content on the Internet that is visible from inside that country. We repudiate that theory, and do not accept orders from courts that cannot exercise personal jurisdiction over us or you unless they have been properly domesticated, and domestication of such orders is frequently disallowed by US law. (However, if Elbonia instead requires all Elbonian ISPs to block access to your site, that is not something we’re likely to be able to help with.)

And another:

Is your service only for controversial or extreme websites?

Not at all! It’s true that our libertarian attitude toward personal responsibility attracts a handful of controversial websites, some of which make a person wonder, “Ok, sure, you can say that, but why?” However, the vast majority of sites we host (greater than 99.9%) are perfectly ordinary blogs, forums, wikis, and personal pages run by people just like you.

For the bulk of our member base, the “fringe” web sites we host frequently serve as the proverbial canary in the coal mine: they act as our global censorship early warning system. As long as the fringe sites can remain online, we can all be confident that the rest of us with more moderate views have real freedom to express ourselves. When people (or governments) attack such sites or attempt to get them shut down, we learn more about what legal and technological techniques we need to use to keep your site protected.

NearlyFreeSpeech.NET isn’t necessarily about saying something controversial. In a lot of cases, it’s merely about knowing that if you need to someday, you won’t find out that your freedom to do so atrophied away while you weren’t looking.

Quirks are a feature, not a bug

As you can see from their site design and the content of the FAQs, NFSN isn’t like other web hosts you’ve seen. They explain it well themselves in response to why they have an old-looking site design:

Why doesn’t your website look like other hosting provider sites?

It’s simple. We don’t want to confuse people into thinking we’re anything like other hosting providers. … So, sure, we could follow the crowd and get stock graphics of impressive racks of equipment and inspired-looking people staring blankly into space. We’ve even been told we can’t possibly be taken seriously as a hosting company unless we have them. But we’re not buying.

Over the years I’ve fallen in love with NFSN’s unique, unwavering approach to web hosting. I’m not telling you that you shouldn’t use services like Netlify—they certainly have an excellent product. But if you’re in the market for shared hosting or you want something flexible but don’t feel like managing your own VPS, consider the humble NearlyFreeSpeech.NET. They just might surprise you.

]]>
https://blakewatson.com/journal/why-i-host-my-websites-with-nearlyfreespeech-net/feed/ 0 366
02/05/2020 https://blakewatson.com/journal/02-05-2020/ https://blakewatson.com/journal/02-05-2020/#respond Wed, 05 Feb 2020 19:12:17 +0000 https://blakewatson.com/journal/02-05-2020/ I just realized that in Firefox and Chrome you can select multiple tabs by holding shift or cmd/ctrl and perform actions on multiple tabs at once. #TheMoreYouKnow

]]>
https://blakewatson.com/journal/02-05-2020/feed/ 0 365
PHP is A-OK for Templating https://blakewatson.com/journal/php-is-a-ok-for-templating/ https://blakewatson.com/journal/php-is-a-ok-for-templating/#respond Wed, 05 Feb 2020 02:47:35 +0000 https://blakewatson.com/journal/php-is-a-ok-for-templating/

PHP is A-OK for Templating

Love this pattern for templating a WordPress site (or any PHP-powered site). How have I not been doing this?

]]>
https://blakewatson.com/journal/php-is-a-ok-for-templating/feed/ 0 363
02/01/2020 https://blakewatson.com/journal/02-01-2020-2/ https://blakewatson.com/journal/02-01-2020-2/#respond Sat, 01 Feb 2020 21:16:08 +0000 https://blakewatson.com/journal/02-01-2020-2/ One way definitely not to get me to signup for your [WHATEVER] is to pop up a large, garishly animated sign-up box right in the middle of the page while I’m trying to use your website.

]]>
https://blakewatson.com/journal/02-01-2020-2/feed/ 0 362
02/01/2020 https://blakewatson.com/journal/02-01-2020/ https://blakewatson.com/journal/02-01-2020/#respond Sat, 01 Feb 2020 20:17:03 +0000 https://blakewatson.com/journal/02-01-2020/ I don’t always write webpack configuration files, but when I do, I… wait, actually I never do. I just use @laravelphp Mix. – https://laravel-mix.com/

]]>
https://blakewatson.com/journal/02-01-2020/feed/ 0 360