Posts tagged housekeeping

Trying something new with a newsletter

It’s almost 2025. Google Search is steadily getting worse. AI is flooding the web with dubious content and making it harder to know what’s even accurate. Social media is (mostly) for getting angry and discouraging links that might stop your scrolling. But, on a positive note, newsletters are all the rage.

So I’m jumping on that bandwagon! As everything gets harder to find (and since I don’t see webrings or blogrolls making a comeback), I want to highlight some of the tutorials, tools, podcast, books, and other content I find useful every month. Topics will be the same as here: programming, fonts, design, and tech in general.

Despite some overlap, this won’t replace posting here. I think longer posts like coding tutorials probably make less sense in a newsletter format. And I’ll keep doing font recs but hopefully with a little more motivation. Maybe if it’s not too hard, I’ll crosspost the whole thing here.

It also won’t replace my font release mailing list which goes out maybe twice a year (on a good year). If you’re interested, make sure to sign up for both.

I’m going to start collecting links for the end of January so sign up below and watch your inbox then!


Moving a Node App from Google Compute Engine to DigitalOcean

This site can't be reached

There’s nothing like trying to deploy a minor site update and having your VM hang while SSHing 75% of the time, give up mid-build the other 25%, and then fall apart completely when you try to restart it. Since all I remember about setting up a Google Compute Engine Node instance in the first place is that it took me a while and wasn’t particularly intuitive, this seemed like a good opportunity to try a new host. I’m running a commercial Next.js site with a custom server so after browsing around DigitalOcean seemed like the best option.

And it was actually pretty painless!

Of course, it would be even quicker with a step-by-step guide so here’s a reference for my future self or anyone else who wants it.

My guide for migrating a Node app to DigitalOcean (this may vary a little depending on your site):

  1. Sign up for DigitalOcean and create a Droplet using NodeJS 1-Click App. Poking around the DigitalOcean Community questions, I ran into some talk about additional installations for production but my Droplet came with Nginx, PM2, and optional Let’s Encrypt for SSL out of the box so those discussions may be a little out of date.
  2. Add the new IPv4 address to MongoDB Atlas. DigitalOcean provides instructions for getting started with your Droplet but I wound up skipping around a bit. Since I already had a MongoDB database set up, I completely ignored their section on creating a new one. To use an existing database, just remember to log in to MongoDB Atlas and add your new IP address (using port 22) to the IP Address List under Network Access.
  3. Clone your repo. Using ssh root@0.0.0.0 (replacing the zeros with your IP address), ssh into your Droplet and clone your repo.
  4. Copy environmental variable files, assets, etc. From outside your Droplet, use scp -r /path/on/computer root@0.0.0.0:/path/on/droplet (replacing the paths and zeros) to copy any necessary files that weren’t included in the repo.
  5. Start your app. Back in the Droplet, start with a good old yarn install. Then, for a Next.js site, run yarn build followed by sudo NODE_ENV=production -u nodejs pm2 start server.js to start a custom server. This is also a good time to jump back to the DigitalOcean instructions for shutting down the starter app with sudo -u nodejs pm2 delete hello and saving your PM2 process list with sudo -u nodejs pm2 save.
  6. Create an Nginx configuration. I added “read up on everything Nginx can do” to my todo list but for now I have a pretty simple config with basic asset caching in my /etc/nginx/sites-enabled/ directory. You can view the file in this Gist but keep in mind it’s pretty tailored to my SSL setup. Whether you alter my example, the DigitalOcean default, or start fresh, make sure to 1) switch the root setting to something like /root/your-site/.next/pages; for Next.js and 2) update the proxy_pass to use your app’s port (8443 in my example). Restart with sudo systemctl restart nginx.
  7. Point your domain to the new IPv4 address. How you do this will depend on your DNS host but you’ll want to complete the migration by updating your A name to point to your new IP address.

There it is in seven steps. The first run through took a bit of trial and error but hopefully this will speed things up next time.

Font Package Updates

Updated all my font packages so now personal use downloads include True Type and Open Type files and commercial downloads include True Type, Open Type, and a web font kit (WOFF, WOFF2, TTF).

If you’ve already purchased a commercial license and want the updated version, feel free to email me.

Do you hate PayPal?

Well good news, there are sites other than my site where you can purchase commercial licensing for my fonts:

MyFonts

Fonts.com

Etsy

Creative Market

Creative Market is brand new and I’ll hopefully have a longer post in the next couple days on how awesome it is if you’re a designer looking to sell. So look out.

Moving Day

Decided to move my blog from WordPress to Tumblr.

It makes a bit more sense if I’m going to be working on Tumblr themes. Plus, I’m hoping the format change will motivate me to post more than once every few months.

Postcards by Designmodo
Advertisement
Postcards by Designmodo
Advertisement