From 890b34bcc1a6b4073d1e512b1386634f7bc5ea52 Mon Sep 17 00:00:00 2001 From: "Adam T. Carpenter" Date: Wed, 21 Apr 2021 22:57:39 -0400 Subject: unified posts dir, until I can figure out makefile sub-subdirs. makefile auto-generates index --- .../2019-04-06-why-have-a-website-in-2019.html | 170 ---------------- ...why-does-everyone-use-adobe-acrobat-reader.html | 144 -------------- .../2020-12-29-antivirus-software-is-a-hack.html | 197 ------------------- ...0-how-to-make-your-website-boring-and-why-.html | 214 --------------------- 4 files changed, 725 deletions(-) delete mode 100644 posts/computing/2019-04-06-why-have-a-website-in-2019.html delete mode 100644 posts/computing/2020-12-22-why-does-everyone-use-adobe-acrobat-reader.html delete mode 100644 posts/computing/2020-12-29-antivirus-software-is-a-hack.html delete mode 100644 posts/computing/2021-04-20-how-to-make-your-website-boring-and-why-.html (limited to 'posts/computing') diff --git a/posts/computing/2019-04-06-why-have-a-website-in-2019.html b/posts/computing/2019-04-06-why-have-a-website-in-2019.html deleted file mode 100644 index 7fb9b48..0000000 --- a/posts/computing/2019-04-06-why-have-a-website-in-2019.html +++ /dev/null @@ -1,170 +0,0 @@ - - - - - - - - - - - - - 53hornet ➙ Why Have a Web Site in 2019? - - - - - -
-

Why Have a Web Site in 2019?

-
- Adam, why on earth do you have a website? Wait... Is this a - blog? It's 2019, why don't you just use Facebook?! -
- -

- I've wanted to have my own website for a long time mostly because I like - playing with technology. I think it's cool that I can make a few files - on a computer in my closet available for the entire world to see. The - web has become a near-necessity in our daily lives and it's only been - around for a couple of decades. That has always fascinated me enough to - drive me to see if I can do it on my own. I started self-hosting my own - web server about a year ago now and it's been an awesome study in the - way all of the tech we use on the web works. -

- -

- A written website is also a good way to keep up on my writing skills. - I've graduated college and won't be writing essays for the foreseeable - eternity. Which is fine except that I have no reason to write creatively - or formally anymore. Having this site encourages me to continue turning - thoughts into words, even though it's more casual than a term paper. -

- -

- This extends into the professionalism of a personal website. Normally - you can't point your employer towards your Twitter profile as the - distillation of your online footprint. Having a website, especially one - that separates professional and personal interests, is ten times better - than a resume, especially in the world of technology. It lets you tell - people exactly who you are and what you do, without forcing them to - navigate through an auth wall or a bunch of puppy photos. Your - professional and personal lives don't bleed together quite as much and - it makes for a kick-ass business card. -

- -

- Most importantly however, I enjoy the level of control that I gain with - creating and operating my own website, something I have also sought for - a long time. In high school I set up an old Dell from my school's - recycling center with Windows XP and Microsoft Internet Information - Services. It didn't have SSL or even a domain name but it was reachable - over the WAN. I set up an upload system so that my friends and I could - 'post' memes and funny messages for each other on raw html pages written - with Microsoft Word. That was the extent of its functionality. It was - slow, insecure, and went offline every time the router got a new IP - assigned to it. But I didn't care. It was a site the school couldn't - block. It had no name and no rules and nobody could tell us what to do - with it because it was ours. And we called it the - Troll Nexus Center because that's what you do when you're 15 -

- -

- My reasons then for building the Troll Nexus Center still stand now. - Having your own website is having your own piece of internet - property. - I first heard this wording from - Luke Smith over on his YouTube channel - and it's one-hundred percent true. Tumblogs, Google Sites, Facebook - profiles, and GitHub Pages are all like renting an apartment. Sure, - there are some really nice apartments out there but it's not the same as - owning your own home. You have to pay rent obviously, and rent is - subject to change once your lease is up. If anything breaks you text - your landlord and wait to have it fixed. You aren't allowed to fix it - yourself and sometimes it doesn't get fixed at all. And of course you're - limited by how much you can customize things to your own liking. Whether - it's painting walls or knocking them down. -

- -

- These limitations may or may not apply to you. Whether you're paying for - storage, server space, metrics, or watching an ad every five seconds, - these services aren't free either. And you certainly can't fix - everything that goes wrong with them. I started on Google Sites. It's a - truly fantastic system. Building a site is like putting a PowerPoint - slide together. I just plain outgrew it. There were too many things I - wanted to do that I simply couldn't. I was also at the mercy of Google's - constant change. After I finished constructing my first site, Google - announced they would be shutting down the old Google Sites in favor - of an entirely new platform under the same name. Weeks of work got thrown out the window. You might also not care - about ads or customization. You may be intimidated by doing things - yourself and prefer that the landlord take care of everything. - Personally, I like the challenge and the craftsmanship that comes with - doing something myself. And I like being in total control of my server, - site, and content. Not from a tinfoil hat perspective but from a "gosh I - really wish I could just share more than 15 gigabytes of family video - with my relatives in New York and Ohio" perspective. -

- -

- So that's why I created my own website. If you want to know - how I host my own website, look for another post about my - server setup where I'll explain everything I'm hosting and how I got it - all hooked up. And that's a wrap. Now you know why I'm here instead of - somewhere else online. Sure, I do have Facebook and YouTube accounts but - I don't frequently update anything on either of them. This site is my - home online. It's where I keep all of my interests, hobbies, and - memories for sharing with others. -

- -

- Now you know where to find me. If you want to keep up with me, be - old-fashioned and subscribe to my RSS feed. -

-
- - diff --git a/posts/computing/2020-12-22-why-does-everyone-use-adobe-acrobat-reader.html b/posts/computing/2020-12-22-why-does-everyone-use-adobe-acrobat-reader.html deleted file mode 100644 index 81136e8..0000000 --- a/posts/computing/2020-12-22-why-does-everyone-use-adobe-acrobat-reader.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - - - - - - - 53hornet ➙ Why Does Everyone Use Adobe Acrobat [Reader]? - - - - - -
-

Why Does Everyone Use Adobe Acrobat [Reader]?

- -

- -

- -

- This is something that I've never been able to figure out. All through - high school I had to use PDFs. And if you wanted to open a PDF, everyone - understood that you needed Adobe Acrobat Reader. Even web sites where - you downloaded PDFs insisted that in order to open them, you were going - to have to follow a download link to make sure you have Acrobat on your - PC. -

- -

- Fast-forward a few years into college and I'm using PDFs more than ever. - Every professor ever is scanning and uploading course material, so out - comes Acrobat Reader for literally every teacher and student. At this - point I was actually used to using Firefox (PDF.js) to view PDFs for a - couple of reasons. First of all, Firefox usually opened PDFs faster than - Acrobat Reader did. Reader was getting bigger with every release, and - eventually had a monstrous UI to load up every time I wanted to open a - tiny PDF file. Second, Firefox had smooth scrolling for page-width - documents. Reader was getting slower and laggier with each release, to - the point where scrolling through a PDF was no longer buttery smooth but - jittery and stuttery. It also seemed like Reader purposefully wouldn't - slide the page when you used a mouse wheel. It would jump down a few - lines at a time like it was simulating the down arrow. -

- -

- By my senior year I had switched from Windows to Linux full-time and it - was then I found out about MuPDF and - from then on things were never the same. It's literally the best PDF - reader I've ever used, and I tried out quite a few. There are desktop - and mobile apps. It opens almost instantly. It lets you easily resize - the page with excellent keyboard shortcuts. There are no giant menu bars - on either side of the page to squish the document down to an unreadable - size. Having a dozen of them open at once doesn't bog down my PC. It's - also available for all of the relevant operating systems I've used - (Windows, Mac OS, Linux, FreeBSD)! Oh and password-protected PDFs are - supported as well. -

- -

- It's a fantastic piece of software And the best part is it comes with a - variety of tools to edit and manipulate PDFs as well. If the folks I - went to school with thought you needed the free Acrobat Reader to view a - PDF, they sure as heck thought you needed to buy Acrobat Pro to edit - one. Some of them refused to pay for it and used a variety of online - services to upload, split or merge, and download PDFs. I honestly for - the life of me can't understand why. MuPDF comes with - mutool, which does all of the things I would ever need to - do with a PDF. It can attempt to convert a PDF to other formats, like - HTML. It can split and combine documents. It can even create them from - scratch and sign them. -

- -

- It's also free and open source. Can you imagine that? PDF viewing and - editing being free and open source? It's AGPL (in addition to being - commercially) licensed by the creators. The only slight drawback is the - desktop version apparently does not yet let you fill out forms. Not sure - why but this isn't something I use very frequently. -

- -

- It's not the hottest piece of tech out there, but it just plain works - and works really well. Maybe the only reason more people I know don't - use it is because Adobe is synonymous with the PDF format. It doesn't - seem like that big of a deal, but I feel like Acrobat has always been a - piece of software that has frustrated new or infrequent users in - computing. And that's just not good. Maybe the barrier to using MuPDF is - the lack of GUI and abundance of keybindings, but for me that's no - sweat. I'd say to anyone to just try it out and see if they like it. It - is free, after all. -

-
- - diff --git a/posts/computing/2020-12-29-antivirus-software-is-a-hack.html b/posts/computing/2020-12-29-antivirus-software-is-a-hack.html deleted file mode 100644 index 9aec081..0000000 --- a/posts/computing/2020-12-29-antivirus-software-is-a-hack.html +++ /dev/null @@ -1,197 +0,0 @@ - - - - - - - - - - - - - 53hornet ➙ Antivirus Software is a Hack - - - - - -
-

Antivirus Software is a Hack

- -

- -

- -

- I read a really terrific article today about computer security and - really dumb ideas or trends that have developed in this field. It's - M. Ranum's The Six Dumbest Ideas in Computer Security, and I highly recommend reading through the whole thing. It's got - great anecdotes and really simple language for what I consider to be - some of the obvious issues with the way programmers and sysadmins think - about security (myself included). One portion of it (idea #2), however, - finally put something into words that I've felt for a really long time. - It enables me to explain why I think all antivirus software is a total - hack and is virtually useless. -

- -
- hack
- 1. n. Originally, a quick job that produces what is needed, but not - well. -
- -

- This is the Jargon File's definition of a hack. And to me, this is what - antivirus software is. Antivirus software, as I understand it, emerged - in the mid to late 1980s and became prolific in the 1990s. In the 2000s - it was considered an essential piece of software and people were paying - for yearly subscriptions for antivirus suites from Norton, Avast, and - McAfee. -

- -

- The most basic functionality of an antivirus program is to determine - whether malware exists on a host operating system. The typical method of - doing this is to use a collection of virus definitions and compare each - and every potentially-infected file with each and every definition to - determine whether the file is malware or has been infected by some. An - over-simplified way of implementing this is to store a collection of - hashes, each taken from a known potentially unwanted program or - infectious executable. You can then hash entire files or portions of - files and compare the checksums to see whether a file contains or is - equivalent to the definition, and is therefore infected and shouldn't be - executed. Some security suites go beyond this with heuristic matching, - but if you run an antivirus that has to "update definitions" on a - routine basis, it probably works something like this*. With any luck, it - does it without being a total detriment to system performance. Ideally - it also doesn't act like a piece of malware itself by making itself near - impossible to remove (looking at you, McAfee). -

- -

- To me, a virus definition database is "enumerating badness" (Ranum's - Dumb Idea #2). The premise is that it is not only logical but even - possible to compile a list of all potentially unwanted - programs, viruses, ransomware, and worms. An environment of trust should - be built around the programs that you want to run (read: - allow to run), not the other way around. Picture an operating - system where no binary file can be executed unless it is specifically - flagged as being allowed to. Oh and picture also being able to restrict - this execution to just the file's owner, or other groups of users. - Wouldn't it be easier to store the list of 30 odd programs that you and - other system users trust to be run than the thousands (millions?) of - programs that are infectious, forbidden, or unwanted? What about when - those trusted applications become compromised? Would it not also be - easier to maintain a list of checksums for those binaries and compare - those checksums before they're executed to make sure they haven't been - infected or replaced? -

- -

- The answer is yes, it would be easier. And yes, it is easier. Of course, - your system has to work that way. Antivirus software is a hack because - it's a hack-y solution to a problem that has a better, simpler solution. - It also has the potential for making a ton of money but I won't go into - that. It's easier to enumerate goodness, to specifically open up to a - select few trustworthy applications. Good lists are usually shorter than - bad lists. This builds on top of Ranum's Dumb Idea #1: Default Permit. - You wouldn't configure a firewall to just block some known bad ports and - traffic. You configure it to block all of it, and then whitelist the - ones you know you can trust. You wouldn't configure a browser ad-blocker - to permit all ads, and select the ones you don't want to see. You block - all of them! Then, if there are sites or ads you're okay with seeing, - you whitelist them. You shouldn't default permit all programs to be - given control over your computer, and then meticulously list the ones - that don't have that permission. -

- -

- Oh and of course, as always, there's free software that lets you do - this. You don't have to pay for an antivirus suite, or even use an - unpaid one that slows down your computer or barrages you with ads. On - the BSDs and virtually all Linux distributions, there are built-in tools - to control access and execution of binaries. There are additional tools - that you can install that check whether binaries (in locations like - /bin or /usr/local/bin have been modified - since you last used them. On Windows, the story is a little different. - Most home Windows 10 users are automatically allowed to install and run - any software they want to by default. Windows Server does have Software - Restriction Policies that allow you to create a "default deny" policy - and whitelist only the software that's allowed to run. If you're using a - home edition you probably have to look for software that lets you do - this. I haven't tried any of them so I'm not going to endorse or even - name them here. -

- -

- Preventing malware from running on your system is a problem. Solving - this problem is the right thing to do. But please, try to solve it the - right way. I stopped using an antivirus after I moved out and got to - control my own computer. I don't think it ever did me any good besides - flag false positives (a lot of the time with programs or applications - that I wrote, which weren't malicious in any way!) and grind my spinning - disk to a halt. Evaluate what software you use. Is most of it online? - Are there one or two applications that you know you need to use? How - often do you install and use unknown or untrusted software? Odds are you - can come up with a list of very few programs that you want or need to - use. If it's less than 100,000, you're probably better off with a - default deny policy than an antivirus suite. -

- -

- * What I didn't mention here is that as soon as a new piece of malware - is constructed, if it's different enough from its predecessors, it's - impervious to all antivirus suites on the planet that don't have it in - their definitions. So until that malware is used, detected, and added to - the list, it has free reign. -

-
- - diff --git a/posts/computing/2021-04-20-how-to-make-your-website-boring-and-why-.html b/posts/computing/2021-04-20-how-to-make-your-website-boring-and-why-.html deleted file mode 100644 index d2f5d03..0000000 --- a/posts/computing/2021-04-20-how-to-make-your-website-boring-and-why-.html +++ /dev/null @@ -1,214 +0,0 @@ - - - - - - - - - - - - - 53hornet ➙ How to Make Your Website Boring and Why! - - - - - -
-

How to Make Your Website Boring and Why!

- -

- I took the time last year to make my website more boring. Here's how you - can do the same and why you'd want to. -

- -

- Up until recently I was using a static site generator - (cobalt-rs) and a fancy CSS framework/library (Bulma) to - build my website. I also had one or two scripts to do various fiddly - things in the browser. I took the time to gut it and now I have a much - more boring website. I don't use anything but HTML to write all of the - posts and pages. This eliminated the need for a static generator or - script to turn something like Markdown into HTML for me. I also scrapped - all of the customized CSS framework style sheets that I had been using - for a very small (145 lines including whitespace and braces) single-file - stylesheet. I also dropped all of the fancy links, banners, most of the - icons, and any JavaScript that I had originally. Now, my site is much - more boring. And it's so much better. -

- -

How does one make their website boring?

- -

- Typically, ask yourself whether you need something. If the answer is - "no", you can safely remove it and you won't need it again. Your website - will become more boring (read: simpler). Here are some of the things I - evaluated: -

- - - -

- Do you use a lot of third-party assets, templates, or CSS for your site? - Do you have to run a SASS tool to generate your stylesheets? Are your - stylesheets really big (> 1000 lines I think anyone would consider on - the bigger side)? Consider whether or not you really need them. - Oftentimes, with CSS, less is more. Especially if your site is just a - collection of pages of text with links to other pages of text. You can - make your site attractive and compatible with 100% of browsers by - keeping things simple. And then you don't have to worry about rebuilding - your output stylesheets or keeping up with libraries and frameworks. -

- -

- Do you have a lot of dynamically-generated content on your site? Does - the document need to change based on user input? Do you have a large - number of script tags importing minified files from third-party CDNs? - Odds are you don't need those either and you can completely get rid of - them. Now you don't have to worry about making sure all browsers can run - those scripts, or whether or not the CDNs are online, or you're - requesting the latest version. -

- -

- Do you use a static site generator to build your site? Is your content - complicated enough to write that you can't write it in plain HTML? Is - Markdown really easier or more powerful? Odds are, it's easier to write - directly in HTML without having to tell your generator what to do with - your tags. And for the oddball tag that Markdown doesn't directly - support, you might often end up writing HTML into your Markdown files - anyways. And, you can better control what the output formatting looks - like, making your site's code more readable. Furthermore, you won't have - two acting copies of your site, a pre- and post-generator one. For me, - it was annoying having "source code" for my web site that was different - from what I was actually hosting. It's so much nicer to have a 1:1 - mapping between what I write, test, and deploy. -

- -

- Still not convinced? Still need to automate some part of building your - site, like generating an RSS feed? Is there any chance you can write a - quick Makefile to do that for you? I was able to do just that, and it - was way nicer not having to install and learn how a generator worked to - automate assembling my site. -

- -

- If you answered "no" to any of the above "do you need"-s, you just found - a way to make your site more boring. Boring equates with simplicity. - Simplicity is a good thing. -

- -

Why should you make your website boring simple?

- -

- Not relying on a bunch of libraries and assets is a good thing. It - seemed like every time I wanted to add a quick post, I would notice - there was an update for some library I was using and I was spending time - upgrading and learning about it. You know, that thing that computer - programmers enjoy doing and are good at but often doesn't actually help - them accomplish anything: fiddling with shiny new stuff that doesn't - solve a problem. Now I get to just focus on adding things to my site and - I'm never worried about whether it looks broken. -

- -

- I also didn't like having a pre- and post-build site. If I wanted to fix - one typo I couldn't remote into my live site, fix it, and then leave it - there. I had to do something like fix the typo in my Markdown, commit - and push it, and then re-run the generator and upload the new "live" - files. The generator step wasn't making things easier, it was making - them more annoying. -

- -

- You'd also be surprised at how easy it is to make your site fast and - reliable on all modern and old browsers when it's boring (read: simple, - again). Internet Explorer doesn't care about my site, it's a breeze to - render and there's nothing in it that hasn't been in existence for at - least a decade. (Alright, I do have a few SVG icons which it probably - wouldn't know what to do with. You can't tell the difference between - Firefox's and Chrome's renders of my site. And Google's PageSpeed - Insights score is a hilarious 99. -

- -

- My site is also more functional now. It's less distracting. It's really - easy to navigate and read. There's no runtime, no JavaScript that has to - execute before the reader sees the page they're looking for. And there's - practically nothing to maintain except my posts. It's also really easy - for crawlers to quickly ingest all of my posts and turn them into search - results. Hopefully, it's also easier for the visually impaired to zoom - in and not mess up the document, or use a screen reader that extracts - the article tags. -

- -

- The benefits are through the roof. My site used to be about tinkering - with tools and libraries and frameworks. Now it's just a boring website. - That leaves me with time to focus on tinkering with other stuff that's - more interesting, and only focus on writing when I'm working on this - site. So make your life easier and go make your website boring today. -

-
- - -- cgit v1.2.3