Adam Tuttle

Taffy 3.0.0: It's About Ethics in Gaming Journalism

We did it! Taffy 3.0.0 is here.

Download Taffy 3.0.0

As I mentioned with each Release Candidate, there are a few Breaking Changes — things you will have to change in your API code if you upgrade Taffy. I've documented what each of them is in the new Breaking Changes section of the documentation, and not to worry: They're all pretty trivial. Just changing a few base classes and stuff like that.

You can also see a full detailed list of all bug fixes and new features in the documentation.

As ever, my immense thanks go out to everyone that contributed to this release; and there are many of you! I've added your GitHub avatars to the bottom of as a thank you!

Taffy 3.0.0-RC3

Today I've published Taffy 3.0.0-RC3, which I expect to be the final Release Candidate build for the final 3.0.0 release. Just a few small bug fixes went into this update, and unless anyone reports any issues with this build it will become the official 3.0.0 build some time next week.

There have been many changes between 2.x and 3.0, a few of which will require some minor updates to your code, so if you're upgrading please familiarize yourself with the breaking changes first.

Upgrading to OSX Yosemite with CF10 Already Installed

Yesterday morning I decided to take the plunge and upgrade my daily-driver laptop to OSX Yosemite. This is the story of what I did, what I could have done better, and how I dug myself out of that hole.

Before I made the decision I snooped around to see if anyone else had any trouble. By that I mean that I had already seen a relevant bug report and I asked on twitter:

I didn't put much stock into the bug report: It looks like it was written by someone that doesn't really know their way around a CF installer, and I like to think that I do (know my way around a CF installer). And the tweets were generally positive: You'll probably have to reinstall MySQL, and the built-in Apache install will probably get un-configured. Not that big of a deal, all in all.

So I dove in! Knowing that apache config would be mucked with, I was (1) very happy that I had checked it into a git repo a long time ago, and (2) made a backup copy in my home directory just in case. I also backed up all of my mysql databases. That should cover everything that wasn't backed up overnight with Backblaze.

The download went faster than when I upgraded my Mac Mini HTPC the other day (irony: the mac mini is on a wired connection and my laptop is on wifi...), but the installer took for-freaking-ever. When it got down to "2 minutes remaining" it was just about noon so I left it alone and went out for lunch. When I returned an hour later, it still said, "2 minutes remaining."

... Crap.

Not to worry, though, as this appears to be a pretty common problem, especially for people that have a lot of stuff in /usr/local/bin (homebrew, global node.js modules, etc) -- which includes me. So wait it out I did (I did hit Cmd+L to watch the log and confirmed it was actually working that whole time, so at least it wasn't just the dreaded beachball of death). At about 1:40 it finally finished installing, and I was able to use my laptop again.

The first thing I did was install updates for things I was prompted for; probably stuff that required Yosemite: a new version of 1Password, an iTerm update, and Keynote, iMovie, and iPhoto; as well as the updated Command Line Tools. Then it was down to business.

The first thing I wanted to do was verify that I could start CF and Apache and get to the CF Administrator. No complaints when I started them, but as expected, I was not able to get to the CF Administrator: 404.

I went through the diff of changes made to my httpd.conf file (thanks, git!) and adjusted things that made sense to me: re-establishing my preferred default document root, re-enabling my vhosts, adding the Include line for mod_jk that was removed, etc. But still, Apache never seemed to finish starting: there were no errors printed to stdout or stderr when I started it, but I never found httpd in the process list either. Then I found reference to apachectl configtest on Stack Overflow (you may or may not need to use sudo; I did), which does exactly what you should expect: it verifies that your apache configuration is at valid, syntactically and otherwise. I had a few problems. Firstly:

httpd: Syntax error on line 531 of /private/etc/apache2/httpd.conf: Syntax error on line 2 of /private/etc/apache2/modjk.conf: Cannot load /Applications/ColdFusion10/config/wsconfig/1/ into server: dlopen(/Applications/ColdFusion10/config/wsconfig/1/, 10): Symbol not found: _aplogerror\n Referenced from: /Applications/ColdFusion10/config/wsconfig/1/\n Expected in: flat namespace\n in /Applications/ColdFusion10/config/wsconfig/1/

My assumption here was that there's some problem with the webserver connector as built on OSX 10.9, so I commented that out. After doing that, of course, my JkMountFile lines in each vhost were the next problems:

AH00526: Syntax error on line 116 of /private/etc/apache2/extra/httpd-vhosts.conf:
Invalid command 'JkMountFile', perhaps misspelled or defined by a module not included in the server configuration

Commenting each of those out has made Apache successfully start, and I can now browse around my various vhosts, but obviously ColdFusion isn't running. I had run wsconfig at some point previously and it was crashing. I was hopeful that the problem had something to do with my mucked up Apache config, but alas, even once the config was cleaned up the web server connector continued crashing on startup.

Saddened, I downloaded a fresh copy of the CF10 installer and tried to uninstall my existing copy. The uninstaller crashed too. "Oh well," I thought, and figured I would rename the CF10 folder and install anew. The freshly downloaded installer crashes, too. Delightful!

Not that I particularly want it, but ColdFusion11 might work, since it's been released more recently. Since CF10 is still supported (*ahem*) you'd expect its installer to be able to run, but whatever. I downloaded CF11, hoping it would save me from having to reformat my laptop and stay up all night reinstalling stuff from scratch and... hallelujah, it runs!

Let's not get too excited just yet, though. The installer completes (with a very ugly dead give-away "this app was written with Java" dialog box for selecting the path of my existing CF10 installation for settings migration), and the CF Administrator loads! Hooray! I get to sleep tonight!

Mappings copied over and look right. Still don't have a mail server configured (this is how I want it, so check!). My MySQL datasources check out. MSSQL TBD: I need to run windows update in that VM and make sure it's still forwarding ports correctly, but it's not mission critical at the moment.

I did have to figure out where to drop in my Bcrypt.class file so that BCrypt will work (hint: /Applications/ColdFusion11/cfusion/wwwroot/WEB-INF/classes/), but all in all everything appears to be in working order. I'd still prefer to have CF10 installed to match my production servers, but I suppose this will have to do.

... That was not how I wanted to spend my Wednesday.

Standing Desk Update 3: No More Boxes

Just a quick update this time. I posted a photo of my now-completed standing desk setup on Facebook and someone asked a few questions. I figured it bore posting here for the wider audience that may be following along.

As previously mentioned, I was taking a stab at a DIY standing desk because I heard that the Varidesk that I had my eye on gave first-impressions of being wobbly, which is not acceptable given how much they cost!

Jin built his own standing desk, and I did a variation on his setup. Since I have a wall-mounted TV for a monitor, I only needed something to raise my keyboard and mouse up to the right height, and provide enough desk surface area to get my work done. As it turned out, the IKEA LACK coffee table looked like it was going to be just about the right height when combined with my existing desk —with no need to bolt anything to the front of it— and it cost less than $40 including shipping to my doorstep.

My completed standing desk

I ordered that and it came over the weekend. I wanted to use it for a day or two before posting about it so that I could be sure I didn't need to attach a shelf to the front or shorten the legs. I got lucky and the table is almost exactly to the right height. If I start slouching or lean too heavily on one leg then my arms start to angle up a little bit, but otherwise it's near perfect without any modifications at all.

One of the questions I get asked a lot about standing is how long it took me to adjust. The first day I absent-mindedly powered through, standing for basically the entire day without any issues... until the next morning. My legs and lower back were very sore, as you would expect if you start using muscles for ~8 hours a day that you have basically ignored for the last decade.

After that I started using a Pomodoro timer to remind myself to take sitting breaks now and then; but that didn't last very long (just like when I tried using a pomodoro timer to allocate specific times for mental focus/breaks...) I found it was easier just to try to take one brief break about half way through my morning, sit again for about an hour while I have lunch, and then take another brief break some time in the afternoon. That seems to be enough for me. My legs and back still get a little sore, but it's only been a few weeks. I expect they'll get stronger and used to the work eventually.

I've also been asked about what sort of monitor I'm using. Am I still using that cheap-o 4K TV I previously mentioned? Nope. It was... ok. There was noticeable mouse lag, because it was operating at 30Hz, and that wound up driving me nuts. I returned it and bought a slightly smaller 1080p LG TV instead. 1080p isn't the highest resolution around, but it gets the job done and the frame rate is up to snuff. Standing this close to it, text gets a little fuzzy at times. If I knew that I might have gone with something in the neighborhood of 25" instead of 30", to increase physical pixel density.

All of these super-high pixel density phones and tablets have kind of spoiled me.

I'm glad to see that super-high-resolution monitors are now becoming more popular. I'm sure that's the route I'll be going in the long run. In another year or two this TV will be repurposed, and I expect to have a new computer (capable of super-high-resolutions) and a 5k monitor.

I expect this will probably be my last update on my standing desk for quite some time, unless there are enough questions to warrant another post.