How Broken Glasses Led to Great Customer Service

Have you ever had those crazy weeks where everything goes wrong? That describes this week for me.

It all started Tuesday night. After dinner I dropped my glasses and the lens fell out. I squinted while trying to fix them but that just caused a massive headache. Concerned about staring at a computer the next day and the ensuing headache, I asked for the morning off so I could get them repaired. But not before fixing them myself:

glasses

Pretty genius right? I think so as well.

The next morning I dropped the kids off at school and went out on a mission to get them fixed. The first place I stopped, a nice lady welcomed me and asked what she could help me with. I told her my situation and she took the glasses back in a top secret room where I can only assume they do really cool stuff.

A few minutes later she came out and had not only fixed the problem, but tightened all the screws and even got the glasses bent back in shape. At that point I asked, how much do I owe you? It caught me by surprise when she said nothing.

I’m not sure if my genius™ fix made her feel sorry for me or if it was just the store policy. (I’m thinking the former) Either way for my future vision needs they have a new customer.

Rebuilding Wardrobe: Week 4

In this weeks Rebuilding Wardrobe series I started working on the list of posts. That sounds easy right? Grab all the posts from the database, loop them, and print them in table rows. But in our crazy world of web development it’s never that easy. One of the fields that should be included is the published date and that means I have to account for timezones. Yuck! Continue reading Rebuilding Wardrobe: Week 4

Ghost – Backbone, Angular, or Ember

This is an old but epic post discussing the pros and cons of each of these frameworks. I’ve been using Backbone heavily over the past two years and this quote really rings true to my experience:

I think Backbone is not a framework, when using Backbone you have to build a framework from the primitives it provides. This can be powerful or a burden and it mostly comes down to how much control you care to have.

In the end Ghost decided to go with Ember and the comments in the GitHub issue makes strong arguments for all three.

Setting up Gulp, Bower, Bootstrap Sass, & FontAwesome

Let’s face it. Managing front end dependencies is still a headache. As developers, we have a plethora of options for building dependencies. Some of the tools off the top of my head are Grunt, Gulp, Broccoli, Component, NPM, and probably 5 more have been released since I started writing this post. In this tutorial, I am going to focus on Gulp but I’m sure it can be modified to work with any of the others. Continue reading Setting up Gulp, Bower, Bootstrap Sass, & FontAwesome

JavaScript for OS X Automation

Not only does Apple provide an API for interacting with the operating system and install apps, but they also provide an Objective-C bridge to work directly with native libraries such as Cocoa. This is HUGE.

That’s why the fact that Apple is now offering JavaScript for task automation is so compelling. It’s not that developers have been dying to write more task automations, it’s that we have all long been searching for a universal language for building applications. The fragmentation in mobile has agitated this to nearly a tipping point. Nobody wants to install different IDEs, learn different SDKs, and maintain separate code bases. It’s simply not sustainable. Cross-compilation is appealing for this reason, but results in enormously bloated apps and a level of complexity between the developer and the operating system that they cannot control. If there is one thing developers hate, it’s a black box.

I totally missed this announcement but indeed it’s very exciting and could be a huge step for bringing web developers into true app development. Hopefully, it gets integrated beyond just Automator.