b8r 1.0

I decided to make the current revision of b8r “1.0” (it’s still marked “prerelease”) based on the fact it’s proven solid and usable during a year of constant use and improvement. It has been at least as robust and easy to work with as the jQuery-dependent library we developed at USPTO. I’ve just updated bindinator.com and my galaxy demo.

Recently, I made the first deliberately breaking changes and the difficulty of adapting various codebases that use b8r was pretty minor. So, I’m pretty confident that b8r is in good shape.

b8r's "fiddle" component in action
b8r’s “fiddle” component in action — b8r’s fiddle.component.js currently weighs in at 272 loc including markup, css, and comments.

I also improved the appearance of the inline fiddle and test components, and added prism.js code-rendering to all the various inline code examples to make the documentation pages look snazzier. A nice change to the test library makes sure that async test results are consistently ordered, and added a visible “pending” state so you can see tests that somehow failed to complete.

b8r has some pretty nice stuff. (Although much of this nice stuff needs to be documented.) You can download b8r, put nwjs in your Applications directory and/or npm install electron and double-click a .command file to see the b8r documentation inside a desktop app. Or you can install nodejs and double-click a .command file and serve it locally via https (I also provide a .command file will generate local ssl keys). (The .command stuff is currently Mac only, for which I apologize. I imagine it would be very easy to do it for Linux and Windows, but I haven’t tried.)

"electron-file-browser" component (running inside nwjs)
“electron-file-browser” component (running inside nwjs)

There’s a cute feature if you load the b8r documentation in nodejs or electron and command-click on a component — the component is loaded in a new window. I’m planning on leveraging this functionality to let the documentation app function as an IDE.

I’m currently working on convenience methods for multi-window desktop applications (it would be super cool if you could transparently bind across windows and browser tabs). I’ve also written a new version of foldermark that uses a very simple PHP back end (nodejs servers are still a much bigger pain to deal with than PHP) combined with b8r on the client-side.

The biggest shortcoming of b8r remains the fact that my team is the only group really using it. Because we’re developing a desktop app using Electron, we aren’t constantly testing on Edge, Firefox, Safari, etc.. I know for a fact that it has problems in IE and Edge, and that some of the example components aren’t touch-friendly, and we’re definitely doing more stuff for Electron than for nwjs (nwjs is much simpler to work with, but it’s becoming increasingly irrelevant, I fear). But if you’re working in reasonably recent releases of Chrome or Chromium, b8r should be very solid.

So, that’s the way it is: b8r 1.0.

Replacing Crashplan

I’ve been pretty happy with Crashplan for five years or so, although lately not so much. Obviously, one reason to be unhappy with Crashplan is that they’re no longer supporting the family plan I was using to back up all our Macs. Worse, their quality of service seems to have (understandably) slipped as my plan approaches its termination.

Exhibit 1: my wife bought a new laptop. When she tried to restore files from her old laptop, they were MIA.

So, here we are at a nasty juncture where our supposedly bulletproof fire-and-forget backup system is (a) not working terribly well and (b) shortly going to not work at all.

Possible Crashplan Replacements

The obvious replacement is Carbonite. The problem with Carbonite is that it’s going either (a) be a lot more expensive than Crashplan was (because of our family plan — which is the equivalent of, effectively, n $100/year plans where n is the number of computers you back up; the small business plan works out as being stupidly expensive if you have more than 250GB of data) or (b) require me to do a bunch of work (i.e. set up one computer as the family server, have all the other devices back up to it, and then back it up via Carbonite. So Carbonite will either cost $300 (say) per year or $100 per year but require me to be my own network engineer. Oh, and forget mobile backups.

If I want to do a whole bunch of work I might as well just use Amazon S3. For 2TB of data that’s a mere $46/month. Ouch. I could probably use their cheaper long term storage, but now I’m basically starting my own Crashplan / Dropbox implementation and that sounds kind of like hard work. Forget that.

So, on to the “consumer” options (I’ve tried to pick 2TB plans as this is the absolute minimum I can live with):

  • Dropbox — $99 p.a. 1TB (there is no 2TB plan)
  • Box — $540 p.a. for unlimited (3 computers)
  • Hubic — $60 p.a. 10TB
  • Amazon — $120 p.a. 2TB
  • Google — $240 p.a. 2TB
  • Microsoft — $99 p.a. 5 users, 1TB/user
  • Apple — $120 p.a. 2TB (no Android client)

(Edit: TablePress was a disaster.)

Note that all these services support web browser access, so you can get at your files from any device with a web browser, but I’m talking about file-system integration where you can just save your file in the usual place and it’s seamlessly backed up to the cloud. I should note that Dropbox and Hubic even provide Linux clients. Everyone supports Mac, Windows, and iOS.

At first glance, Hubic looks like the standout value-for-money option. (Hubic is essentially like Dropbox, except it’s run by a gigantic hosting company). The problem is that I’ve found Hubic to have a poor user experience, especially with regard to performance. (My own experience is quite limited — and I’m kind of shocked that my blog post on Dropbox vs. Box vs. Hubic ranks quite high on Google searches for “Hubic Review”.) This may be a result of server location, or simply under-provisioning (10TB is so close to “unlimited” that I imagine it attracts a lot of abusive users).

(Edit: I should mention that Hubic offers both Dropbox-like services and backup services. It also has what looks like a pretty robust API. Also there are advantages to storing your data in France. On the other hand — no 2FA.)

At second glance, Microsoft OneDrive seems like a great deal at 5TB for $100/year. The problem is that it’s 5x 1TB per user, which is effectively 1TB. Still, a great deal if you’re happy with 1TB and want Microsoft Office for your family.

The shock comes at third glance — Apple’s product is competitively priced (cheaper than Dropbox!). It doesn’t support Android (surprise!) but aside from that it’s a great deal, you can share it with your family (with each person having segregated storage), it requires no real configuration and — this is the kicker — it’s smart about mirroring stuff to your devices. Want a 1TB photo library in the cloud? Great. Want it on every one of your family computers? Not so much.

Conclusion

Hubic is the clear winner in terms of price per unit storage. Apple is the clear winner in terms of functionality and comes second in price. When I take into account the fact that I pay Apple $3/month for a lower tier of storage just for convenient mobile backups it’s an even better deal (hooray for Opportunity Cost). After some consideration I’m thinking of doing both. Hubic for volume backup and iCloud for convenience.

I’ll let you know how it works out.

Followup…

I nearly gave up on Hubic. After paying for the 10TB plan I received no response and my account didn’t change… Well, until the next day. Sacré bleu! I’m still a bit concerned that the app hasn’t been updated since 2015, but it seems to work.

Anyway, I’m going to start backing up to Hubic and we’ll see how things go.

 

Further research has shown that there are two more reasonably-priced alternatives to Carbonite, notably iDrive and Backblaze. Backblaze seems very compelling for a single computer ($5/month unlimited; $4 with a two year plan), and not bad for a small number of computers (it works out as roughly the same as Crashplan for 3 computers). iDrive is offering some interesting discounts (and lets you handle any number of computers with one account) but I find the website poor to the point of suspecting the competence of the company.

System Update Weirdness

I’m simply recording this for the benefit of others who may have similar weird experiences updating to 10.13.6.

I recently updated macOS via the App Store from 10.13.5 to 10.13.6 and it was unusual in that it got about two-thirds of the way through the install fast (while saying it had 16 minutes to go) and then got stuck.

When I noticed the problem a couple of hours later, I

  • forced power off and restarted. It then quickly went up to about the same point it previously hung, rebooted, got to about 90% of the way done, rebooted again, then got to about the same spot and the screen went black and stayed black.
  • forced power off and restarted (I might have had to do this more than once at this point) and then it got to the faux sign-in screen you now get when Macs aren’t fully booted (e.g. after the battery runs flat during stand-by).
  • I logged in and got to the proper login screen, and was was relieved to find that everything from there proceeded normally — the OS asked me if I wanted to send feedback to Apple, etc., which seems to happen after some OS updates but not others, but also wasn’t the “new user” experience where you’re asked to log into iCloud again.

As a side-note, this is an experimental first post via Ulysses.

A better RAW workflow for $35

Processed and cropped in RAWPower
Processed and cropped in RAWPower

As my frequent reader knows, I have been grappling with my RAW workflow for as long as I have had a RAW workflow. I’m hardly a pro or even much of an enthusiast, and I find dealing with all these files exhausting (it also consumes a stupid amount of disk space, etc.)

A user of Photoshop since it was called Barneyscan, and Illustrator since it was 88, I’ve been ambivalent about Adobe’s products ever since they started renting them; this was actually before they switched to monthly fees — the Creative Suites essentially forced you to upgrade on a constant basis simply to not have your software mysteriously stop launching when Adobe’s authentication servers were down.

Today, despite paying Adobe’s tax (albeit the lesser “Photographer’s” tax of $100/year) I remain unhappy with their products. Lightroom is slow, constantly wants patching, requires me to sign in (often more than once) to Adobe’s stupid services just to launch, and on and on. But, until recently, I had no credible alternative that was fast and produced even vaguely decent results.

But now there are two inexpensive, lightweight products that together may mean I don’t need Adobe’s crap any more (I’ll get back to you!):

A quick press of the P key and I can see that I nailed focus on the grass
A quick press of the P key and I can see that I nailed focus on the grass

FastRawViewer — endorsed by no less than Thom Hogan and Nasim Mansurov — is a terrific program that does exactly what it says on the can. It’s simple and lets you browse and rate photos really, really fast. You can customize its keyboard shortcuts to your pleasure (e.g. I have ratings mapped to the 0-5 keys, and P toggles high pass filtering so you can see exactly what, if anything, is in focus without pixel-peeping. Rather than having its own proprietary catalog system, it leverages your file system and XMP metadata (“sidecar” files that are compatible with Lightroom if that still floats your boat). It costs $20, you can get it here.

RAWPower lets me make RAW adjustments, straighten, and crop faster than I can launch Photoshop
RAWPower lets me make RAW adjustments, straighten, and crop faster than I can launch Photoshop

RAWPower — developed by former Aperture engineers (or a former Aperture engineer; I’m not sure) — gives you most of Aperture’s non-destructive RAW processing in a fast, lightweight app that also provides the same functionality via Apple’s Photos app. I like the Photos app except for the whole slower-than-treacle-in-a-walled-garden thing, so there’s that too. It costs $15 in the App Store. My only issue with RAWPower is that its crop-and-rotate tool is clumsy if you want to both crop AND rotate, which I usually do (and I’ve been told that addressing this issue is a priority).

(If you’re a Windows user, FastRawViewer is still great, but RAWPower is Mac only.)

FastRawViewer lets me view a folder with thousands of RAW files with no waiting (just dragging the folder info Lightroom, Photos, or Aperture would be agony), and RAWPower lets me adjust exposure, shadow recovery, straightening, and so forth faster and just as competently as Lightroom. (Photoshop still wins for any major surgery, obviously — RAWPower has no dodge, burn, layers, healing brush, perspective correction, stitching, etc.)

Getting an Nvidia 1070 (or similar) GPU working on a Mac Pro 5, 1

Victory!

I’ve been using a chipped Radeon 7950 in my 2012 Mac Pro for several years (it was a serious upgrade to my original 5770 or whatever it was that came with it) but eventually my Dell 2715Q (a 4K display) stopped working reliably with it at full resolution and I had to drop down to 1080p. Then it stopped working in 1080p.

I was pretty sure the problem was with the display (which also wasn’t working properly with my Macbook Pros), but the GPU had always been twitchy (sometimes not working on boot, and not driving all its display ports) so when Nvidia announced drivers for its latest GPUs, I figured what the heck?

Anyway, here’s the correct process along with gotchas from not doing it this way, since I found zero reliable guides online to help me.

Warning: if anything goes wrong you’ll need to screenshare into your Mac Pro from another Mac to see what’s going on, so make sure your Mac’s network connection is robust and you can screenshare into it before you do anything you’re going to regret. Luckily for me (since I fucked all this stuff up multiple times) our Macs can all “see” each other (mainly so I can get at parental controls on other Macs easily).

  1. Update your Mac to 10.12.4 (or whatever is current).
  2. Go to Nvidia’s website and download their out-of-date Mac OS X drivers, install them, and then update them in the control panel. I don’t know when you’re reading this but you want your drivers as up-to-date as possible.
  3. You may also want to install CUDA drivers, but that’s not critical.
  4. Shut down, unplug, power off, remove the Mac’s cover.
  5. I got a 1070 bundled with Mass Effect Andromeda. (Don’t care about the bundle, since I’ve got it for PS4 and hate Windows, but it was $50 cheaper than the same card without Mass Effect Andromeda. I don’t think much of Mass Effect Andromeda, but it’s definitely worth more than -$50.)
  6. The 1070 is physically a total pain to get into the Mac Pro (the 7950 seems to have been just as bad, but I have cheerfully lost all memory of it). Be careful to remove all the rubbery covers so that they don’t fall off on top of the PCI slot and cause you enormous consternation.
  7. The Mac Pro comes with two 6-pin power cables for graphics cards. The Nvidia 1070 takes one 8-pin cable, but there should be a 2x 6-pin to 8-pin adapter cable in the box. You’ll need that. Sadly it creates a lot of slack in your cables that will be snaked inside your otherwise tidy (if horribly dusty) Mac Pro.
  8. Make sure everything is securely hooked up. Close the box, plug it in, plug in displays, and boot. (If you’re using a wired network, make sure that’s plugged in.)
  9. Power on, wait for the chime, and hopefully you will be golden.

Troubleshooting

Here are the ways I fucked this up.

First, I didn’t realize the current version of Mac OS was 10.12.4, so I had 10.12.3 and installed the (January) version of the Nvidia drivers which then claimed to be up-to-date.

After I installed the card my Mac wouldn’t display jack shit from any port at any resolution. After trying two different displays and four different ports, I screen-shared into it and verified (a) it was working properly, (b) it could see the video card and recognize the vendor but couldn’t do anything with it, and (c) that the Nvidia panel could see the video card but not do anything with it.

I then found a post showing someone had successfully installed a 1080 on their Hackintosh with 10.12.4. Whoops! I installed 10.12.4 and rebooted. No dice. I went into the Nvidia panel and found it no longer claimed to be up-to-date, so I installed a new version, rebooted, and my Dell monitor came to life at a resolution I’d never seen it in before. (Easily fixed. I am now looking at my Mac Pro’s desktop in glorious 1440p, as God Steve intended.)