diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7f1a9ec --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +public/ +.idea/ +.hugo_build.lock +**/_gen/ +dist/ +themes/ \ No newline at end of file diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..6a1fc8e --- /dev/null +++ b/config.toml @@ -0,0 +1,6 @@ +baseURL = 'https://sagev.space/' +languageCode = 'en-us' +title = 'sagev.space' +theme = 'sage' +text_color = 'black' +summaryLength = 30 diff --git a/content/_index.md b/content/_index.md new file mode 100644 index 0000000..ac7cfd4 --- /dev/null +++ b/content/_index.md @@ -0,0 +1,12 @@ +--- +title: "" +date: 2022-10-05T20:50:25-04:00 +--- + +## About Me + +Hi! My name is Sage (he/him), and this is my some-sort-of-blog. I'm a full-time +software engineer, and most of my posts here are about programming in one way or +another (aside from the odd "look at this cat" post). + +This site is something of an experiment in minimalism, trying for easy readability on a variety of devices, while being as small and efficient as possible! \ No newline at end of file diff --git a/content/posts/_OH-MY-GOD.md b/content/posts/_OH-MY-GOD.md new file mode 100644 index 0000000..39e2733 --- /dev/null +++ b/content/posts/_OH-MY-GOD.md @@ -0,0 +1,7 @@ +--- +title: "SageV.Space" +draft: true +--- +You won't believe what this post is about! + + diff --git a/content/posts/_books.md b/content/posts/_books.md new file mode 100644 index 0000000..deefe8e --- /dev/null +++ b/content/posts/_books.md @@ -0,0 +1,7 @@ +--- +title: "SageV.Space" +draft: true +--- +Some Books to Read + + diff --git a/content/posts/_ideas.md b/content/posts/_ideas.md new file mode 100644 index 0000000..7a0e5ab --- /dev/null +++ b/content/posts/_ideas.md @@ -0,0 +1,8 @@ +--- +title: "SageV.Space" +draft: true +--- +I like vim +Sister's cats +Vinny +My last class diff --git a/content/posts/_if-he-goes.md b/content/posts/_if-he-goes.md new file mode 100644 index 0000000..0b45d98 --- /dev/null +++ b/content/posts/_if-he-goes.md @@ -0,0 +1,17 @@ +--- +title: "SageV.Space" +draft: true +--- +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. + + diff --git a/content/posts/_linux-kickflips.md b/content/posts/_linux-kickflips.md new file mode 100644 index 0000000..a9a3f5d --- /dev/null +++ b/content/posts/_linux-kickflips.md @@ -0,0 +1,31 @@ +--- +title: "SageV.Space" +draft: true +--- +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. + +

while true; do thing; done

+ +

for i in {0..5} do; thing{i}; done

+ +

nohup

+ +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. + +

The Difference Between Parameters and Arguments

+ +Simply put, a parameter is part of the function definition: + + +// vvvvv This is a parameter +fn do_stuff(input: i32) { + ... +} + diff --git a/content/posts/_paperwork.md b/content/posts/_paperwork.md new file mode 100644 index 0000000..d767602 --- /dev/null +++ b/content/posts/_paperwork.md @@ -0,0 +1,10 @@ +--- +title: "SageV.Space" +draft: true +--- +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. diff --git a/content/posts/_peppers-2.md b/content/posts/_peppers-2.md new file mode 100644 index 0000000..ee09746 --- /dev/null +++ b/content/posts/_peppers-2.md @@ -0,0 +1,18 @@ +--- +title: "SageV.Space" +draft: true +--- +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 plastic tupperware filled with a brownish-green, slightly thick hot
+    sauce. + +Otherwise, if I really had to lean into my culinary expertise, I would say that +the sauce tastes like peppers. diff --git a/content/posts/_soup.md b/content/posts/_soup.md new file mode 100644 index 0000000..c1bf8af --- /dev/null +++ b/content/posts/_soup.md @@ -0,0 +1,8 @@ +--- +title: "SageV.Space" +draft: true +--- +On Soup + +I like soup. I think soup is more or less underrated by the world at large. +Soup rules. diff --git a/content/posts/_wish-I-read-more.md b/content/posts/_wish-I-read-more.md new file mode 100644 index 0000000..143bca2 --- /dev/null +++ b/content/posts/_wish-I-read-more.md @@ -0,0 +1,27 @@ +--- +title: "SageV.Space" +draft: true +--- +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, fun. 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. + + diff --git a/content/posts/_zelda-and-calli.md b/content/posts/_zelda-and-calli.md new file mode 100644 index 0000000..c456882 --- /dev/null +++ b/content/posts/_zelda-and-calli.md @@ -0,0 +1,26 @@ +--- +title: "Zelda and Calli" +date: 2020-10-04 +draft: true +--- + +AKA _shameless cat-posting 2_ + +I mentioned my sibling's cats in another post, +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 patchy light-brown and black cat
+    + +Weird + +A black and white cat
+    diff --git a/content/posts/break.md b/content/posts/break.md new file mode 100644 index 0000000..f29d72d --- /dev/null +++ b/content/posts/break.md @@ -0,0 +1,71 @@ +--- +title: "Oops, forgot to write" +date: 2020-10-15 +description: "" +--- + +I haven't written anything for like a week (2 weeks? A month? Who knows +anymore) because I got myself all busy with _reading_. 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 +**1.** It takes work to work sign up and **B.** It +just ain't that serious. Maybe some day. Anyhow: + +## Books + +### The Witches Are Coming - Lindy West + +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. + +### Is Everyone Hanging Out Without Me? - Mindy Kaling + +The amusing stories of a TV writer. A light, fun read. Though there was one +joke about an old African schoolmate that wasn't _great_. C'mon, Mindy, +you're funny without that. + +### Tomatoland - Barry Estabrook + +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. + +### The Sirens of Titan - Kurt Vonnegut + +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. + +### The Princess Bride - William Goldman + +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. + +### Americanah - Chimamanda Ngozi Adiche + +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. + +### Almost Perfect - W.E. Pete Peterson + +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. diff --git a/content/posts/c.md b/content/posts/c.md new file mode 100644 index 0000000..e9ba964 --- /dev/null +++ b/content/posts/c.md @@ -0,0 +1,69 @@ +--- +title: "What is it with pointers?" +date: 2020-09-01 +description: "" +--- + +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 like 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: + + struct Object { + Type type; + union { + ... + }; + Object *forward; + } + +## The Tag + +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! + +## The Union + +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! + +## C + +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 diff --git a/content/posts/disc.md b/content/posts/disc.md new file mode 100644 index 0000000..70bd613 --- /dev/null +++ b/content/posts/disc.md @@ -0,0 +1,24 @@ +--- +title: "Joy of Disc Golf" +date: 2020-09-22 +description: "" +--- + +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 _dolfer_) 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 _neener-neener_. + +If it all works out, I'll add photos of our victory! diff --git a/content/posts/hey-look.md b/content/posts/hey-look.md new file mode 100644 index 0000000..f7b0b91 --- /dev/null +++ b/content/posts/hey-look.md @@ -0,0 +1,28 @@ +--- +title: "Hey look! My own site!" +date: 2020-09-21 +description: "" +--- + +In [my last post](/posts/site), 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 _upload_. 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! diff --git a/content/posts/how-to-nerd.md b/content/posts/how-to-nerd.md new file mode 100644 index 0000000..382f40a --- /dev/null +++ b/content/posts/how-to-nerd.md @@ -0,0 +1,94 @@ +--- +title: "How to be an Irredeemable Nerd and Look Good Doing It" +date: 2020-11-06 +description: "" +--- + +In a [previous post](/posts/c), 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? + + 2 3 + . + +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: + + 5 + +You can also compile functions that add some of these elements, and the +language can become surprisingly expressive: + + : feet 12 * ; + : yards feet 3 * ; + + 5 feet . + \ This prints 60 (5 feet in inches) + + 8 yards . + \ This prints 288 (6 yards in inches) + + 5 yards 2 feet + . + \ This prints 204 (5 yards + 2 feet) + +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 incredibly +buggy, and pretty tedious even when it does work, but it sort of kind of does! + + $ "feet" 12 * "END" + $ "yards" 36 * "END" + 5 "yards" 2 "feet" + + . + \ This prints 204 + +So, for reasons I've yet to suss out: + +* Functions can't be defined using other functions +* Functions need to be defined using quotes, for goofy string/symbol reasons in PebbLisp. +* Statements that use a user-defined function seem to ignore the dot operator at the end. + +_Please ignore the awful END symbol it should be easy to fix._ + +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 _using_ 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. + diff --git a/content/posts/laptop.md b/content/posts/laptop.md new file mode 100644 index 0000000..0261394 --- /dev/null +++ b/content/posts/laptop.md @@ -0,0 +1,43 @@ +--- +title: "Buying someone a new laptop" +date: 2020-09-09 +description: "" +--- + +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 _chamfered_. 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. diff --git a/content/posts/music.md b/content/posts/music.md new file mode 100644 index 0000000..697df05 --- /dev/null +++ b/content/posts/music.md @@ -0,0 +1,58 @@ +--- +title: "A Programmer Makes Music" +date: 2020-10-01 +description: "" +--- + +A few years ago, I found the lovely [Godot Engine](https://godotengine.org"), +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 _terribly_ balanced. It does, however, +have exquisitely-crafted graphics: + + +The main +Yee-haw + +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 _and_ 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 _too_ 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 _named_ 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 [Soundcloud for Fronter](https://soundcloud.com/fronter_game). +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, [LMMS](https://lmms.io/) 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. diff --git a/content/posts/neighborhood-cat.md b/content/posts/neighborhood-cat.md new file mode 100644 index 0000000..cbdaa15 --- /dev/null +++ b/content/posts/neighborhood-cat.md @@ -0,0 +1,28 @@ +--- +title: "How much is that kitty in the window?" +date: 2020-10-02 +description: "" +--- + +AKA, _Shameless cat-posting_ + +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 light-brown cat with a big head staring through the bottom window
+    of our back door. +No blep today. Very serious. + +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. diff --git a/content/posts/peppers.md b/content/posts/peppers.md new file mode 100644 index 0000000..ca18eb1 --- /dev/null +++ b/content/posts/peppers.md @@ -0,0 +1,31 @@ +--- +title: "A Peppery Experiment" +date: 2020-09-27 +description: "" +--- + +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 [recipe](https://www.chilipeppermadness.com/recipes/fermented-hot-sauce) +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, _cleverly_, 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. + + +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 + +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. diff --git a/content/posts/postcats.md b/content/posts/postcats.md new file mode 100644 index 0000000..2e77c0b --- /dev/null +++ b/content/posts/postcats.md @@ -0,0 +1,37 @@ +--- +title: "PostCats" +date: 2020-09-22 +description: "" +--- + +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: + +--- + +Have you ever thought, _"Boy, this floor doesn't have nearly enough colorful +nonsense on it"_? 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!* + +## PostCats ensures that the fun endures! + +_*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._ diff --git a/content/posts/school.md b/content/posts/school.md new file mode 100644 index 0000000..e28f650 --- /dev/null +++ b/content/posts/school.md @@ -0,0 +1,55 @@ +--- +title: "Boy, I sure love college" +date: 2020-10-05 +description: "" +--- + +This semester, I'm finally, _finally,_ finishing up the last class in my +bachelor's. I started this degree in the Spring of 2016, _after I'd finished +my associate's_. 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 +_still_ couldn't afford to go. It would help a lot of people, but it +doesn't change the system we're in. + + + +## Speaking of school + +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, +_obviously_. My partner is a teacher herself, and right now the +employment opportunities are essentially: + +* Online tutoring with no hours +* Die + +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. diff --git a/content/posts/site.md b/content/posts/site.md new file mode 100644 index 0000000..731be8f --- /dev/null +++ b/content/posts/site.md @@ -0,0 +1,29 @@ +--- +title: "Hugo? More like, No-Go" +date: 2020-09-17 +description: "" +--- + +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 _tired_ 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 _flair_. + +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 diff --git a/content/posts/torch.md b/content/posts/torch.md new file mode 100644 index 0000000..f03e6fa --- /dev/null +++ b/content/posts/torch.md @@ -0,0 +1,39 @@ +--- +title: "Passing the Torch" +date: 2020-09-30 +description: "" +--- + +When I left my last job, I was lucky enough to do so on great terms with +everyone there. It was all very _the circumstances are what they are - +nothing to be done_. 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." + +> "Okay." + +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 +_did_ 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 _this_, your teammates are these +two, who work on _that_ and _that_, and what you'll be doing for the +foreseeable future is _this_". 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 [mentioned before](/posts/c), +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 _left before there could be consequences"_, but I +really liked my brief excursion in it, and I'd be happy to try again! diff --git a/content/posts/vim.md b/content/posts/vim.md new file mode 100644 index 0000000..1289caf --- /dev/null +++ b/content/posts/vim.md @@ -0,0 +1,36 @@ +--- +title: "How to become a Hackerman" +date: 2020-10-02 01:00:00 +description: "" +--- + +How does one become hacker? _Use a hacker editor._ 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? +Well, here's why: we have: in vim: + +* Insert mode +* Move fast +* Press keys +* Can't quit + +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 (_vim really cool_) 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. diff --git a/content/posts/worst-phone-I-own.md b/content/posts/worst-phone-I-own.md new file mode 100644 index 0000000..7b21958 --- /dev/null +++ b/content/posts/worst-phone-I-own.md @@ -0,0 +1,40 @@ +--- +title: "The Worst Phone I Own" +date: 2020-08-25 +description: "" +--- + +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. + +_Originally posted on write.as_ + diff --git a/static/_redirects b/static/_redirects new file mode 100644 index 0000000..be8ac6e --- /dev/null +++ b/static/_redirects @@ -0,0 +1,5 @@ +/ /index.html +/pages/hey_look.html /pages/hey-look.html +/assets/* /assets/:splat +/pages/* /pages/:splat +/* /pages/:splat.html diff --git a/static/android-chrome-192x192.png b/static/android-chrome-192x192.png new file mode 100644 index 0000000..f2ca2e1 Binary files /dev/null and b/static/android-chrome-192x192.png differ diff --git a/static/android-chrome-256x256.png b/static/android-chrome-256x256.png new file mode 100644 index 0000000..2358301 Binary files /dev/null and b/static/android-chrome-256x256.png differ diff --git a/static/apple-touch-icon.png b/static/apple-touch-icon.png new file mode 100644 index 0000000..66cc8b8 Binary files /dev/null and b/static/apple-touch-icon.png differ diff --git a/static/browserconfig.xml b/static/browserconfig.xml new file mode 100644 index 0000000..21b223b --- /dev/null +++ b/static/browserconfig.xml @@ -0,0 +1,9 @@ + + + + + + #224679 + + + diff --git a/static/cap.png b/static/cap.png new file mode 100644 index 0000000..c79df5c Binary files /dev/null and b/static/cap.png differ diff --git a/static/cap_full.png b/static/cap_full.png new file mode 100644 index 0000000..26ac177 Binary files /dev/null and b/static/cap_full.png differ diff --git a/static/capitalism.png b/static/capitalism.png new file mode 100644 index 0000000..33bb108 Binary files /dev/null and b/static/capitalism.png differ diff --git a/static/capitalism_full.png b/static/capitalism_full.png new file mode 100644 index 0000000..89ef392 Binary files /dev/null and b/static/capitalism_full.png differ diff --git a/static/favicon-16x16.png b/static/favicon-16x16.png new file mode 100644 index 0000000..6566dbc Binary files /dev/null and b/static/favicon-16x16.png differ diff --git a/static/favicon-32x32.png b/static/favicon-32x32.png new file mode 100644 index 0000000..f5783dc Binary files /dev/null and b/static/favicon-32x32.png differ diff --git a/static/favicon.ico b/static/favicon.ico new file mode 100644 index 0000000..247b44b Binary files /dev/null and b/static/favicon.ico differ diff --git a/static/fonts/SourceSerifPro-Black.ttf b/static/fonts/SourceSerifPro-Black.ttf new file mode 100644 index 0000000..f7b483c Binary files /dev/null and b/static/fonts/SourceSerifPro-Black.ttf differ diff --git a/static/fonts/SourceSerifPro-BlackItalic.ttf b/static/fonts/SourceSerifPro-BlackItalic.ttf new file mode 100644 index 0000000..ff6397a Binary files /dev/null and b/static/fonts/SourceSerifPro-BlackItalic.ttf differ diff --git a/static/fonts/SourceSerifPro-Bold.ttf b/static/fonts/SourceSerifPro-Bold.ttf new file mode 100644 index 0000000..47e7d80 Binary files /dev/null and b/static/fonts/SourceSerifPro-Bold.ttf differ diff --git a/static/fonts/SourceSerifPro-BoldItalic.ttf b/static/fonts/SourceSerifPro-BoldItalic.ttf new file mode 100644 index 0000000..1461f4a Binary files /dev/null and b/static/fonts/SourceSerifPro-BoldItalic.ttf differ diff --git a/static/fonts/SourceSerifPro-ExtraLight.ttf b/static/fonts/SourceSerifPro-ExtraLight.ttf new file mode 100644 index 0000000..0255e81 Binary files /dev/null and b/static/fonts/SourceSerifPro-ExtraLight.ttf differ diff --git a/static/fonts/SourceSerifPro-ExtraLightItalic.ttf b/static/fonts/SourceSerifPro-ExtraLightItalic.ttf new file mode 100644 index 0000000..d1bde71 Binary files /dev/null and b/static/fonts/SourceSerifPro-ExtraLightItalic.ttf differ diff --git a/static/fonts/SourceSerifPro-Italic.ttf b/static/fonts/SourceSerifPro-Italic.ttf new file mode 100644 index 0000000..4baaf1d Binary files /dev/null and b/static/fonts/SourceSerifPro-Italic.ttf differ diff --git a/static/fonts/SourceSerifPro-Light.ttf b/static/fonts/SourceSerifPro-Light.ttf new file mode 100644 index 0000000..5405cc0 Binary files /dev/null and b/static/fonts/SourceSerifPro-Light.ttf differ diff --git a/static/fonts/SourceSerifPro-LightItalic.ttf b/static/fonts/SourceSerifPro-LightItalic.ttf new file mode 100644 index 0000000..b202bd5 Binary files /dev/null and b/static/fonts/SourceSerifPro-LightItalic.ttf differ diff --git a/static/fonts/SourceSerifPro-Regular.ttf b/static/fonts/SourceSerifPro-Regular.ttf new file mode 100644 index 0000000..5c593b9 Binary files /dev/null and b/static/fonts/SourceSerifPro-Regular.ttf differ diff --git a/static/fonts/SourceSerifPro-Regular.woff2 b/static/fonts/SourceSerifPro-Regular.woff2 new file mode 100644 index 0000000..2553bc6 Binary files /dev/null and b/static/fonts/SourceSerifPro-Regular.woff2 differ diff --git a/static/fonts/SourceSerifPro-SemiBold.ttf b/static/fonts/SourceSerifPro-SemiBold.ttf new file mode 100644 index 0000000..f0776c7 Binary files /dev/null and b/static/fonts/SourceSerifPro-SemiBold.ttf differ diff --git a/static/fonts/SourceSerifPro-SemiBold.woff2 b/static/fonts/SourceSerifPro-SemiBold.woff2 new file mode 100644 index 0000000..03ba588 Binary files /dev/null and b/static/fonts/SourceSerifPro-SemiBold.woff2 differ diff --git a/static/fonts/SourceSerifPro-SemiBoldItalic.ttf b/static/fonts/SourceSerifPro-SemiBoldItalic.ttf new file mode 100644 index 0000000..040e7fc Binary files /dev/null and b/static/fonts/SourceSerifPro-SemiBoldItalic.ttf differ diff --git a/static/fronter.jpg b/static/fronter.jpg new file mode 100644 index 0000000..3483f88 Binary files /dev/null and b/static/fronter.jpg differ diff --git a/static/fronter_full.jpg b/static/fronter_full.jpg new file mode 100644 index 0000000..d552ffc Binary files /dev/null and b/static/fronter_full.jpg differ diff --git a/static/kd-full-logo-double.png b/static/kd-full-logo-double.png new file mode 100644 index 0000000..0a64e03 Binary files /dev/null and b/static/kd-full-logo-double.png differ diff --git a/static/kd-full-logo.png b/static/kd-full-logo.png new file mode 100644 index 0000000..6c5ad21 Binary files /dev/null and b/static/kd-full-logo.png differ diff --git a/static/mstile-150x150.png b/static/mstile-150x150.png new file mode 100644 index 0000000..bc3d3da Binary files /dev/null and b/static/mstile-150x150.png differ diff --git a/static/pebblisp-logo-small.png b/static/pebblisp-logo-small.png new file mode 100644 index 0000000..92c16ac Binary files /dev/null and b/static/pebblisp-logo-small.png differ diff --git a/static/pebblisp-logo.png b/static/pebblisp-logo.png new file mode 100644 index 0000000..64d979a Binary files /dev/null and b/static/pebblisp-logo.png differ diff --git a/static/peppers.jpg b/static/peppers.jpg new file mode 100644 index 0000000..71b48fb Binary files /dev/null and b/static/peppers.jpg differ diff --git a/static/peppers_full.jpg b/static/peppers_full.jpg new file mode 100644 index 0000000..8e8d9de Binary files /dev/null and b/static/peppers_full.jpg differ diff --git a/static/robots.txt b/static/robots.txt new file mode 100644 index 0000000..c2a49f4 --- /dev/null +++ b/static/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Allow: / diff --git a/static/safari-pinned-tab.svg b/static/safari-pinned-tab.svg new file mode 100644 index 0000000..ac2f645 --- /dev/null +++ b/static/safari-pinned-tab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/static/site.webmanifest b/static/site.webmanifest new file mode 100644 index 0000000..23a2cde --- /dev/null +++ b/static/site.webmanifest @@ -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" +} diff --git a/static/undercover-logo-double.png b/static/undercover-logo-double.png new file mode 100644 index 0000000..b513d05 Binary files /dev/null and b/static/undercover-logo-double.png differ diff --git a/static/undercover-logo.png b/static/undercover-logo.png new file mode 100644 index 0000000..32a3764 Binary files /dev/null and b/static/undercover-logo.png differ diff --git a/static/vinny.jpg b/static/vinny.jpg new file mode 100644 index 0000000..d2afdb4 Binary files /dev/null and b/static/vinny.jpg differ diff --git a/static/vinny_full.jpg b/static/vinny_full.jpg new file mode 100644 index 0000000..663dd97 Binary files /dev/null and b/static/vinny_full.jpg differ