I’d mentioned a few weeks ago that I was moving to Hugo. The motivation for me was simple. I’d not made my self-hosted WordPress blog secure enough so a not very nice person got into it and did mean things. I was not pleased.
Some of you may be asking yourself, why not fix it and keep using WordPress. Good question. Basically I’ve done that twice now. This time around required deleting my installation and reinstalling. It worked out quite well and I decided not to install a number of plug-ins I’d been using before, including Jetpack. My weblog is actually quite a bit faster now as a result.
So, back to the move. I’m moving to Hugo but I’m still trying to figure out some mysteries of Hugo — at least they’re mysteries to me. I’d like a ‘dirty’ directory structure and I want to make double-sure when I create a post the archive of the post shows up in its proper location, like this:
That is super important to me. All of my current WordPress posts, like this one, have that structure. My plan is to import all of my WordPress posts into my new Hugo site, so it needs to be backward compatible.
Anywho. Here’s how I plan to configure my weblog.
- Use GitHub for storage – Posts will be edited locally as Markdown and pushed to GitHub.
- Use GitHub for publishing – Once a post is pushed to GitHub it will cause a GitHub server trigger to run. That will pull the source on my host.
- Run Hugo on the host – Hugo will live on my host and will be run when the GitHub server trigger executes.
Using those steps should allow me to easily update anywhere I can pull code from my GitHub account — even on iOS — and push changes. For now I plan on using BBEdit on my Mac for writing but in the future I hope to use my own Blogging Tool.
If anyone notices a flaw in that logic please get in touch. My email address is firstname.lastname@example.org.
A couple weeks back my WordPress weblog started doing funny things. Apparently someone was able to gain access to it via my Jetpack login and install a bitcoin mining service. Joy.
When you’d visit my site you’d occasionally get booted to another site, typically one that wasn’t nice, but on occasion it was what appeared to be a nice weblog. I’m not sure who’s it was but it wasn’t wanted.
So I disabled the site and put up a temporary placeholder page while I figured out what to do about it. This is the second time I’ve had to make changes because my WordPress site was broken into. It makes having a blog a lot less fun when idiots break you stuff.
I decided I’d install Hugo and figure out how to use it to automagically post on my server. I found a nice page documenting how to use git with git triggers to publish a Hugo based weblog and went about trying it out. It works fine, but there is something I can’t figure out.
When publishing I would like to have my front page contain some number of blog posts with permalinks to those posts. E.G. Clicking on the title would take you to a URL like
. Notice the yyyy/mm/dd format in the URL. I want that exact thing for my Hugo pages so I can import what I already have and not mess up links to my existing posts. Hugo looks like it can do this, but there’s one thing that bugs me and I haven’t been able to figure it out.
Can someone please let me know if Hugo can generate a standalone HTML file and drop it into a directory with yyyy/mm/dd format so I can maintain what I already have? If I can do that I’m all in with Hugo. Otherwise it’s off to find a fully baked blogging system that can do what I want.
I got my site back up and running last night. I’m still on WordPress because I still have questions about how Hugo works and until I get those answered I’m keeping the site the way it is.
To get back online I deleted my WordPress installation and started fresh. I was able to plug in the database information during installation and use my existing stuff. No fuss, no muss.
There is one strange thing going on. Some of my posts have had the apostrophe replaced with what looks to be encoded representations. It’s weird and I’ve fixed up a few.
This time around I didn’t install a bunch of plugins and the site is super quick. No Jetpack, no caching, nothing. Just a couple small plugins that come with the installation. That’s it.
I’m also using a WordPress default template for now because it works.
I still hope to move to Hugo but I need to get some questions answered first. More later.
Dave Winer: “Now I’d like to take you back to a discsussion that was had many years ago that resulted in this conclusion. You don’t make money from this work, but it leads to opportunities where you can make money. Ideas and information make their way to you and if you are so-inclined you can make money by investing in those ideas. No sure things, but some bloggers have made billions, and others have made millions. And others have made a decent living. Not from their blog but because they blog.”
I’ve talked about blogging to people a lot over the past 16 plus years. Some folks don’t understand what it is after you’re done explaining it, others feel they don’t have anything to say, and still others say they don’t know how to make money at it.
I always have to stop people that make that last statement. Blogging doesn’t have to be about money. I’ve been doing this since February 2001 and haven’t made any money directly from writing. I’ve described my blog as my front porch on the internet.
I think the most important point to make is this: Own your content. What you write is yours and yours alone. Giving your words to Facebook only helps them. Make sure you own your work.
See also, Why We Blog. I’d also recommend following Dave Rogers if you don’t. I think he’s a great writer.
Six Colors: “Anyway, the goal of the designâ€”other than, perhaps, to better reflect the siteâ€™s nameâ€”was to differentiate between the different kinds of posts we have on this site. There are regular posts, sure, but we found ourselves also posting off-site links, links to work weâ€™ve written on other sites, links to podcasts, and posts from sponsors. Now those are all more clearly defined, and I think the siteâ€™s better for it.”
Absolutely beautiful. I love the treatment given to different post types.
Daring Fireball: “But I see the fact that Daring Fireballâ€™s revenue streams should remain unaffected by Safari content-blocking as affirmation that my choices over the last decade have been correct: that I should put my readersâ€™ interests first, and only publish the sort of ads and sponsorships that I myself would want to be served, even if that means leaving (significant) amounts of money on the table along the way.”
Great content isn’t the only experience Mr. Gruber provides. He created a super brilliant, non-invasive, ad model to support his company. He has ads via The Deck and takes one week RSS feed sponsorships. The sponsor provides promotional content at the beginning of the week, which appears in a blog post, and he thanks the sponsor at the end of the week with a blog post. Nifty.
It took Mr. Gruber a while to figure this stuff out. It didn’t happen over night. Others have adopted this model; Six Colors and The Loop come to mind. It’s not for everyone, but if you’re a small indie publisher it can work quite well, if you have great content. That’s the key. Great content attracts people.
How well? Pretty darned well if you ask me. As of this writing Mr. Gruber’s Daring Fireball fetches $9,750.00 for a one week sponsorship (I believe it’s a progressive scale throughout the year.) That’s some serious cheddar.
Jeffrey Zeldman: “I launched this site twenty years ago (a year before the Wayback Machine, at least two years before Google) and it was one of the only places you could read and learn about web design. I launched at a tilde address (kids, ask your parents), and did not think to register zeldman.com until 1996, because nobody had ever done anything that crazy. “
Happy Birthday zeldman.com! Jeffrey, thanks for 20 years of web design standards. Yours was one of the first websites I discovered, before I knew it was a weblog. I discovered you, Dave Winer, and Evan Williams around the year 2000 and started my own weblog in 2001 as a result.
One thing I’ve always loved about your site is the use of orange! I know you had that greenish period, but I’m glad you came back to orange. I also appreciate the size of the type. Aging eyes and all.
Here’s to 20 more years of zeldman.com. Long live the independent weblog!
The Loop: “Do something like Medium or Svbtle that doesnâ€™t have the complicated backend and code. Thatâ€™s what I want.”
I probably harp on this too much. I’ve been browsing around for a simplified weblogging tool, but WordPress is just too darned good to give up. I would, however, love to see a version of WordPress that would allow me to publish everything as static HTML. Decouple the composition from publishing, make them separate services. I compose a post, save it, when I click “Publish” the site is regenerated and pushed to my domain. That’s it. I would also be nice to have a quick and dirty post editor that doesn’t include all of the administrative functionality, think QuickPress in a standalone web app, or maybe a desktop app (that would be really nice.)
Make sure you read the linked article, The future of WordPress: “By incorporating a RESTful application programming interface (API), current WordPress apps could be supported, as well as mobile apps that use WordPress as a backend.”
This is how all sites, web app type sites, should be constructed. It’s all about services. Create a service, use the same service from the web app and mobile and anything else connected to the internet. Yes, yes, yes!
I’m old. When RSS was hitting the streets we subscribed from desktop clients and didn’t have multiple computers to keep in sync (I don’t care if my read/unread count is in sync, but that’s another matter.)
It’s nice to see RSS readers popping up, Google Reader disappearing was good for the ecosystem, it revived a stagnant market.
One thing that’s missing from all the clients I’ve tried is a very simple mechanism to sync my OPML subscription file to my Dropbox account. I don’t use a centralized service to fetch the distributed network of RSS feeds I follow. Since I don’t care about read/unread counts it makes sense for me to sync locally. The only thing I’d like to keep in sync are my subscriptions, my OPML file.
I currently use Reeder across Mac, iPad, and iPhone, but as far as I’m aware it doesn’t support saving my subscriptions to a cloud based solution. If all RSS readers supported existing storage services, Dropbox seems the most logical choice, then we could keep our subscriptions in sync without the need of another service.
I’d love to share some feature requests with you.
Not that I have a popular site being Fireball’d daily, but I like static publishing. Regeneration of a page each time it is loaded seems like a waste of computing power. I’ve been evaluating all kinds of static publishing systems but none of them give me the flexibility to manage them the way WordPress does. I don’t use a lot of fancy stuff on my site, it has always been about the content for me. I know this stuff isn’t easy to do, but it’s something I’d love to see.
This is a request for WordPress for iOS. When I’m browsing Blogs I Follow I would love to have the option to create a new post from selected text. Bonus points if I can define a template for the post. Most of my posts follow a simple formula for links to other posts. Site name with a link to the post, followed by a snippet from the post. Having a way to create a template for that would be really helpful. UPDATE: I just discovered the Reblog feature. It seemed natural to tap the share button. The Reblog button was at the bottom of the post and it turns out it doesn’t work the way I’d like it to.
That’s all I can think of for now. Thanks for listening.