Add content.
|
@ -0,0 +1,4 @@
|
|||
[ZoneTransfer]
|
||||
ZoneId=3
|
||||
ReferrerUrl=https://s3.amazonaws.com/word-art/5f7b430e1209715ae4594718.png
|
||||
HostUrl=https://s3.amazonaws.com/word-art/5f7b430e1209715ae4594718.png
|
|
@ -0,0 +1,4 @@
|
|||
[ZoneTransfer]
|
||||
ZoneId=3
|
||||
ReferrerUrl=https://i1.sndcdn.com/artworks-000550036014-14wfb0-t500x500.jpg
|
||||
HostUrl=https://i1.sndcdn.com/artworks-000550036014-14wfb0-t500x500.jpg
|
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 121 KiB |
After Width: | Height: | Size: 18 KiB |
After Width: | Height: | Size: 134 KiB |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 308 KiB |
After Width: | Height: | Size: 13 MiB |
After Width: | Height: | Size: 65 KiB |
After Width: | Height: | Size: 12 MiB |
|
@ -0,0 +1,3 @@
|
|||
You won't believe what this post is about!
|
||||
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
Some Books to Read
|
||||
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
I like vim
|
||||
Sister's cats
|
||||
Vinny
|
||||
My last class
|
|
@ -0,0 +1,13 @@
|
|||
There was once a time when all humans lived forever.
|
||||
One courageous woman gets in a fight with young God.
|
||||
If she goes, the crowd cried, we all go.
|
||||
|
||||
"Did you hear it's Tem's 700th birthday tomorrow?"
|
||||
|
||||
"Oh, how lovely for her."
|
||||
|
||||
The woman and the man, around 400 and 300 years old, respectively, sat in a
|
||||
small lean-to, several tens of thousands of years before the invention of
|
||||
television.
|
||||
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
How to do a kickflip on Linux
|
||||
|
||||
I'm not quite a proper wizard when it comes to the wide world of Unix, but I've
|
||||
picked up a couple neat tricks over the years. I might occasionally update this
|
||||
page.
|
||||
|
||||
<h2>while true; do thing; done</h2>
|
||||
|
||||
<h2>for i in {0..5} do; thing{i}; done</h2>
|
||||
|
||||
<h2>nohup</h2>
|
||||
|
||||
Short for "no hangup", `nohup` allows another command to ignore the hangup
|
||||
signal (SIGHUP). This, probably among other things, allows a command to run in
|
||||
the background, continuing after an SSH disconnect, or other logouts. This has
|
||||
proven very useful in my work, where certain processes can kick me out of SSH.
|
||||
|
||||
<h2>The Difference Between Parameters and Arguments</h2>
|
||||
|
||||
Simply put, a parameter is part of the function definition:
|
||||
|
||||
<code class="codeblock">
|
||||
// vvvvv This is a parameter
|
||||
fn do_stuff(input: i32) {
|
||||
...
|
||||
}
|
||||
</code>
|
|
@ -0,0 +1,6 @@
|
|||
God, I Hate Paperwork
|
||||
|
||||
Some darned fool once again left their paperwork for the last minute, and now
|
||||
I'm the one who has to clean up the mess. Except, I'm the fool, and I'm texting
|
||||
my partner asking if she can pretty please find the info I left at home so I
|
||||
can fill this crap out.
|
|
@ -0,0 +1,14 @@
|
|||
Peppers Part 2: The Peppening
|
||||
|
||||
The hot sauce is complete! After a week of fermented waiting, I blended the
|
||||
peppers up with some vinegar, and voila! Hot sauce. So, how'd it turn out?
|
||||
|
||||
Well, first of all, kinda brown:
|
||||
|
||||
<a href="../assets/hot-sauce_full.jpg">
|
||||
<img src="../assets/hot-sauce.jpg"
|
||||
alt="A plastic tupperware filled with a brownish-green, slightly thick hot
|
||||
sauce."></a>
|
||||
|
||||
Otherwise, if I really had to lean into my culinary expertise, I would say that
|
||||
the sauce tastes like peppers.
|
|
@ -0,0 +1,4 @@
|
|||
On Soup
|
||||
|
||||
I like soup. I think soup is more or less underrated by the world at large.
|
||||
Soup rules.
|
|
@ -0,0 +1,23 @@
|
|||
I Wish I Read More
|
||||
|
||||
When I was a kid, I read books more or less constantly. Somewhere in middle
|
||||
school, my pace slowed significantly. I blame homework. I went through a few
|
||||
books in there, but not at nearly the rate from before. After high school, I
|
||||
stopped reading almost completely.
|
||||
|
||||
Oh, I spent plenty of time on comment threads, but not books. Then I started
|
||||
living with my partner, and we only had one car, so I started taking the bus to
|
||||
work. Bless public transportation. With hands finally free, there existed at
|
||||
least an hour each day with nothing better to do than read. I still didn't,
|
||||
obviously, but I had time to.
|
||||
|
||||
My then-new job, however, had quite a few technical books laying around, and I
|
||||
was to go through bits and pieces for work-related knowledge. Somewhere in
|
||||
there, I had a moment of, "Oh, books are like, <i>fun</i>. Right.". It didn't
|
||||
take too long before I always had something to read on me.
|
||||
|
||||
I keep track of the books I've read on Goodreads, because I didn't loathe
|
||||
Amazon when I made the account, and I haven't yet taken the time to transition
|
||||
somewhere else.
|
||||
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
Zelda and Calli
|
||||
|
||||
AKA <i>shameless cat-posting 2</i>
|
||||
|
||||
I mentioned my sibling's cats in <a href="neighborhood-cat">another post</a>,
|
||||
but I figure they deserve an explanation of their own.
|
||||
|
||||
My sibling is currently looking for a new place to stay, so my partner and I
|
||||
have been looking after their two cats for a while. There are two very
|
||||
different personalities at here. We have:
|
||||
|
||||
Grouch
|
||||
<a href="../assets/callie_full.jpg">
|
||||
<img src="../assets/callie.jpg"
|
||||
alt="A patchy light-brown and black cat
|
||||
"></a>
|
||||
|
||||
Weird
|
||||
<a href="../assets/zelda_full.jpg">
|
||||
<img src="../assets/zelda.jpg"
|
||||
alt="A black and white cat
|
||||
"></a>
|
||||
|
||||
2020-10-04
|
|
@ -0,0 +1,69 @@
|
|||
Oops, forgot to write
|
||||
|
||||
I haven't written anything for like a week (2 weeks? A month? Who knows
|
||||
anymore) because I got myself all busy with <i>reading</i>. I feel it a noble
|
||||
enough sacrifice. Today, however, I have a bit of a headache, and writing
|
||||
offers a lot more flexibility as far as thinking and letting your eyes wander.
|
||||
|
||||
Also, apparently I busted by website-generator thing around the time of my last
|
||||
post, so several pages were screwed-up for a bit, but they should be good now!
|
||||
|
||||
Anyway, what better to write about than the crap I've been reading. I thought
|
||||
about making these all affiliate links (not through Amazon though, god), but
|
||||
<strong>1.</strong> It takes work to work sign up and <strong>B.</strong> It
|
||||
just ain't that serious. Maybe some day. Anyhow:
|
||||
|
||||
<h2>Books</h2>
|
||||
|
||||
<h3>The Witches Are Coming - Lindy West</h3>
|
||||
|
||||
A good "cultural critique" without any academic stuffiness. Or anything even
|
||||
remotely resembling stuffiness. It has a very modern writing style -- West is
|
||||
obviously a scholar of the internet -- and it's pretty hilarious for it.
|
||||
|
||||
<h3>Is Everyone Hanging Out Without Me? - Mindy Kaling</h3>
|
||||
|
||||
The amusing stories of a TV writer. A light, fun read. Though there was one
|
||||
joke about an old African schoolmate that wasn't <i>great</i>. C'mon, Mindy,
|
||||
you're funny without that.
|
||||
|
||||
<h3>Tomatoland - Barry Estabrook</h3>
|
||||
|
||||
A jaunt down the capitalist hell-hole that tomato farming apparently is (more
|
||||
than everything else). I appreciate that it didn't pull too many punches.
|
||||
Occasionally a smidge sympathetic to some that don't deserve it, but still left
|
||||
me wanting to switch to a farmers' market.
|
||||
|
||||
<h3>The Sirens of Titan - Kurt Vonnegut</h3>
|
||||
|
||||
Interesting concept. Reminded me a lot of Hitchhiker's Guide, but with less
|
||||
whimsy.
|
||||
|
||||
I don't know. Theoretically, I like Vonnegut, but the treatment of
|
||||
women in this is... not good.
|
||||
|
||||
<h3>The Princess Bride - William Goldman</h3>
|
||||
|
||||
Having only seen the wonderful movie adaptation, it's weird to read the book
|
||||
now. It's great, but -- blasphemy -- I don't think it has much of anything over
|
||||
the movie.
|
||||
|
||||
<h3>Americanah - Chimamanda Ngozi Adiche</h3>
|
||||
|
||||
A young Nigerian woman's journey to America, and the accompanying shattered
|
||||
illusions about the land of the free. Not much I can say here that hasn't
|
||||
already been said, but it tells a good story with absolutely terrific prose.
|
||||
|
||||
<h3>Almost Perfect - W.E. Pete Peterson</h3>
|
||||
|
||||
A brief history of a now-defunct word-processor. It chronicles the story of a
|
||||
business built from scratch by a bunch of whiteys, and the author with his
|
||||
ridiculous name is a self-professed Glenn Beck fan these days (grimace emoji).
|
||||
That said, if you're an awful, awful, nerd like me, and amused by that
|
||||
old-school computer scene (these guys made millions before GUIs were things
|
||||
people had) then it might be interesting.
|
||||
|
||||
That's all for now. Join me next week, when I'll be ranking the 10 cheap-o
|
||||
Donna Andrews murder-mysteries I've read.
|
||||
|
||||
2020-10-15
|
|
@ -0,0 +1,67 @@
|
|||
What is it with pointers?
|
||||
|
||||
Listen, if I had to pick a language to write a decent program in, I'd want to
|
||||
use something like Rust. It behaves in more or less all the sane ways I want a
|
||||
language to behave. Python's nice and quick for Python-y stuff, and Javascript
|
||||
is Javascript, etc. But for some reason, I just <i>like</i> C.
|
||||
|
||||
I've written something of an implementation of Lisp for my Pebble smartwatch,
|
||||
which I named PebbLisp. I'd love to have written it in Rust, to get some more
|
||||
practice with it, but it was a real pain in the tookus to get compiling for the
|
||||
watch, and I gave up. So, C.
|
||||
|
||||
I'll never act like C is a perfect language. Many, many, stupid memory leaks
|
||||
could've been avoided with something smarter. For some reason, though, it's
|
||||
just fun to work with. PebbLisp involves some dancing about with pointers, and
|
||||
includes a homegrown tagged-union setup. There are parts that are probably very
|
||||
ugly to more practiced eyes, and correcting unexpected behavior is a nightmare,
|
||||
but coding it leaves me downright giggly sometimes.
|
||||
|
||||
The Object struct in PebbLisp has three parts:
|
||||
|
||||
<code class="codeblock">struct Object {<br>
|
||||
Type type;<br>
|
||||
union {<br>
|
||||
...<br>
|
||||
};<br>
|
||||
Object *forward;<br>
|
||||
}</code>
|
||||
|
||||
<h2>The Tag</h2>
|
||||
|
||||
The first part is the `Type` of the `Object`. This is just an enumeration with
|
||||
all the possible types that a PebbLisp object can be. It's the tag of our
|
||||
tagged union. Already I like it far more than is warranted. One number is a
|
||||
front for every possible type? Incredible!
|
||||
|
||||
<h2>The Union</h2>
|
||||
|
||||
The second part is, of course, the union itself. I've cut it out here, but
|
||||
there are members of the union for integers, pointers to strings, function
|
||||
pointers, etc. Unions are also something I treasure. The famous issue with
|
||||
unions is trying to keep track of what state any given union is actually in,
|
||||
and god help you should it ever be interpreted incorrectly. That's why it's
|
||||
fun, though. Coding a consistent way to access a union feels like cracking open
|
||||
the secret door of programming. The Pointer
|
||||
|
||||
Finally, `Object *forward`: something that traditionally might be named `cdr`
|
||||
(which I had to look up, because I'm really not enough of a Lisp guy). In Lisp,
|
||||
everything is a list. An object with `forward == NULL` is a list of length 1.
|
||||
An object that points to another object is a list of length `1 +
|
||||
listLength(forward)`, aka itself plus the rest of the list.
|
||||
|
||||
So much code in PebbLisp is dedicated to making sure that this value is never
|
||||
incorrect, duplicate, or useless. A `cloneObject()` function exists largely
|
||||
because copies of individual objects can't keep this address. I'd love to use
|
||||
our friendly neighborhood assignment operator: `=`, but C doesn't allow operator
|
||||
overloading. But `cloneObject()` was fun to write, somehow!
|
||||
|
||||
<h2>C</h2>
|
||||
|
||||
Anyway, this has already run too long. Point is, C doesn't care what you do
|
||||
with data. And for some reason, it's fun to redo decades of other people's work
|
||||
in a project no one asked for. I highly recommend it.
|
||||
|
||||
#100DaysToOffload
|
||||
|
||||
2020-09-01
|
|
@ -0,0 +1,22 @@
|
|||
Joy of Disc Golf
|
||||
|
||||
So, my partner and I have gotten pretty into disc golf recently. About two
|
||||
weeks ago I ordered a new disc, so we could bring friends out for a bit of
|
||||
good, clean, socially-distanced fun. It's pink and it's awesome.
|
||||
|
||||
Yesterday, we went to go play a few rounds at a different course than the
|
||||
usual. Me, ace that I am, absolutely whipped that brand new disc onto a nearby
|
||||
roof. COVID being COVID, there are, fairly, no facility people available.
|
||||
|
||||
Though I was initially a stubborn ass about it, my partner had the idea to
|
||||
bring a ladder out and get it back. I thought it was crazy to climb onto the
|
||||
roof of some park building, but another disc golfer (or <i>dolfer</i>) walked
|
||||
by and said that he's done it here a million times. So, partner's right, as
|
||||
always.
|
||||
|
||||
Unless it goes wrong, in which case I'm morally bound to amend this with the
|
||||
appropriate amount of <i>neener-neener</i>s.
|
||||
|
||||
If it all works out, I'll add photos of our victory!
|
||||
|
||||
2020-09-22
|
|
@ -0,0 +1,26 @@
|
|||
Hey look! My own site!
|
||||
|
||||
In <a href="site">my last post</a>, I lamented not having a place to put
|
||||
my own stuff. Today I actually took a couple minutes to register a domain, set
|
||||
up DNS nonsense, and <i>upload</i>. Thus: this! Feels like I might have kinda
|
||||
lost the thread re: #100DaysToOffload, but this is fun, too.
|
||||
|
||||
The most head-spinning part of the process was coming up with the name.
|
||||
Ultimately taking the simple route, I ended up somewhere between neat and
|
||||
cheesy. I also think "sagev" and "space" being the same length is odd, but
|
||||
visually, I like it a lot.
|
||||
|
||||
The site is intended to be as small as possible, while still looking nice, and
|
||||
following all accessibility guidelines. It's definitely quick to load, but
|
||||
could afford a bit more polish on the second and third fronts.
|
||||
|
||||
I picked up the domain on Namecheap, and currently have everything hosted on
|
||||
Netlify. May I never exceed the limits of a free tier! It would be cool to
|
||||
self-host at some point, but as it stands, this is more than sufficient, and I
|
||||
don't need to leave a computer running all the time.
|
||||
|
||||
I wish I had more to say about this, because having my own site feels pretty
|
||||
exciting! But I'm scraping the bottom of the barrel for content as it is, so
|
||||
I'll just say I'm looking forward to doing more with it!
|
||||
|
||||
2020-09-21
|
|
@ -0,0 +1,99 @@
|
|||
How to be an Irredeemable Nerd and Look Good Doing It
|
||||
|
||||
In a <a href="c">previous post</a>, I talked a bit about my endeavour to build
|
||||
myself a lil' Lisp: PebbLisp. It's a project I work off and on depending on my
|
||||
motivation. Recently, I was pretty bored with it, and found myself looking for
|
||||
a new project. Having read a bit about Forth, I thought it wouldn't be too hard
|
||||
to try implementing it. Plus, this would be a great opportunity do some
|
||||
practice with Rust.
|
||||
|
||||
If you're not familiar with Forth, it's a weird little interpreted language
|
||||
built around a stack. Passing in a number will add it to the top of the stack,
|
||||
passing in a function will (usually) do something with numbers on the stack.
|
||||
For example, what happens when you run the following?
|
||||
|
||||
<code class="codeblock">2 3 + .</code>
|
||||
|
||||
First, `2` and `3` are added to the stack. Then, `+` pops the top two items off
|
||||
the stack, and adds them. Then it pushes the result back onto the stack.
|
||||
Finally, the `.` pops the top item off of the stack, and prints it out:
|
||||
|
||||
<code class="codeblock">5</code>
|
||||
|
||||
You can also compile functions that add some of these elements, and the
|
||||
language can become surprisingly expressive:
|
||||
|
||||
<code class="codeblock">
|
||||
: feet 12 * ;<br>
|
||||
: yards feet 3 * ;<br>
|
||||
<br>
|
||||
5 feet . <br>
|
||||
\ This prints 60 (5 feet in inches) <br>
|
||||
<br>
|
||||
8 yards .<br>
|
||||
\ This prints 288 (6 yards in inches) <br>
|
||||
<br>
|
||||
5 yards 2 feet + .<br>
|
||||
\ This prints 204 (5 yards + 2 feet) <br>
|
||||
</code>
|
||||
|
||||
So, I figured "hey, looks simple enough", and got to work. Got basic parsing
|
||||
going, got the stack pretty functional, added a few functions, whoo. Rust
|
||||
turned out to be a great choice. Expressive, safe, and with built-in testing.
|
||||
Good stuff. Almost too good. I'd started looking at PebbLisp again. Could I
|
||||
write an interpreted language using my own interpreted language? Forth is
|
||||
pretty simple, conceptually. How hard could it be?
|
||||
|
||||
Actually, it hasn't been the unholy mess that I was expecting. Yes, my PebbLisp
|
||||
is severely lacking (there was no way to take user input before?). No, it has
|
||||
nothing anything even remotely resembling a formal language definition (I've
|
||||
operated on the "this seems to make sense" principle). With some tweaks though,
|
||||
it has kind of worked!
|
||||
|
||||
My to-be-named Forth (Forbble? PLForth? PebForListhble?) is <em>incredibly</em>
|
||||
buggy, and pretty tedious even when it does work, but it sort of kind of does!
|
||||
|
||||
<code class="codeblock">
|
||||
$ "feet" 12 * "END"<br>
|
||||
$ "yards" 36 * "END"<br>
|
||||
5 "yards" 2 "feet" +<br>
|
||||
.<br>
|
||||
\ This prints 204
|
||||
</code>
|
||||
|
||||
So, for reasons I've yet to suss out:
|
||||
|
||||
<ul>
|
||||
<li>Functions can't be defined using other functions</li>
|
||||
<li>Functions need to be defined using quotes, for goofy string/symbol reasons
|
||||
in PebbLisp.</li>
|
||||
<li>Statements that use a user-defined function seem to ignore the dot operator
|
||||
at the end.</li>
|
||||
</ul>
|
||||
|
||||
<em>Please ignore the awful END symbol it should be easy to fix.</em>
|
||||
|
||||
Anyway, it's been pretty neat to actually try doing something with PebbLisp.
|
||||
I've cleaned up a bunch of hacky ways of doing things, and added a few more.
|
||||
Some of it is super useful outside of Forbble (Flisbble? Porlth?) too. Since I
|
||||
added an `eval` function, and a way to take input, it's actually super easy to
|
||||
write up a REPL in PebbLisp itself. Very fun!
|
||||
|
||||
PebbLisp was never intended to be a terrifically practical language. Have I
|
||||
mentioned it was originally created to be written and run on a smartwatch?
|
||||
Yeah, the Pebble (hence the name). Enjoy typing on its four buttons. This is
|
||||
also the reason PebbLisp is written in C, as nothing else worked with their
|
||||
SDK. Nonetheless, it is incredibly satisfying to get your own language running
|
||||
something even remotely real. Even if that something is another, even less
|
||||
useful language.
|
||||
|
||||
I love it.
|
||||
|
||||
If you, like me, enjoy programming enough to do it in your free time, try
|
||||
writing a little lang. Forth is a great place to start, and Rust is a great
|
||||
language to write in, but there are certainly others that would be cool to work
|
||||
with. Or just try <em>using</em> a different language. I'm not saying your
|
||||
Forth knowledge will get you hired anywhere, but it's a good excuse to look at
|
||||
your code differently, which is always a good idea.
|
||||
|
||||
2020-11-06
|
|
@ -0,0 +1,41 @@
|
|||
Buying someone a new laptop
|
||||
|
||||
My partner's been running with a 2015 MacBook Air for a few years now,
|
||||
but it's no longer doing what she needs. That is to say, it rapidly
|
||||
converted from “ok” to “very stinky” over the last year-ish. YouTube
|
||||
videos stutter. It's madness. We even re-installed MacOS, and no dice.
|
||||
An upgrade was in order, and with all the remote work stuff, it needed
|
||||
to be a sizeable one.
|
||||
|
||||
Now, my current laptop is a Dell Precision M4700 from early 2013 (that
|
||||
I bought in 2018). It's a fat boy. Nearly an inch and a half thick,
|
||||
and not exactly <i>chamfered</i>. Priorities for that purchase include:
|
||||
number of hard drive spots, number of RAM slots, can play Factorio.
|
||||
|
||||
My partner did not want a Dell Precision M4700. She has frivolous
|
||||
requirements like “battery life more than an hour”, “un-terrible
|
||||
webcam”, and “less than 6 pounds”. This narrowed down the options
|
||||
significantly. Of course, what narrowed it down more was that I
|
||||
insisted on finding something with swappable RAM and storage, but I
|
||||
stand by that.
|
||||
|
||||
The search for new technology is kinda fun, but I spent way too much
|
||||
time on it, and it got to be pretty draining. There exist far too many
|
||||
devices with good specs and terrible trackpads. We also try to buy
|
||||
used where possible for not-being-wasteful reasons, but her work uses
|
||||
very poorly-optimized software, so we bit the bullet and found
|
||||
something new.
|
||||
|
||||
And when I say “we”, I mean “she”. I spent hours on the search (and
|
||||
picked up plenty about the current laptop “market” or whatever) but
|
||||
ultimately she found it, tucked away on a manufacturer's website. I
|
||||
gave it the know-it-all computer-guy seal of approval, and we ordered.
|
||||
It looks pretty cool, and should totally blow mine out of the water.
|
||||
|
||||
But it hasn't arrived yet, so maybe it's terrible.
|
||||
|
||||
#100DaysToOffload
|
||||
|
||||
PS: For those interested it's an Inspiron 15 5000 with the Ryzen 5 4500U.
|
||||
|
||||
2020-09-09
|
|
@ -0,0 +1,58 @@
|
|||
A Programmer Makes Music
|
||||
|
||||
A few years ago, I found the lovely <a href="https://godotengine.org">Godot
|
||||
Engine</a>, and decided to make a game. It's called Fronter and it's not much
|
||||
of an improvement over the Flash game I made by copying a tutorial in 2009.
|
||||
Though I wrote it myself this time instead of just swapping out assets (I was
|
||||
13, okay). It's sorta fun, but very incomplete and <i>terribly</i> balanced.
|
||||
It does, however, have exquisitely-crafted graphics:
|
||||
|
||||
<a href="../assets/fronter_full.jpg">
|
||||
<img src="../assets/fronter.jpg"
|
||||
alt="The main "character" of Fronter: a very simple, significantly sloppy
|
||||
black and white drawing of what some might call a spaceship."></a>
|
||||
<small>Yee-haw</small>
|
||||
|
||||
I love programming. I love solving problems with clever solutions. I think it
|
||||
can be hard in certain types of creative project, though. I've had tons of fun
|
||||
working on my little LISP implementation because, there, programming is the
|
||||
journey <i>and</i> the destination. Those problems are fun to solve, and have a
|
||||
clearly-defined scope. With a game, it's way easier for me to glom on a bunch
|
||||
of nonsense, and barely get anywhere with the actual gameplay.
|
||||
|
||||
So, somewhere in there, I got tired of scratching my head, "Make enemy strong?
|
||||
But no make <i>too</i> strong." and just worked on the music. I'm no musical
|
||||
genius-man, but sometimes programming is stupid, and you just want to make
|
||||
drums go bop and synths go bzz.
|
||||
|
||||
Most of the music is overtly game-y, with the aforementioned buzzy synthesizer,
|
||||
but I think it works most of the time. A lot of the songs I've done are also
|
||||
way too intense for background music, like they'd only make sense at the climax
|
||||
or the closing credits. Part of the reason I dropped the game was because I
|
||||
couldn't find anywhere to put the music I worked on!
|
||||
|
||||
I've hardly ever <i>named</i> a song, either. Nearly everything still has its
|
||||
placeholder name. "Organ", "Game Tune", and the especially horrifying "Poppin'
|
||||
Freestyle", are all in desperate need of a rename. And no, "freestyle" refers to
|
||||
several minutes of synth noodling. It is not rap. If you ever see a post on
|
||||
here titled, "Me Rapping is a Good Idea, Actually", please reach out to my
|
||||
emergency contacts.
|
||||
|
||||
This post isn't intended as a plug, but if you're itching to hear some
|
||||
bleep-bloops, there is technically a
|
||||
<a href="https://soundcloud.com/fronter_game">Soundcloud for Fronter</a>
|
||||
. I didn't
|
||||
spend much time on a lot of the songs, so they severely lack polish, but the
|
||||
three I mentioned above are, I think, the best (more or less in the order
|
||||
given).
|
||||
|
||||
I haven't had the power cable for my MIDI keyboard (a rather cheap-o Yamaha
|
||||
YPT-240), so it's been a long while since I attempted a tune. Finally bit the
|
||||
bullet on ordering a new one yesterday, so maybe I'll work on more stuff in the
|
||||
near future.
|
||||
|
||||
Also annoying FOSS-lover that I am, <a href="https://lmms.io/">LMMS</a> is the
|
||||
music-making software I've used. So, if you have a melody kicking around in
|
||||
your head, I highly recommend that you try and play it out. It's very fun.
|
||||
|
||||
2020-10-01
|
|
@ -0,0 +1,26 @@
|
|||
How much is that kitty in the window?
|
||||
|
||||
AKA, <i>Shameless cat-posting</i>
|
||||
|
||||
Our house has a stray cat hanging around (dubbed, "Vinny") who my partner and I
|
||||
have grown quite fond of. He comes up to the back door every few days to get food
|
||||
and engage in a staring contest with our cats.
|
||||
|
||||
Vinny is pretty thin, but sports an enormous melon. He also maintains a very
|
||||
serious look on his face despite frequently poking his tongue out.
|
||||
|
||||
<a href="../assets/vinny_full.jpg">
|
||||
<img src="../assets/vinny.jpg"
|
||||
alt="A light-brown cat with a big head staring through the bottom window
|
||||
of our back door."></a>
|
||||
<small>No blep today. Very serious.</small>
|
||||
|
||||
I'd love to invite this obviously-very-good boy inside, but one of the other
|
||||
cats can be a real ass, and I'm not sure having a scrap is in either of their
|
||||
interests. Technically, we're borrowing these two from family, but they've
|
||||
gotta stay under our watchful eyes for now.
|
||||
|
||||
He's been stopping by more frequently in the last couple of days, so I hope we
|
||||
can fatten him up a bit. He needs a body to match that noggin.
|
||||
|
||||
2020-10-02
|
|
@ -0,0 +1,30 @@
|
|||
A Peppery Experiment
|
||||
|
||||
Inspired by boredom, an unreasonable affinity for all things vinegary, and a
|
||||
friend doing neat pickle stuff, I've decided to try making some fermented hot
|
||||
sauce. It's the first time I've fermented something, so it should be a learning
|
||||
experience, if nothing else.
|
||||
|
||||
The <a
|
||||
href="https://www.chilipeppermadness.com/recipes/fermented-hot-sauce">recipe</a>
|
||||
I'm following is pretty simple, but my impatience and cheapness may impact the
|
||||
outcome. I don't have any jars that are as big as they recommend, so I split it
|
||||
into two that are, <i>cleverly</i>, not the same size. The big jar doesn't have
|
||||
the right lid anymore, so the wrong one is currently held in place with
|
||||
shoelace. And, to be extra confident in the seal, I slapped some books on top
|
||||
of it. Another job well done.
|
||||
|
||||
<a href="../assets/peppers_full.jpg">
|
||||
<img src="../assets/peppers.jpg"
|
||||
alt="Two glass jars with halved peppers immersed in water.
|
||||
One has a shoelace and some books on it.
|
||||
Both are practically erupting with plastic bags"></a>
|
||||
|
||||
Plus, apparently I can't read, because I ordered white cooking wine instead of
|
||||
white wine vinegar. So, that bodes well. I don't need it until the end, so I've
|
||||
got time to pick up the right stuff, but still.
|
||||
|
||||
I have no idea how this will turn out, but I'm pretty excited to see! Just a
|
||||
week of waiting.
|
||||
|
||||
2020-09-27
|
|
@ -0,0 +1,33 @@
|
|||
PostCats
|
||||
|
||||
I wrote this as a group project proposal for a web applications class, but I
|
||||
ended up with a team that had a different direction in mind. I thought it
|
||||
was kinda funny, though, so I say it fits here.
|
||||
<hr></hr>
|
||||
Have you ever thought, <i>"Boy, this floor doesn't have nearly enough colorful
|
||||
nonsense on it"</i>? Is there a hole in your soul that can only be filled
|
||||
vicariously through your cat? Then, my god, do I have a website for you!
|
||||
PostCats is a cat toy subscription service, available in monthly, weekly, or
|
||||
daily installments!
|
||||
|
||||
At PostCats, we know that your pet quickly tires of playing with the same toy
|
||||
day after day. We think bored cats make for bored people. A little variety seems
|
||||
to be in order!
|
||||
|
||||
At our website, we are excited to offer dozens of unique, engaging cat toys, all
|
||||
delivered straight to your door! Simply select what combination you would like
|
||||
of fuzzy, stringy, noisy, (or surprise!) toys, and how often you would like them
|
||||
delivered. We'll take care of the rest!
|
||||
|
||||
PostCats makes it our mission to deliver fun straight to your door, and into
|
||||
your cat's heart.
|
||||
|
||||
Start now for only 50 cents a day!*
|
||||
|
||||
<h2>PostCats ensures that the fun endures!</h2>
|
||||
|
||||
<i>*50-cent-per-day promotional price is based on ordering a five-year subscription
|
||||
of monthly toy deliveries at a rate of $182.50 per year. The promotion expires
|
||||
after the first year, and the price returns to its standard $200 per year.</i>
|
||||
|
||||
2020-09-22
|
|
@ -0,0 +1,53 @@
|
|||
Boy, I sure love college
|
||||
|
||||
This semester, I'm finally, <em>finally,</em> finishing up the last class in my
|
||||
bachelor's. I started this degree in the Spring of 2016, <em>after I'd finished
|
||||
my associate's</em>. So, I've been after this stupid thing since Fall 2014, and
|
||||
I'm sick of it. Thanks to a scholarship, my tuition has "only" totalled
|
||||
somewhere around fifteen, maybe twenty thousand dollars. Might be good to know
|
||||
the exact figure at some point, but since I could technically still drop out,
|
||||
it's best that I don't think about it too much.
|
||||
|
||||
To think I'm still luckier than so many people. I have seven or eight thousand
|
||||
something in loans left to pay off, but that doesn't touch the tens of
|
||||
thousands that people can have racked up against them. And that's if they can
|
||||
manage to get into a useful school. And that's if they can even afford to spend
|
||||
time on an education, instead of working to survive.
|
||||
|
||||
Even if higher education were free -- great idea though it is -- some people
|
||||
<em>still</em> couldn't afford to go. It would help a lot of people, but it
|
||||
doesn't change <span title="Hint: it's Capitalism">the system we're in.</span>
|
||||
|
||||
// <a href="../assets/cap_full.png" title="View full size">
|
||||
// <img src="../assets/cap.png"
|
||||
// alt="The phrase 'It's Capitalism', in wobbly, old-MS-Office-style word art.">
|
||||
// </a>
|
||||
|
||||
<h2>Speaking of school</h2>
|
||||
|
||||
I don't know if you knew this, but people are really rolling the dice on the
|
||||
lives of teachers right now. Especially in my state. There's an
|
||||
idiot-and-evil-fueled pandemic going around, and they're dealing with children
|
||||
by the dozen. The people making these decisions don't have to deal with the
|
||||
consequences, so why not?
|
||||
|
||||
There are teachers who have a master's in education, who are being exposed to
|
||||
god-knows-what at work every day, and are making less money than any schmuck
|
||||
who knows what C is. It's madness. I like programming and I've done some tough
|
||||
work, but it is not as important or as difficult as teaching,
|
||||
<em>obviously</em>. My partner is a teacher herself, and right now the
|
||||
employment opportunities are essentially:
|
||||
|
||||
<ul>
|
||||
<li>Online tutoring with no hours</li>
|
||||
<li>Die</li>
|
||||
</ul>
|
||||
|
||||
I'm even in the office while training at my new job, but there's never more
|
||||
than 10 people here, and none of their hands are ever inexplicably sticky. I
|
||||
know that a lot of individuals respect teachers, but the system clearly
|
||||
doesn't.
|
||||
|
||||
My life is not more important than theirs.
|
||||
|
||||
2020-10-05
|
|
@ -0,0 +1,27 @@
|
|||
Hugo? More like, No-Go
|
||||
|
||||
Driven largely by a staunch refusal to learn anything too new, I've decided to
|
||||
try my foolish hand at writing one of these "static site generators". That is
|
||||
to say, I've decided to pretend a task is very very simple, and pray that my
|
||||
needs never outgrow my mediocre bash skills.
|
||||
|
||||
Basically, I'm <i>tired</i> of writing brackety tags everywhere, so I have a
|
||||
little converter from plain text to HTML. There's a template.html file and an
|
||||
index.template.html file. The first is the basis for individual posts, and the
|
||||
second is used to generate a list of links to each post.
|
||||
|
||||
This script is incredibly naive. It more or less copy pastes the text in a
|
||||
given post file straight into the body of the template.html file. But it does
|
||||
use the first line of the file as both the header and the name of the link,
|
||||
which is kinda fun. And I can just add HTML tags wherever I want, if I do feel
|
||||
like adding some <i>flair</i>.
|
||||
|
||||
At some point, I might try to convert this into a real project with my dear
|
||||
friend Rust, but for now that's 2 hard.
|
||||
|
||||
The best part of this whole thing is that I don't even have a way to host it,
|
||||
yet. So for now, write.as, whoo!
|
||||
|
||||
#100DaysToOffload
|
||||
|
||||
2020-09-17
|
|
@ -0,0 +1,37 @@
|
|||
Passing the Torch
|
||||
|
||||
When I left my last job, I was lucky enough to do so on great terms with
|
||||
everyone there. It was all very <i>the circumstances are what they are -
|
||||
nothing to be done</i>. So, when I put in my notice, I was asked to spend some
|
||||
time showing my replacement the ropes, and I was surprised by how much I
|
||||
enjoyed it!
|
||||
|
||||
Much as I did like working with the company, there was a thing or two that made
|
||||
my own onboarding a bit weird. The first day of the job basically began with,
|
||||
"You know some C? Go fix an enormous memory leak in this Linux driver."
|
||||
|
||||
<i>"Okay."</i>
|
||||
|
||||
I enjoyed the challenge, and it worked out alright, but it was definitely a
|
||||
rough way to start. Worse, it took forever to figure out what people even
|
||||
<i>did</i> every day. Evidently, I was on a team of 3, but it was days before I
|
||||
knew who my teammates were, and weeks before I figured out what they were
|
||||
actually working on.
|
||||
|
||||
So, I wanted to save my replacement some time. Most of it was just saying "the
|
||||
device we're working on is designed to do <i>this</i>, your teammates are these
|
||||
two, who work on <i>that</i> and <i>that</i>, and what you'll be doing for the
|
||||
foreseeable future is <i>this</i>". So it wasn't exactly excruciating. I just
|
||||
tried to clear up some of vagueries I dealt with at the beginning. Sometimes,
|
||||
it also made sense to help them brush up on C, which, as I've <a
|
||||
href="c">mentioned before</a>, I'm unreasonably happy to do.
|
||||
|
||||
It was hard in a few ways, because at this point the company did most of its
|
||||
work remotely. I never actually got a chance to meet the person replacing me,
|
||||
but I still enjoyed teaching, and I hope I made their life a little easier.
|
||||
|
||||
I'm definitely not clamoring to lead a group based on one, "I taught someone
|
||||
some stuff and then <i>left before there could be consequences"</i>, but I
|
||||
really liked my brief excursion in it, and I'd be happy to try again!
|
||||
|
||||
2020-09-30
|
|
@ -0,0 +1,35 @@
|
|||
How to become a Hackerman
|
||||
|
||||
How does one become hacker? <i>Use a hacker editor.</i> Vim is the text editor
|
||||
used by all the most elite hackers on this globe. If you want to be a cool
|
||||
hacker lady or hacker boy, there's only one way to do it: vim.
|
||||
|
||||
Why vim?<br>Well, here's why: we have: in vim:
|
||||
|
||||
<ul>
|
||||
<li>Insert mode</li>
|
||||
<li>Move fast</li>
|
||||
<li>Press keys</li>
|
||||
<li>Can't quit</li>
|
||||
</ul>
|
||||
|
||||
If you use vim, you are cool. If you use notepad, you are stupid. If you use
|
||||
IDE, you are baby. If you use emacs, you are just dumb. There's only one editor
|
||||
for me, and that's the one that starts with 'V', and ends with 'm', and has an
|
||||
'i'.
|
||||
|
||||
I have a tattoo of hjkl on my ass. If you took the first letter of each
|
||||
sentence in this paragraph, it would spell 'IIT'. Thanks to vim I figured that
|
||||
out in 2 minutes.
|
||||
|
||||
I have two great shortcuts in my .vimrc (<i>vim really cool</i>) for coding
|
||||
with more power. When I finish a sentence, vim automatically commits the file
|
||||
with the message "Hacking". When I press an arrow key my computer restarts, and
|
||||
even better, shoots me.
|
||||
|
||||
I've been using vim since before it was invented, so if you think you know more
|
||||
about it than me you can just shut your dang mouth.:w
|
||||
|
||||
I will never use anything else. You can't make me.
|
||||
|
||||
2020-10-02 01:00:00
|
|
@ -0,0 +1,37 @@
|
|||
The Worst Phone I Own
|
||||
|
||||
I own far too many phones because I'm a nostalgic nitwit and I never manage to
|
||||
get rid of the old ones. Some were broken and replaced, and some were lost to
|
||||
carrier-switching. Two phones I purchased just for fun. One was a Galaxy SII,
|
||||
for toying with PostmarketOS. The other is the worst smartphone I've ever
|
||||
owned: the Alcatel OneTouch Pixi Pulsar.
|
||||
|
||||
The Pulsar is small, slow, has a locked bootloader, is stuck on Android 4.4.2
|
||||
(3 years old when I bought it) and is locked to Tracfone. Why did I buy this
|
||||
piece of junk? Because it cost $4.83, after taxes, shipped overnight. I know
|
||||
carriers discount devices so you'll buy their service, and it's a piece of
|
||||
junk, but still.
|
||||
|
||||
I tried a few of my main apps. Tusky is incompatible, but Fedilab runs okay.
|
||||
Slide for Reddit works alright but has some bizarre behavior when switching
|
||||
between activities (or fragments or whatever they are). The only camera is
|
||||
obviously hideous and rear-facing. During an unrelated nostalgia kick I read
|
||||
the entirety of two Goosebumps books using Librera Pro, which worked well.
|
||||
|
||||
Anyway, it's pretty terrible. I had some fun experimenting with it, as a
|
||||
what's-the-worst-hardware-I-can-live-with test, but it's pretty rough. If it
|
||||
had a little more space and the software was a smidge newer, I might be able to
|
||||
get by.
|
||||
|
||||
That said, consider giving this experiment a try. I wouldn't recommend going
|
||||
and buying something you don't need — it feels wasteful, now — but if you've
|
||||
got an old phone in a drawer somewhere, pull it out. Boot it up and see how it
|
||||
compares to your current device.
|
||||
|
||||
And then, if you're anything like me, sell the damn thing.
|
||||
|
||||
Yeesh.
|
||||
|
||||
<i>Originally posted on write.as</i>
|
||||
|
||||
2020-08-25
|
|
@ -0,0 +1,26 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" href="../styles.css">
|
||||
<title>404 Page Not Found - SageV.Space</title>
|
||||
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="../apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="../favicon-32x32.png">
|
||||
<link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
|
||||
<link rel="manifest" href="../site.webmanifest">
|
||||
<link rel="mask-icon" href="../safari-pinned-tab.svg" color="#242627">
|
||||
<meta name="msapplication-TileColor" content="#224679">
|
||||
<meta name="theme-color" content="#ffffff">
|
||||
</head>
|
||||
<body>
|
||||
<h1>"The library, and step on it!"</h1>
|
||||
|
||||
<div class="content">
|
||||
<p>Seems you tried to access a page that doesn't exist.</p>
|
||||
<p>This is almost certainly my fault.</p>
|
||||
</div>
|
||||
|
||||
<br><a class="ret" href="index.html">Return to home</a>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,5 @@
|
|||
/ /index.html
|
||||
/pages/hey_look.html /pages/hey-look.html
|
||||
/assets/* /assets/:splat
|
||||
/pages/* /pages/:splat
|
||||
/* /pages/:splat.html
|
After Width: | Height: | Size: 2.1 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 227 B |
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<browserconfig>
|
||||
<msapplication>
|
||||
<tile>
|
||||
<square150x150logo src="/mstile-150x150.png"/>
|
||||
<TileColor>#224679</TileColor>
|
||||
</tile>
|
||||
</msapplication>
|
||||
</browserconfig>
|
After Width: | Height: | Size: 409 B |
After Width: | Height: | Size: 603 B |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,2 @@
|
|||
User-agent: *
|
||||
Allow: /
|
|
@ -0,0 +1 @@
|
|||
<svg version="1" xmlns="http://www.w3.org/2000/svg" width="346.667" height="346.667" viewBox="0 0 260.000000 260.000000"><path d="M134.4 2.1c-.6.8-2.3 3.9-3.9 6.9-1.5 3-4.8 9.3-7.2 14-6.9 12.9-19 36.2-25.4 48.5l-5.6 11-14 7c-7.7 3.8-21.4 10.6-30.4 14.9-41.2 20-47.8 23.5-46.6 24.3.7.5 3.9 2.3 7.2 4 31.3 16 44.1 22.6 44.5 23 .2.2-.5 2.3-1.7 4.6-2.6 5-18.6 35.7-26.8 51.2-14 26.9-23.8 46-23.2 45.5.3-.3 19.5-19.4 42.7-42.4l42.2-41.9 14.2 7.3c7.7 4 20.9 10.8 29.1 15 33.6 17.3 53.5 27.6 63 32.5 5.5 2.9 21.3 11 35 18 13.8 7 25.6 13.3 26.3 13.8.7.5 1.4.8 1.7.6.4-.5-4.7-11.9-14.9-33.3-3.1-6.5-5.6-12-5.6-12.1 0-.2-2.9-6.4-6.5-14-3.6-7.5-6.5-13.8-6.5-13.9 0-.2-3-6.6-6.6-14.2-16.9-35.7-40.4-86.3-40.4-87.1 0-.4 18.6-19.1 41.2-41.5C238.9 21.4 257.2 3 256.9 3c-.4 0-5.5 2.4-11.5 5.4-6 3-17.4 8.5-25.4 12.4-8 3.8-24.8 12-37.4 18.1-12.6 6.2-23.4 11-24 10.8-.6-.3-2.7-4-4.6-8.3-1.9-4.4-6.6-14.7-10.6-22.9-3.9-8.3-7.3-15.6-7.5-16.4-.4-1.1-.6-1.1-1.5 0z"/></svg>
|
After Width: | Height: | Size: 951 B |
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"name": "SageV.Space",
|
||||
"short_name": "SageV.Space",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/android-chrome-256x256.png",
|
||||
"sizes": "256x256",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|