Just some thoughts and feels.
I just ran a script for generating static HTML pages, which outputs them to a www subdirectory (after deleting its contents) -- except I ran this from my home directory, which conveniently contained a symlink to /var/www. I hadn't experienced the severe panic of catastrophic data loss in a while -- I'm glad I do occasional backups, and probably haven't really touched anything there since my last one. Lessions learned: - Back up more often: automate this - Make sure my scripts have absolute paths, especially when they're
rm -rf-ing - Do more error checking in my scripts
I recently added where, a tool that shows where in the world everyone on ~town is. I initially took a lot of steps to make the data "fuzzy," but there are, of course, still many privacy implications when you take data known only to the community (IP addresses) and share it with the wider internet. So I settled on an opt-in model, which offers optional anonymity, and I think it works perfectly — thanks ~endorphant for brainstorming on this with me. I'm going to be "out of town" for a bit while I turn my focus back to other projects. But I'll be back soon enough, especially to tackle more things on my todo list. Auf Wiedersehen, town.
It's been a busy week and a half. I've turned all my attention to write.as, and it's been fruitful. I built a simple HTTP server for command line piping goodness. Then Sunday night I launched the Android app — probably the first one built from scratch that I'm really proud of. Around town, I added some file/directory color coding to the code page. I'm also working on a user list page similar to the one on ^C.club to show who's edited their home page.
I feel like I'm over the initial difficulty hump of learning Go with some of the work I've done this week. Two days ago, I launched the telnet version of write.as, which uses flat files to store posts. I'm not sure of the security issues yet, so I put it on a separate machine, where it has to copy files to another server to make them publicly available. Still, it works pretty well. Tonight I finished the initial pass of adding stats to the !tilde scoreboard, and with a little help from ~karlen, ended up getting a lot of interesting data pulled in straight from the IRC logs. I'm excited to continue building it.
Navigating tildes: when you stumble on a new page, you have a wealth of info in front of you. Maybe a library someone created that you could use on your own page. Maybe an article about how to do something you've never done (but would like to). It's the infamous rabbit hole of the internet: links in every direction, each leading deeper. This weekend I've been following the infinite rabbit holes of the tildeverse. And I got a feeling I'm not used to on the internet: I was seeing all these cool things people have made, but I wasn't able to interact by "liking" or directly commenting on something. Perhaps my brain has been conditioned by years of Facebook use, but I felt like something was missing until I jumped on IRC and watched the conversations flow around me. It's an odd feeling. Tilde pages are kind of like this art gallery where, upon future visits, the paintings are sometimes altered slightly. And the rest of the social media world is like a graffitied wall where you expect to learn pertinent information about the world around you. And you're constantly expecting to see "I <3 ~bear" tagged by someone new every time you walk past it. And somehow that feels normal. Weird. On another note, I've decided to create an
telnetSSH interface for write.as before I create a web-based one. The product actually lends itself to this perfectly—this is going to be really fun.
Realized ctrl-c.club has Go installed, so I decided to make that my remote sandbox. Today I cloned my tildes repo there and added a new tool, inspired by ~audy: a page listing all users with a Code directory. Making this, I realized a few things: - I should continue getting comfortable with the language before I make a production app - This could easily be re-purposed for any other shared folder structure.
This is next on my list.This is done. Tildes where I've used this so far: tilde.town ctrl-c.club totallynuclear.club tilde.red
I wanted to try postgres out since it avoid table-locking on column changes. But in the name of getting the datastore up quicking I've decided to go with MySQL for now. Luckily, it seems there's a common DB interface in Go that will let me swap in postgres if I choose to later on. I need an easy way to initialize the site, i.e. set up databases and environment configuration. I haven't found any pre-baked solutions for this yet. Biggest conceptual challenge right now is how to easily reclaim tokens for users.
Today I read about a guy taking a "6 month startup challenge," trying to make $100,000 in revenue during that time. He seemed optimistic, and it encouraged me to actually set a goal for myself in my current pursuits. Tonight I'm starting serious progress on write.as, my newest project. It's going to be the first time I use Go (or anything, for that matter) instead of PHP for a web app. I'll also be trying out PostgreSQL and maybe React.js. On another note, I was inpired by a thread on /r/Ubuntu to soup up the welcome message in my terminal. Taking a lot of inspiration from there, I came up with this script, which (after printing a cool ASCII banner) looks like this:
I learned a lot about Go from making the tildelog generator. I always enjoy the very early stages of learning a new programming language, where you have around 30 browser tabs open for each Googled function you need to perform. It's hard to get frustrated like you might later on, when you expect a certain mastery level for yourself. Right now, you barely know a thing.
There's something extremely satisfying about yard work, especially on your own yard. Today is a Saturday, a free day where I have time to work on one of my various side software projects. But most days (including during the week), I don't want to get on the computer first thing in the morning. I'd rather enjoy the sun on this 50-degree day. I'd rather enjoy any kind of day if it means being outside. So I woke and fed and walked my dog, and by 9am I was outside raking the yard and putting down topsoil and tilling and planting grass seed for another barren section of my yard. I did it without even trying to decide what to do with my day—I did it on blind impulse. Once I was done, I soaked the ground, looking at the section of grass I'd planted three weeks ago, thinking that this dampening patch of dirt would soon yield the same life. I smiled, content that my body was fully utilized today, not just eyes, fingers and wrists.
I wanted to write some simple programs for automating tildeverse-related tasks. This tildelog is the first of those.