jb… a weblog by Jonathan Buys

Inessential Thanks

I believe this will be the last I muck about with the design of the site for the foreseeable future. After being disappointed by the available themes, and further disappointed by my own design ability, I went back to basics. And by basics I mean that I found a few sites that I like the look of and copied large chunks of HTML and CSS to build a custom Jekyll theme.

Readers of Brent Simmons’ Inessential site will probably recognize the fonts and general layout. I’ve added navigation at the top, minimized the layout to bare HTML5 tags, and setup some color here and there. I’ve aslo setup a bit of responsiveness for media, and syntax highlighting for code blocks. My hope is that this will be a good baseline for any future work I put into the site, but attribution must be made first.

I enjoy the simplicity of the design, and how clean and readable it is now. I especially like that there is no Javascript in use. Nothing but pure HTML and CSS. No tracking, no stats, nothing dynamic or fancy. It’s just you, me, and the text.

PS. Brent was kind enough to give his blessing to the new design, for which I’m greatly appreciative.

Example 50031 of Web Developers Overcomplicating Projects

I spent some time over the past couple nights adopting a new theme for the old digs here at jb. I found the beautiful Chalk theme by Nielsen Ramon and adopted my site to use it, including, finally, a working tags system. I’m quite happy with the tags, but I’m less happy with the bundled deployment system the theme shipped with.

The theme depended on NodeJS to build and deploy to GitHub for reasons that I’m sure made complete sense to the developer but I simply don’t care about. The documentation says to run npm run publish to build and push the site, doing so runs a script that does quite a bit of mucking about with the structure of the site.

# Checkout gh-pages branch.
if [ `git branch | grep gh-pages` ]
  git branch -D gh-pages
git checkout -b gh-pages

First thing we do is create a new branch and check it out. So far so good, I guess.

# Build site.
yarn install --modules-folder ./_assets/yarn
bundle exec jekyll build

I’m not familier with yarn, but the site says that it provides “fast, reliable, and secure dependency management”. Ok, fair enough, but what dependencies could my little blog possibly have? Apparently, the package.json file it lists what yarn is downloading:

  "dependencies": {
    "jquery": "^3.2.1",
    "npm": "^6.0.1",
    "retinajs": "^2.1.1",
    "svgxuse": "^1.2.4",
    "webfontloader": "^1.6.28",
    "zooming": "^2.0.0"

Eh… ok. Why do I need NodeJS for this again? So, Yarn installs a bunch of Javascript and then Jekyll builds the site. Moving on…

# Delete and move files.
find . -maxdepth 1 ! -name '_site' ! -name '.git' ! -name '.gitignore' -exec rm -rf {} \;
mv _site/* .
rm -R _site/

Now things are getting interesting. This deletes everything except the git directory, the .gitignore file, and the site Jekyll just built. Then it moves everything out of the _site directory into the root and deletes that directory as well.

# Push to gh-pages.
git add -fA
git commit --allow-empty -m "$(git log -1 --pretty=%B) [ci skip]"
git push -f -q origin gh-pages

# Move back to previous branch.
git checkout -
yarn install --modules-folder ./_assets/yarn

Add, commit, and push the changes to Github under the gh-pages branch, then checkout whatever you had previously and reinstall all the javascript. When I tried this my site went offline. I think this script might be out of date. GitHub requires sites that won’t build in Jekyll to be in the master branch, and if you want to use a custom domain name you have to add a CNAME file with the domain name you want to use.

To work around this I setup a separate repository just for the source of the site and moved the built site into the master branch of the main repository. But, when I pulled everything down on my MacBook, the site wouldn’t compile, with Jekyll complaining about not being able to find Jquery. It was at this point I knew that I had gone down a terrible rabbit hole.

Luckily, I was able to get the site built once, so I had all the “compiled” code to work with. All I needed to do was use those files to build my own Jekyll theme with static assets and none of this Javascript build nonesene. Apparently the original theme was trying to do something fancy with the assets by dynamically renaming them and adding assets selectively to the compiled site. I don’t care about any of that.

Jekyll uses the liquid templating system, so it’s trivial to go through the site and add tags to pull in the content you need during build time. Using the theme as shipped caused me to need three different package managers to build a static site. That’s just not right. What’s so wrong with HTML, CSS, and just a little bit of Javascript?

I don’t know Nielsen, and I’m sure he had good reasons to build the theme like he did. I do think it’s beautiful and I’m thankful that he released it as open source so I could use it. For me though, I don’t need all those layers in my life. I just want an easy way to write and publish my site, and have it look and feel like something I care to have my name on.

It used to be you could learn how to build a web site by right-clicking and selecting “view source”. But now, everything easy is hard again.

Merging the Mac and the iPad

It seems undeniable that, given an infinite timescale, Apple will eventually simplify their two most popular systems into a single platform. Merging MacOS and iOS would, theoretically anyway, provide the users with the best of both worlds, and developers would finally have a single platform to target instead of two. This concept seems to run counter to what Apple executives have said in the past about the Mac, specifically that “the Mac keeps going forever”, but the interview that statement comes from is five years old now, which… in silicon valley terms, really is forever ago.

Since then we’ve seen some interesting ideas come to market, like Microsoft’s Surface Studio, a desktop computer with a 27” 4k touchscreen and stylus , and an odd dial that can sit either on the desk or directly on the screen. Samsung is hooking their Galaxy phones up to a keyboard, monitor, and mouse to use the phone as a desktop computer through the DeX dock. Outside of Apple, touchscreens on mobile computers are nearly ubiquitous, from Windows 10 PCs to convertible Chromebooks. Inside of Apple though, we’ve seen almost no crossing of the streams… almost.

The iPad Pro is a computer unlike any other. Incredibly powerful, but hamstrung by limited software and user interaction capabilities. Geek Bench scores are impressive, but you can’t hook up a thumb drive. It looks like a good device for free-form drawing and artistic work, but outside of basic static sties you can’t use it for web development. More than anything, iOS’s reimagining of an operating system for the modern, mobile world eschews decades of proven user experience work that’s gone into the MacOS user interface. MacOS is consistent, discoverable, and reliable. A good Mac app behaves similarly to the other apps that run on the Mac. Copy & paste, undo & redo, and standard keyboard shortcuts function the same across well-designed 3rd party apps and Apple’s own bundled apps. At least they did, until Mojave.

Mojave introduced four new bundled applications to the Mac. Home, News, Stocks, & Voice Memos were ported directly over from iOS using an as-yet-unnamed unified development framework popularly referred to as Marzipan. Apparently the framework is only half-baked, because the apps themselves do not at all act like they belong on the platform. Keyboard shortcuts are missing, UI elements are entirely out of place, it’s a mess. On a recent episode of The Talk Show, Jason Snell and John Gruber discuss the future of these apps, and Snell suggests that what makes a “Mac app” might be changing to meld around what these new iOS apps on the Mac become once the framework is more stable. Niether Jason nor John are slouches when it comes to discussing the Mac, but in this particular case I think Jason is wrong.

What makes a good Mac app is not an indiscernable feel or look to the application. A good Mac app behaves the way that the Mac has taught people to expect applications to behave since 1984. That’s how an application looks and feels like it belongs on the Mac, when things are where they are expected to be, and the application responds as expected when the user interacts with it. If Apple wants to bring iOS apps to the Mac, I certainly hope they have more in store than this. These iOS apps are going to have to learn to behave how the users of the platform expect them to behave, not the other way around.

In many ways, I think Apple found themselves at this crossroads almost on accident. In fact, I think the “macification” of the iPad is to its detriment. iOS was never meant to be used the way the iPad Pro is advertised. Features like multitasking and windowing seem like they were wedged into the OS when Apple found themselves with a less popular platform than they’d hoped. Apple thought that the iPad was the future of computing… what if they’re wrong?

Apple stubbornly wants the iPad to be the future of computing, so they’ve been focusing on making it more capable for power users, adding more and more hardware power and confusing the pure simplicity of iOS with undiscoverable features and unfulfilled promises. What if, in the next couple years, Apple decides to right the ship and build a truly good MacBook/iOS hybrid?

What about an ARM mac with a detachable touchscreen? Or one that folds over on itself? What if Apple learned all the best lessons from Microsoft’s experiments with their Surface lineup and did it right with the Mac? What about an iMac you can draw on? I’d love to be able to create my OmniGraffle drawings on my Mac with a huge canvas and an Apple Pencil. I’d love to be able to use touch on my Mac to interact with the UI when appropriate, and use the trackpad and keyboard when not. Let the Mac grow the way the users actually want it to grow and let the iPad go back to being just the best tablet on the market. Apple could simplify iOS again, and concentrate on making the Mac the best tool for getting things done.

A Dream Jekyll App

I’ve never been 100% happy with this site. On the one hand, Jekyll lets me have full control of my content, and I never have to worry about losing any of it or having anything locked inside a database on a server somewhere. On the other hand, things like adding media is more complicated than I’d like. I’ve written scripts to help, of course, but I’d really rather have the best of both worlds.

I’ve considered creating an application to manage this for me. Like MarsEdit for Jekyll and GitHub Pages. A text editor with a git client and an understanding of Jekyll site structure. It could even let the user sign up for GitHub and setup the repository. I thought I might setup my old Paragraphs app to do this for me… I could tear out the site rendering code and replace it with a wrapper around a libgit2. But, the text editor in Paragraphs needs a lot of work, and there would be multiple parts of the app that would need considerable rework to get it to an even barely functional state. The other option would be to create a new app from scratch, but at this point if you aren’t creating an iOS app in Swift when starting anew what are you even doing with your life? Problem is I don’t know either Swift or iOS development. My skills in this area are basically outdated.

A search for “Jekyll” in the Mac App Store finds one result, for a “markup viewer” app with dubious usefulness. A quick Duck search finds a couple people with the same idea, one that setup a web GUI, which is not at all what I’m talking about, and one that started something five years ago and never finished it. From what I can tell, the app that I want doesn’t exist. Too bad Ulysses and IA Writer added support for Medium into their apps instead of GitHub pages.

So should I build this app or not? It’s basically a text editor that you can drop media on, hit publish, and have it push the site to GitHub. The same thing I have now, but automated, simple, and beautiful. Is there a market for this style of app? Would GitHub allow it? Could I learn the skills required to create it in a reasonable time? iOS development is supposed to be easier than macOS… but I’m not sure that applies when you’re carrying so much baggage around from the old style of development.

In the end, I’m not sure it’d be worth the effort for me. I’ve already got a beautiful text editor, and my scripts and workflows make it simple for me to create and publish new posts. I think I’ve talked myself out of building this app myself, but darned if I wouldn’t love for someone else to build it.

It's the Price

The recent hubbub about Apple’s earnings guidance has “analysts” and pundits talking a lot about China and the global economic situation. I’m sure there’s something to all that, but my take is simpler… the new iPhones are priced too high.

I’m not ready to spend a thousand bucks on a new phone, even though the X-series looks very nice. I’ve talked to several other people who feel the same way I do, one just this morning, even though we are both still running the 6S. Personally, at this price, I’ll keep running my phone till it doesn’t work anymore.

Of course, if Apple came out with a real successor to the iPhone SE, maybe an X-series SE at a similar price point as the previous SE, I’d be very interested in that. But, we’ll see how the next year or so plays out.

An Optimistic 2019

CPG Gray and Myke Hurley have been talking about assigning a theme to a year on their Cortex podcast, in lieu of new year’s resolutions. I quite like this idea, and I’ve decided to adopt it. I’ve decided that my personal theme for 2019 is finishing.

Over the years I’ve started, made significant progress, and then dropped several projects once they got to a state I considered “good enough”. I care about the projects too much to drop them completely, but I’ve lacked the motivation to drive them the final mile to completion.

I’ve waffled a bit on adopting this theme because there is something to be said for leaving things behind that don’t work, but after considering it for a while it actually fits perfectly. It’s time to make a decision. This year, I’ll either finish the project, or leave it behind forever.

So, what kind of projects?

A lot of this falls under the heading of “one of these days…”; adopting finishing as my theme of the year is mentally preparing myself for the fact that the day has come. Posting here is just further motivation not to publicly embarrass myself by not following through. This time next year, we’ll see how much I was actually able to get done, and what got left behind.

Merry Christmas

Let’s give generously this Christmas, and here’s to a happy new year. May the peace of Christ, which surpasses all understanding, guard your hearts and minds in the coming months.

Software Subscriptions and Bundled Apps

The Omni Group’s recent announcement that they’d have a subscription option for OmniFocus has me thinking about how I’m going to be handling third-party software in the future. I’m not angry at them, they are still (for now) offering OmniFocus for purchase, but I wonder how much longer they’ll want to keep with the old-style model of licensing when and if subscriptions turn out to be far more lucrative.

On the one hand, software developers need a sustainable business model, and if the market of available Mac users to sell to is not getting any bigger, they need to figure out how to keep getting money out of the people they’ve already sold to. It’s a simple enough equation. On the other hand though, we could wind up with a lot of subscriptions. Off the top of my head I’ve already got:

To be honest, the list is a bit ridiculous, but different people in my household enjoy different things, and so here we are. Hopefully several of these will be cancelled in the next year or two.

I’ve tended to avoid most software subscriptions. When TextExpander switched to a subscription I exported all my snippets and bought Keyboard Maestro. Over the past year I’ve cancelled Bear and Ulysses, opting instead for Apple’s Notes app for the former, and nothing yet for the latter. When I start working on my novel again, it’s likely that I’ll switch to Scrivner, unless they too go to subscriptions, at which point I’ll probably toss a coin between the two.

Bear was already in a bit of a precarious position because the bundled Notes app Apple makes has gotten so good in the past few years. OmniFocus is in a similar position with Reminders. While Reminders and OmniFocus are two very different apps, at the core they both do the same thing, give me lists of tasks to do. OmniFocus is obviously far more powerful, and better at giving me the right thing to work on at the right time, but I could get by with Reminders. Come to think of it, I could get by with pen and paper… I did so for years before I converted to OmniFocus.

Being “Sherlocked” has never been a good thing for developers. They are always in a better position when their application offers something that Apple is unlikely to copy or absorb into their operating system. MindNode for example, Day One and OmniGraffle come to mind as well. If developers are going to be asking consumers for more money, the value of the software they deliver must be significantly higher than what is available for free out of the box with macOS.

I truly want to see the Apple developer community thrive, but I’m not sure how far I’m willing to go with them on this journey to everything being a subscription.

The 2018 iPad Pro

Sometimes even I get caught up in waves of pessimism, and the recent onslaught of negativity against smart phones, social media, and technology in general has been no exception. It was while I was mulling over the affect of technology on our society that I watched the most recent Apple event where they released an updated MacBook Air, Mac Mini, and a new line of iPad Pros. The Air and the Mini look great, although it’s too bad that they are more expensive than previous models. What really caught my attention though were the iPads.

I’m drawn to the iPad in a way that’s difficult to explain. It’s an embodiment of an optimistic view of the future of technology and society, where our computing devices silently and invisibly do their jobs in the background of our lives. Apple likes to use the term “magical” in their marketing copy, and while I don’t like the term used in the way they do, I think it does somewhat apply to the iPad1. A pane of glass the size of a sheet of paper that becomes whatever the app on it is. The rest of the device disappears behind the application, so that what you are holding is an email, a web browser, a game, a calendar… whatever you need it to be. Your gateway to knowledge, work, and entertainment looks less like this, and more like this.

The iPad is a device designed to fit into a natural way of living. What can be more fitting than sitting down with something you can hold in your hand and examining it? Or walking around with it and taking notes of the things you see? In many ways the Apple Watch is the best current example of invisible technology. It sits on my wrist and silently enhances my day, encouraging me to be more healthy, active, and to take time to be still and breath once in a while. I’ll have more to say about the watch at a later date, probably a one-year review. So far, I’ve worn it every day since I got it for Christmas last year.

Of course, humans being the ridiculous creatures that we are, we always find ways to screw things up. What good thing has humanity not decided to take too much of? I like the iPad, and the iPhone too, but what I don’t like are the applications that have been designed to prey on innate weaknesses in the human psyche. Like rats in a maze, we get hits of dopamine in our brains when we see someone “liked” something we’ve shared. Sites like Facebook, Twitter, Instagram, and Snapchat have been intentionally designed specifically to target those areas of the brain that are susceptible to addiction. This is bad, but it’s not the iPad or iPhone’s fault.

These devices are tools. Amazing, incredible, mind-boggling tools, but still tools. What’s important to remember is that the iPad becomes whatever app you are running at the time. So if you run Snapchat, that’s what the device is. On the other hand, if you run OmniFocus, the iPad becomes something else entirely. The problem is not in the technology; it is, of course, in us. Luckily, I think that’s the conclusion the rest of the world will come to eventually as well. Technology advances so much faster than social norms can keep up with, it takes us a while to realize what we are doing to ourselves. Like smoking, it’s my opinion that social media without limits, as we know it now, will be regulated to the fringes within a generation.

Finally, now that I’ve talked myself out of running away to the woods and living in a cave for the rest of my life, what about that new iPad Pro?

MacStories and Six Colors have good initial write-ups, but what caught my eye the most was the switch from a lightning port to USB-C. My ears pricked up when Apple highlighted during the keynote that you could use this port to hook straight up to an external monitor, which is one of the items on my list of what the iPad needs to be a working machine for most people. The external monitor support looks pretty limited however, leaving it up to the application for how they wish to deal with it. Par for the course so far, it seems the hardware for the iPad is miles ahead of the software.

But does it really matter in my concept of future work and how I’d like to work? I’m not sure it does anymore. If my dream of future technology is to be able to pick up my workspace and walk anywhere and be able to sit down and get right to work, perhaps the iPad is closer now than it ever has been in the past. I still need to be able to type, but I also need to read and take notes, participate in meetings, make network diagrams, and interact with the various web-based consoles I depend on for my work. Of course, I could do all that with a MacBook now, but a MacBook brings with it macOS and a long history of computing ideas that iOS eschews. Perhaps my list is not as important as I thought. Maybe the 2018 iPad Pro is the device I’ve been waiting for to make the technology necessary in my life disappear. I’m intrigued once again.

  1. I still extremely dislike the name “iPad”. “Slate” or “Canvas” would have been so much better. It’s too bad Apple married themselves to the “iSomething” moniker. 

The Typewriter Project

the desk

A phrase I’ve found myself repeating to friends and family from time to time recently is that “some things used to be better”. As a technologist, and an optimist, I’m normally very positive about the future, but lately I’ve come to think about the place some modern technology has in our lives as increasingly negative. I’m rethinking, yet again, our relationship with the many devices we’ve invited into our lives.

While I was pondering this topic and waiting for the mechanic to finish with my car I wandered into a second-hand store and found this beauty of a machine on sale for $5. Of course I brought it home. The typewriter is a Montgomery Ward Signature 440T, made in Nagoya, Japan in 19681. It appears to be in perfect working order, although it’s extremely dirty inside. My intention is to restore it as best I can, which for the moment I believe means taking it apart and cleaning it, then putting it back together. I’ll put a new ribbon on it, and from there I think it’ll be ready to type.

the desk

Perhaps I’ll send out a letter or two with it. Maybe address envelops. I don’t know that it’s really got a lot of practical use other than looking cool on my desk, but it’s a project, a hobby, and things done for fun don’t need to be practical.

The machine is entirely mechanical. No electricity, and it’s lasted fifty years so far. I imagine it could last another fifty if I take care of it. I don’t think I can say the same about my iPhone or the iMac I’m writing this on. Eventually the components in both devices will wear out. The battery will fail to take a charge, the screen will start to fade, the drives will start to give errors. Things break over time, and in our disposable culture the answer is to throw it away and buy another one. Meanwhile, the typewriter I bought for five bucks has lasted for fifty years.

It’s a single-purpose machine. Created back before attention was a sparse commodity. Before the Internet, before smartphones, before twitter or facebook. All gears and pulleys, levers and hammers. You have to think hard about what you are writing, and not make any mistakes while typing. If you do you have to pull the entire page out and start over again.

I’ve been thinking about what we’ve lost, and what we’ve gained over the years. It’s true that the Internet enables new business models, my own included, but are we really better off now? I’m not sure we can objectively say that the Internet has made the world a better place. Have smartphones made us happier? Research says we are now more alone and isolated than ever, with increasing rates of depression and negativity. Politically we are at each others throats, failing to see the world as it is and instead seeing it through the lens of partisanship. 24-hour news creates catastrophes where there were none, everything is an emergency.

In the middle of all this, we are struggling to find peace, happiness, acceptance, and love. The Amish reject any technology that they feel would pull them apart instead of bringing them closer together. I think they are on to something there. Of course, I have no intention of converting, but it does leave me wondering “where do we go from here?”

I’ve said for a while that I thought the best technology was nearly invisible, silently enhancing our lives in the background while we go about our day. Unfortunately, today’s technology has been developed to provide what people want, but too often ignores what they need. I wonder if what we need most is a cultural shift to view the negative aspects of technology as being as harmful to us as cigarettes and alcohol. Sure, the smoker loves to smoke, but it’s killing him. Looks like all of us love social media too, but it’s breaking us from the inside. There’s something about the psychology of being online that changes our behavior in ways that are completely aberrant.

The affects of computers and the internet on our society are compounding. My wife is a teacher, and the school started giving the kids computers years ago. Now she’s thinking about going back to books and paper just so she can get the kids to pay attention to the class and not be distracted by what the computer provides. What will happen to these kids in the next ten to fifteen years? Will they be able to concentrate on hard problems at all?

For thousands of years people lived pretty much the same from one generation to the next. Technology has always advanced, but never so fast as it has in the past one-hundred years. So much has changed at such an unprecedented pace. Our psyches and our bodies are not prepared for what the technology has given us.

It’s possible that I’m getting to a certain age where people tend to reminisce about how things were when they were young, but I don’t feel like I’m quite that old yet. It’s just a different world now. Is it the world we want it to be? I wonder. I look at my typewriter project and wonder.

  1. Serial Number L9373629, if you want to know.