Travis Briggs - YABIWU

Yet Another Blog I Won't Update

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.

I feel like I could get addicted to writing the way that some people get addicted to video games. Like, “You just wrote for over an hour, why do you still feel the desire to keep writing?”. Of course at this point I'm kind of like a character in an RPG who is max level and doesn't feel like doing the side quests. Not that I've really earned anything close to max level in writing/blogging, besides having done it especially sporadically since 2003. Maybe it's like EVE Online where you earn experience constantly, even when offline, just by checking in on it every once in a while.

Is there a word for that in video games, the side quest thing, when you really want to play a game but can't think of anything fun to do in it? I think that's the essential reason why a game like Rocket League doesn't get stale. Because it's always the same thing, so you don't really expect anything more from it. Whereas, a game like Grand Theft Auto, you get various interesting missions throughout the course of the game, but in the endgame its kind of just the sandbox that it was the whole time.

You know, I tried my hand at professional scissors, but I just couldn't make the cut. (Sorry, it popped into my head and I couldn't help myself.) I actually saw a Karate Studio and was trying to think of a karate pun. I'm sure you would have gotten a kick out of that! (sorry)

I just had an Elon Musk level idea, as I saw a man with a “please help” sign. Like, could you find a way to A/B test signs so that you can find the text with the most earning potential? Oh god, what is wrong with me. I am truly the tech bro elite, paving the forests of our imaginations with Machine Learning and Big Data.

I like this anecdote I heard about Paul McCartney and the song “Hello, Goodbye”. I read it on Quora, but I'll just recall it from memory rather than dig up the link. Someone asked Sir Paul how he writes so many songs, and McCartney answered that anyone could write a song about anything. He then asked if the person who inquired would like to try it with him right now. That person answered that he or she had to go, so didn't have the time at the moment. “You say goodbye, and I say hello!” was McCartney's reply.

Really inspiring stuff. Paul McCartney, there's someone who's at max level.

I generally don't give too much credence to song lyrics. Sometimes they can be spot on, sometimes they are inspiring, sometimes they are evocative and very creative. But I don't think you have to be Dylan to make music with lyrics. Generally any sufficiently interesting phrase can be coerced into a lyric. I saw a YouTube video that talked about this and used the JFK “Ask not what your country can do for you, ask what you can do for your country” as an example. Like, think about the relative cadence and pacing of that phrase. It has a musicality all of its own, does it not? I agree with Paul McCartney: any phrase can be similarly massaged into musicality.

One question that always bothered me though is like, Paul McCartney is still here right? So why hasn't he had a hit song in 35 years?

Say Say Say Paul McCartney And Michael Jackson Peaked at #1 on 12.10.1983

Have his song writing skills atrophied? He doesn't have the right people around him? The world of musical fashion/style has passed him by? He can't sing anymore?

There are myriad possible answers, and it's something I wonder about all the time.