P#127205 2023-03-16 03:35 ( Edited 2023-03-16 03:38)
P#126993 2023-03-11 20:01 ( Edited 2023-03-11 20:02)
P#124540 2023-01-19 08:33 ( Edited 2023-01-19 08:35)
P#124316 2023-01-14 23:02
P#124280 2023-01-14 07:52 ( Edited 2023-01-14 07:55)
I started a new blog called Jon's Adventures in Academia, and those posts are going to start rolling out on the Firehose soon!
(I mention how the blog is in chronological order. The firehose isn't, but the new blog is.)
In 2006 I ran a little social network called bouquet. I've been bringing it back and having lots of fun.
Here's an idea I don't see often enough: posting that waits a week before publishing. The whole point of social networking, at least the way we currently think about it, is to post a thing and IMMEDIATELY get everyone to see it. But what if you posted stuff for a week and then sent it out as a digest instead?
My bouquet site is for tracking stuff you've been up to. Movies you watched, books you read, projects you worked on, drinks with friends, whatever. I might write 5 things in a single day, which is a bit overwhelming on a timeline. But what if those 5 things a day were held back for 7 days, then you see a 35 item update once a week? That could be pretty nice.
So I think I'm gonna do that. Should be cool.
The good news is I got my Firehose database working.
The bad news is I think I duplicated a bunch of stuff in the RSS feed. Sorry!
Here are some development notes to myself.
The most exciting software that I'm working on is called Firehose. It takes a bunch of my personal RSS feeds and puts them together in one website. A few weeks (months?) ago, it occurred to me that I could save all the entries into a database. How cool would it be to tie your different feeds (Medium, Mastodon, Tumblr, your personal blog, etc) together and then have a copy you could store for yourself? Today, if a website goes out of business, you could lose all your data. But with this plan, you'd have a backup copy. Super cool.
So I went through a process of learning how to make databases work. That finally bore fruit last week, which sent me off into a side project of getting a 16 year old social networking site dusted off and working again. Here it is! It's called bouquet.
But sometimes it's good to remember why you're doing things. I didn't learn databases so I could dust off my old social networking site. I learned databases so I could do the Firehose backup idea. So I'm going to stop working on bouquet and focus back on Firehose. Wish me luck!
23 years ago, I learned how to hook up a database to a web app. Me and my multimedia degree had a blast with this simple technology for decades. A website without a database can't really do anything, but with a database it can become something amazing.
It turns out that getting a database running with modern web technology is pretty tough. I've been tinkering with it for two years to limited success. But this weekend I finally figured it out. It was a huge, huge moment. Because now I can get back to doing projects online.
I can't wait.
I think I can make this update brief. My Firehose now has images from a little image-hosting service I wrote a few weeks ago. It's called Picadilly, [sic] isn't that cute?
The longer version is about EXIF data, last modified dates, blah blah blah, but the end result is I finally got it working. And now I am looking forward to sharing more images! Yay!
It's been a few days since I worked on this app. When you're in the groove, you have a list of things to bust through, bang bang bang.
But now I'm like, "wait, what was I doing?"
So here's what I was doing:
Many years ago, programmers would have to submit applications on punch cards. That's well before my time, so I don't know how that must have felt. But I can imagine you'd spend a lot longer trying to make sure everything looked exactly right. I can imagine it'd be agonising waiting to get your results back. And gosh, imagine how disappointing it would be to get your results and find you made a minor typo. Ugh!
On the other hand, the 2023 experience is so fast it almost doesn't feel real. You can type something in your editor and it will immediately tell you when there's an error. You can hit save and (in the case of React) the browser will automatically update within a moment or two. We're getting closer and closer to coding feeling like sculpture. As Bret Victor famously says, if you can see the results of your actions immediately, entirely new ways of thinking and creating open up.
I just spent a few hours fixing some bugs, and I saw a different sort of iteration process, but just as profound:
Those three steps don't seem like much, and in a way they're not. We've always done step #1 and step #3. It's step #2 that's been the hard part. Google search results can be helpful, as can docs and Stack Overflow questions. But they often take a lot of effort to get working well. Stack Overflow answers can be good, but sometimes your question is different enough that previous questions won't help. Google can point you to answers, but they're often outdated or bad. Documentation can help but only if it's good, up-to-date, and you are the sort of person that can find what you need in docs.
In comparison, chatGPT just lets me get the information. My step #2 has just gotten much, much faster. So I see myself improving much, much faster.
I made a lot of small improvements to my Firehose app today. The most obvious one is that I added a loading screen, featuring this cute little guy.
So! I got my Firehose RSS concept working pretty dang well. Which naturally makes me want to improve it further. Today my brain hosted a fireworks celebration worth of explosive ideas, one after the other. Pow bang pow.
The next big thing to do, now that I've tidied up some bugs and stuff, is to make the RSS feed into a webpage. Yes, it's great that I have a combined RSS feed. But most people don't use feed readers, so for them I need to make a simple website that shows everything in a feed. Like a blog powered by ten other blogs.
And the best part is, I think I actually know how to do that. So here I go!
So there's this great thing called PICO-8, which is referred to as a "fantasy console." You can go and play all sorts of games on the PICO-8, or you can make your own game. It's pretty great.
Part of this community is a blogging system, so I got an account. I don't write games, but I figured this would be a cool place to write about technical things that I'm building and excited about. Even if they're not PICO-8 or related to games.
So, tonight my excitement is that I got an RSS feed working that pulls from multiple sources. It's a pretty cool concept. And now I hope this post appears in it.
Hello I guess I have a blog now?