Travis Briggs - YABIWU

Yet Another Blog I Won't Update

In recent years, tons of new so-called “generic top level domains”, also known as gTLDs have been released to the general public. These include things such as .club, .website, .social, and even .pizza. Those helpful wikipedians have been maintaining a full list if you're curious.

Many people don't know that these TLDs exist or that they are available, often for a discounted rate. For example, if you happen to be Steve Harrison, the domain steveharrison.best is available for only $2.99 a year right now. And of course, if you can find something in the crowded .com space, those are available for between $8 and $15 dollars. (I recommend trying somethinglikeafullsentence.com for example).

If you're interested in dipping your foot into the pool of domain ownership and simple website hosting, read on!

Domain names versus websites versus HTML pages versus URLs

Let's start with a few definitions. A domain name is something like google.com or yourawesomewebsite.pizza. It is simply an entry in a global system that you (or someone else, or some company) has bought the rights to. Once you've bought these rights, you need to “set your domain name up” so that it points to something. That's the important part: the domain needs to point to something in order to be useful.

What it points to is the website that is located at that domain name. Actually what it technically points to is an IP address (or a series of IP addresses). The IP address is often referred to as the internet “phone number” of a computer located somewhere in the world. When you type “https://yourawesomewebsite.pizza" into your web browser, the browser queries the “global system” referred to before (the Domain Name System or DNS) and finds the IP address of the computer that is hosting the website that the address refers to.

For our purposes, it's not necessary to understand the details of IP Addresses or the Domain Name System. The important part is to understand that yourawesomewebsite.pizza isn't a website. It is a domain name that points to a website.

What about an HTML page? You may have heard of HTML or HTML pages, but how do they work into the picture? Well, HTML is basically a computer language that is used to describe web pages. A website is simply a collection of web pages under a common domain, or under a path under a domain.

What about URLs? Where do they come in? You might think that yourawesomesite.pizza is a URL, but it's not: it's missing the https:// part that makes it a URL. So yourawesomesite.pizza? Domain name. https://yourawesomesite.pizza? URL. URLs can also contain paths, such as https://yourawesomesite.pizza/products/1234, where /products/1234 is the path. URLs can also contain query strings, such as https://yourawesomesite.pizza/products/1234?display=full, where ?display=full is the query strings. Query strings allow for websites to dynamically respond to things like search queries and filtering parameters, but they're not particularly important for our purposes.

Note that the last example represents a URL of a certain domain name, with a path and query string, and resolving it via your web browser will result in seeing an HTML page that represents the website that is hosted there. Just to bring it all together, but all that is again probably too much detail for the purposes of this article.

Choosing a registrar

As far as choosing a registrar, I have consistently recommended Namecheap. There are plenty of other options out there (just type “domain registrar” into Google), but I would caution against GoDaddy because of their poor customer service and predatory business practices.

Update: It appears that Netlify is a registrar now and you can actually buy your domain directly from them. This might be a much easier option, since we will be using Netlify to host our site for free.

Once you've found a registrar you like, you can go through the process of searching for your domain. You can generally type in any string you like, and the registrar will first tell you if the .com domain is taken for that string, and then recommend alternatives from the wide world of TLDs described at the top of this article. You can also put in somecrazystring.pizza directly, with the TLD (.pizza in this case) included, if you have a specific TLD in mind. (Note that some TLDs have residency or other requirements, like those for specific countries).

After you've found a domain that you like that is available, go ahead and buy it! If your registrar provides any additional services as upsells (and most of them do), be sure that you don't purchase any website creation or website hosting. We'll be handling that in part 2 of this article. One thing you might consider adding though is any “privacy guard” add-ons that allow you to hide your real name and address in the WHOIS system. Without such privacy guards, your actual name, address, and email address will appear in the global WHOIS database, which will make you a target for not only spam, but real life junk mail too in some cases.

Many folks I know have already taken the first step and registered a domain. They saw that myactuallfirstandlastname.com was available and went through the steps to buy it. If this is you, that's great! That's an awesome first step. Unfortunately, if you go to the website at that address, you find that it's probably some “Website coming soon” page, with the branding of your registrar. Less than satisfactory.

Part 2 of this guide will help you figure out how to host something on your domain (other than the so-called parking page). The best part is, with a little bit of effort, it's completely free (the hosting that is)!

Last year I made a rather audacious New Year's Resolution: to write a song a day in 2018. I will now always remember 2018 as the year I failed to write a song a day. Or maybe I should remember it as the year that I bravely aspired to write a song a day?

I haven't given any thoughts to New Year's Resolutions this year. I've sort of come around to the existential point of view that I'm really just a piece of driftwood on the ocean that is my life. I never really believed in free will. Free will just seems like the explanation we give to the thing we were going to do anyways. I don't have any agency over myself, my outcomes. So why bother?

I did manage to write about 20 songs in 2018, which you can view on my song website. That's about 5% of the way towards my goal.

Maybe I can do something like write a song a day for the first week of every month, then take the rest of the month off. I don't know. Like I said in the other post, song a week is really “wait 5 days, then write a song in a day”.

I mean, why am I so obsessed with songwriting anyways? To speak again of existentialism, maybe I see my creative output as my only futile thrusts against the all encompassing absurd. Maybe I'm just a fanboy that obsesses over music and feels compelled to add to the great corpus of musical works. I am Sisyphus and music is my rock (n roll).

On the topic of philanthropy, there are a few approaches that I see taken by those around me. One is to simply give to whatever cause makes you feel good. Sometimes it's just a matter of some cause that strikes a chord, and just like that you open your wallet. Other times, people try to give to causes that benefit those in the most extreme life circumstances. They donate in order to provide clean water to people in remote villages, or to provide food and medicine to those affected by the horrors of war.

Sometimes though, I find that I like to give to causes that simply provide an interesting or unique presence in the world. This is why I give to Wikipedia, or soma fm, or the Internet Archive, or even govtrack. I might not use these services very often (they're listed in roughly decreasing order of my activity), but I'm glad they exist and I want them to be around for others in the future. I like the idea of these causes, even if they're not the most “boots on the ground” organizations providing the absolute most good to the most people.

I don't really have much to comment on beyond that, and providing a list of some of the causes that I find worthwhile.

A lot of people who want to get into programming ask this question, and it's not a bad one at all! In this post, I'll try to examine the question and give a thoughtful answer.

I think this question is analogous to an aspiring musician asking “Which instrument should I learn?” The answer depends on your taste and interests. Generally though, I would say the answer is pick one that interests you and that will allow you to create the projects you want to create. If you like punk rock music, you should probably pick up drums, bass or electric guitar and not oboe or harp, right? If you're into data science, think Python or R, but probably not C++ or Perl (side note: with my recent experiences with the language, I don't think I would recommend anyone learn Perl).

If a language, like Javascript, piques your interests then go for it! Depending on your goals for your own programming practice, it's likely you will learn a number of languages as you continue your journey. Don't feel like the first language you learn will be the only language you learn, or that it will limit your options in the future. Also, if you don't like Javascript, you probably don't have to continue learning it. You can put it down for a while and see what else is out there. In fact, I would recommend looking at lots of different languages when you're first starting out, because then you're more likely to find one that “clicks” and that lets you express the ideas you're trying to express, or accomplish your tasks better.

If you're completely undecided, on the fence, or without any meaningful data points, you should think about which languages are popular. Not that this is a popularity contest, but it stands to reason that programming languages get popular for a reason. They're probably useful for one or more tasks that lots of people want to get done. Additionally, languages with more popularity are likely to have bigger communities of developers writing blog posts, tools, libraries, and StackOverflow answers. While you're learning, these can all be amazing resources.

Finally, for my own recommendation, I would personally suggest Javascript or Python. Javascript is great because with a few lines of it you can bend web pages to your will. It's also available as a “server side” language thanks to NodeJS. Python, on the other hand, is very general purpose and can be used to write web applications too (see my last post on “What is a web application?”), process data and images, and nowadays is used for all kinds of Artificial Intelligence and especially Machine Learning projects.

As I said in the beginning of this post, you should research some languages, maybe try a few out, and ultimately find one that fits your general aesthetic and most importantly that lets you build the projects you want to build. You're only going to get better at programming with practice, and you're more likely to practice if you have a significant, meaningful project to work on. If you're excited to come back to that code editor day after day, you will learn more and faster than any other factor intrinsic to the language.

I hope this helps some people out there, and if you have any feedback, I'm @audiodude@tiny.tilde.website on Mastodon. Cheers!

This post attempts to answer the question posed in the title. It is aimed at beginning or aspiring web developers, or even those who aren't developers but wish to gain a deeper understanding of the terminology. Web applications versus static websites versus dynamic websites will be discussed.

What is a web application? Generally a web application is considered to be any website which has advanced or dynamic functionality which allows users to complete tasks or view or enter data. So for example, the websites at www.facebook.com and twitter.com are web applications. That's not to say that Facebook and Twitter themselves are simply web applications. They would in fact probably be considered social media “platforms”, since they can be accessed across multiple devices and for a myriad of purposes. Perhaps a better example is Fandango, a web application which allows users to search for movies, find showtimes, and buy tickets. Google is a web application, as is Wikipedia.

A web application is usually classified as such in contrast to a simple website. A website is a collection of web pages that can be accessed using a web browser, that usually offers no or limited dynamic interactivity and functionality. A good example is the homepage of the late Stephen Hawking. This site provides information that is organized according to a certain method, including text and images. However, there are no tasks that a user could complete on this site. There is no way for end users to enter data.

Websites can further be classified as static or dynamic. Put simply, a static site is one that doesn't change each time it is viewed, such as this list of bookmarks. It's always the same list, and almost certainly the HTML (code) for this page exists as a single file on a server somewhere. When you request the page using your web browser, the server grabs the file off disk and sends it back to your browser “as is”.

A dynamic website, on the other hand, features content that potentially changes every time it is viewed. A good example is the CNN homepage. It's not a web application, because there's no interactive way to enter data or complete a task. But it changes by the moment as news stories break or fall out of popularity. When your web browser requests cnn.com, the server doesn't return a preset file containing the code. Rather, one or more programs run on the server, and the end result (output) of the process is the HTML that gets sent back to your browser.

So what about that Stephen Hawking site, is it dynamic or static? Well, although the information on it doesn't change nearly as regularly as cnn.com, it is probably a dynamic website. It is likely that the people who run the Hawking site are using a Content Management System so they can more easily change and update the page. And so although the site might conceivably be implemented using static files, it is in fact a dynamic site.

The fact is, almost all website are dynamic. And the most useful ones are actually web applications. Other examples of web applications are Google Calendar, Reddit, and Netflix (which doesn't allow data entry, but allows for rich searching and filtering features).

Hopefully this article was useful, and feel free to send feedback to @audiodude@tiny.tilde.website on Mastodon.

What's the best thing to do once you've started to blog and written a few posts? Change platforms, of course! It seems like every blogger is always looking for a new platform, with the hope that it will somehow make them a better, more prolific writer. No doubt it rarely turns out that way.

But here I am, in the same boat, trying to evaluate new blogging platforms and plan a migration strategy for them.

As a background, back when I was using Soundcloud extensively I “realized” that Medium does the same for blog posts that Soundcloud does for songs: it provides a centralized repository across multiple different authors. This potentially allows for “cross-pollination” as readers of a certain blogger find related articles from, gee golly, maybe me!

Of course, this never happened on Soundcloud, in the 8+ years I've been on it. And it hasn't happened on Medium either. My most popular medium post is this tutorial on how to set up your own Mastodon instance. It still gets 20-40 views a week, 18 months later. I'm proud I produced a piece of writing that has helped many people. But honestly, the views on that article haven't even led to views on my own other articles. Never mind “cross-pollination”.

That, and considering the recent article on “Medium is a poor choice for blogging” which was posted to Hacker News, makes me rethink my platform of choice.

Now this is a bit disingenuous, because I've already been using write.as for the last few “blog” articles I've posted (I use that term loosely for the material I've put on write.as).

Write.as provides a distraction free editor, markdown based formatting, a “blog” collection for my posts, individual post reading pages also without distraction, and is completely free. That's a great number of features, and they hit on several that are important to me.

Another alternative would be to create a static Jekyll site. But do I really want to deal with Liquid templates? I feel like I'm fed up with Jekyll, even though I've used it on many projects (gallery.travisbriggs.com comes to mind).

So do I use another static site generator? Then I have to go through the trouble of figuring out how to use the generators templating engine, how to set up an index of posts, how to display individual posts, how to create snippets of posts, how to format dates on posts, etc, etc. It's a lot of stuff, and in the end, I end up with a site that is identical to if I used Jekyll.

An additional issue with Jekyll or static site generators is that they generally don't come with any styling. Although I'm experienced at implementing pixel perfect websites given designs and mocks, I actually don't have much experience creating such mocks to begin with. So any site I create with a static generator is likely to look awful. But then again, if you take write.as as a baseline, I can't really do worse than that. Though I would want to make sure my site is responsive for mobile.

This entire discussion is also predicated on the idea that I actually should continue blogging in the first place. Continue is kind of a strong word there, of course, since I've generally been producing one article every couple of months. I wrote in September of 2017 that “My Blog is a Liability”. The TLDR of that post is that no one reads this stuff anyways, but if they wanted to find some damning piece of information about me, there would be plenty of potential things to find.

So my options, as I see them are:

  1. Continue writing on Medium (probably not going to happen).
  2. Continue writing on write.as
  3. Start a brand new blog with static site generator
  4. Quit blogging altogether

Of these options, 2 and 4 look the best to me.

Update (2018-11-13): I stated in this post that write.as is free, but apparently at some point I signed up for the $10/year plan. I can't remember why I did.

Javascript is a programming language that is used primarily on the web. It is interpreted by web browsers in order to process and display data on web pages. Javascript is also known as ECMAScript, after the standard that encompasses a formal definition of the language.

In 2018, Javascript usage goes beyond the web itself and includes many so-called “backend” applications, written in frameworks such as Node.js. Many people learn Javascript as their first programming language, while working on websites and the web. Javascript is also known to be a somewhat frustrating language to work with, because it lacks certain features such as “static typing”. One variation of Javascript that includes type information is called, appropriately, Typescript. Typescript was developed by engineers at Microsoft in order to create a version of Javascript that includes type information.

The “type” of a variable or function is basically the format of the information that it contains or returns. The number 123 is a “number” in this sense, whereas the letters “abc” are considered a “string”. By assigning data types to your variables, you can automatically check whether or not you are passing the right “type” of thing into a function or method. So for example, what if you had a Person object that had a setName method? You wouldn't want to set the person's name to a number, or to an Array. You'd want to set it to a string. The Typescript compiler can let you know when you've accidentally tried to pass such nonsense to a function that doesn't accept it.

Melancholy feelings and minor keys are both more appealing to me than their respective alternatives, at least when put into the employ of art and music. For some reason, a “happy” song with “happy” lyrics seems vapid and dull to me. I want to get at the deep stuff underneath. Major keys seems to scream of a kind of phatic expression, a platitude of nothingness. “Fine, thank you”. “Good afternoon, sir” they exclaim.

Maybe that's why I like power chords so much in my music, because they're ambiguous as to their tonality. Are they major chords? Minor chords? Without a third, they are neither. They're open to interpretation. Now I'll admit, some songs by say The Descendents are a bit too fast and loose with their tonality (they're certainly fast!). Descendents songs seem to give me a kind of whiplash with all the modulation and lack of a tonal center.

I've heard tonality in Western music described as a journey. You start at the tonic, you go on a journey to the four chord, reach a bit further to the fifth, and then, when you can't stand it anymore, you gratefully return back to the tonic. Even chords like the minor two or the minor six share the tonality of the tonic, the one chord, so that going I – VI isn't so much a journey as a re-imagining of what's already there. “Here I am” says the one chord, “But it's a bit different now,” finishes the six chord.

When I was first learning to play guitar, I was a big fan of Dave Matthews Band. I tried to learn as many of their songs as a could, and of course I was often frustrated by the quick and intricate guitar melodies and unique chord shapes. I simply wasn't good enough to play that music. Then I took a hard left the other way, and found the basic harmonic chords that made up songs and would just strum the chords while I sang the songs. But this kind of acoustic guitar treatment often robs songs of the rhythmic and melodic textures that make them so interesting, not to mention the complexities of the arrangements themselves.

Nonetheless, I still hold on to this picture of songs as a lead sheet, as a series of chords on a page with some lyrics scribbled underneath. And I've never been a believer of the importance of lyrics in songs. It's just not me. Most people will tell you that the lyrics are the single most important thing, they're what people hear and process and remember. But for me, I always though the “music” was more important. Unfortunately, the music for me has always just meant the basic acoustic guitar chords, where clearly that's not how most rock, pop and especially not EDM music works.

If you listen to many pop songs on the radio today, they are quite minimalist. Often the vocalist is singing over a simple drum loop or bass line or both and that's it. Yet these songs work.

I guess I'm just reflecting on some aspects of my own song writing here, but maybe someone else will find it enjoyable to read or informative in some way. Cheers!

I suppose if I announce a new Danger Third Rail project on a blog site, and then post that to Mastodon, it's not going to make a very big splash. I'm okay with that, I expect as much. I don't expect anyone to know what Danger Third Rail is, nevermind that I'm the “mastermind” behind it.

I almost just wrote “I really want...” but then backspaced the hell out of it. I know that such statements are weak in terms of both intention and motivation. What I will say is this: I will release a new 5 song Danger Third Rail EP before the end of this year.

The songs are all written, that's for sure. They are largely recorded, as well. I need to go back and re-record some of the vocals with a new setup that I've recently learned works better. Then I need to send the tracks to my session drummer in the UK, presuming she has time to work on them. After that I plan on having Tunedly do the mixing and mastering. I might create the album artwork myself this time, or have it done on Fiverr like I did last time (or some combination of the two). Then it's just a matter of uploading everything to DistroKid and having it float through the tubes to your waiting Spotify and iTunes apps.

I'm also going to promote this new material thoroughly. Like email it to music blogs and such. And make YouTube lyric (or otherwise) videos for each one of the songs.

I think I was afraid of doing this before, and I'm not sure of the reason. I'm not ashamed of the music, quite the opposite, I'm very proud of it. I think that knowing I'm going to promote the music means I have to do a better job of producing it, and that's scary. But I'm committed to doing it. I want to put the best possible product out there, and I want people to listen to it. I'm not going to be satisfied with the random 20 people who listened to the last single or whatever. I'm not going to dump my hard work and passion into a black hole.

Follow Danger Third Rail on Bandcamp to get the official word when the new EP is available. Thanks!

Here starts another week, and it's going pretty well. I'm awake, I'm at work, I'm caffeinated. Listening to some Weezer.

Of course, in the back of my mind, I'm thinking: this week will be just like any other week, nothing special, 7 days closer to the grave. Pretty morbid, but that's kind of the feeling I get.

My wife thinks I need to practice more gratitude for what I have. I'm definitely aware of all the research out there that states that gratitude is a major component of happiness. Not that I'm really that unhappy, but still.

I offered to work more on the volunteer project that I spent six months on last year. Mostly just because it was between that and finding another volunteer project. I had actually planned to find some open source project that I could contribute significantly to, but that's always a problem. It's very hard to find a project that: a) I use, b) needs help in the skillsets I can provide, and c) is actively looking for contributors. I think that first one is something that many people who want to contribute to open source overlook. Is there really a point in contributing to a project that you yourself don't even use? How will you even value your own contributions?

I'm actually thinking of creating some kind of blogging software that allows users to keep a local blog, then one-click publish it to Netlify or some other platform (Neocities?). Preferably with Electron, so that it wouldn't require any command line knowledge. I don't know, I think I need to explore the problem space more. If you want to edit your blog from any computer, isn't that just a web app that handles the blog? Wouldn't having a local version as the master copy be more limiting? I feel like a major part of this use case is that someone wants to keep control over their blog, over their information and data, for one reason or another.

The real question is, is it possible to build a web app in Node.js and then deploy it as an Electron app? So you could have a (self?) hosted version of the blogging software as well as a local version, or one, or the other.