Skip to main content

Benjamin Oakes

Photo of Ben Oakes

Hi, I'm Ben Oakes and this is my geek blog. Currently, I'm a Ruby/JavaScript Developer at Liaison. Previously, I was a Developer at Continuity and Hedgeye, a Research Assistant in the Early Social Cognition Lab at Yale University and a student at the University of Iowa. I also organize, ICRuby, OpenHack Iowa City, and previously organized NewHaven.rb. I have an amazing wife named Danielle Oakes.

Filtering for the Mac OS X category. Clear

Easy request logging on OSX

by Ben

Here’s a great way to capture HTTP request/response traffic on OSX.

Source: Easy request logging on OSX

Macbook charger teardown: The surprising complexity inside Apple’s power adapter

by Ben

Have you ever wondered what’s inside your Macbook’s charger? There’s a lot more circuitry crammed into the compact power adapter than you’d expect, including a microprocessor. This charger teardown looks at the numerous components in the charger and explains how they work together to power your laptop.

Source: Macbook charger teardown: The surprising complexity inside Apple’s power adapter

Chrome dropping support for OSX 10.6, 10.7, and 10.8

by Ben

Today, we’re announcing the end of Chrome’s support for Windows XP, as well as Windows Vista, and Mac OS X 10.6, 10.7, and 10.8, since these platforms are no longer actively supported by Microsoft and Apple. Starting April 2016, Chrome will continue to function on these platforms but will no longer receive updates and security fixes.

Source: Google Chrome Blog: Updates to Chrome platform support

Snow Leopard (10.6) is the Windows XP of the Mac world in many ways. A surprising 10% or so of Mac users are still using it and presumably unable to upgrade, either because they are using an early 32-bit Intel Mac or are using a 64-bit Mac that Apple decided not to support with Mavericks (10.9). (This includes most polycarbonate MacBooks and other models, including those without enough RAM.) If you are running a version of OSX before 10.9, the simplest way to ensure continued support would be to switch to Firefox. (You could also use Windows or a flavor of Linux, both of which would provide a supported version of Chrome on older Mac hardware, but that does mean leaving OSX behind.)

It’s unfortunate that Google is dropping Chrome support, and that Apple left particular Macs behind, especially since some older Apple models will run 10.11 just fine. I find it ironic that Microsoft Windows still supports the same hardware that Apple has abandoned, as it could have run OSX 10.9.

Unsaved documents in Apple apps that use Documents in the Cloud are automatically saved to iCloud

by Ben

iCloud: Unsaved documents in Apple apps that use Documents in the Cloud are automatically saved to iCloud.

How one man’s private files ended up on Apple’s iCloud without his consent – The Washington Post.

Not the behavior I expected; makes me wonder what documents I have stored in iCloud without my knowledge. Either way, I’m happy Apple is moving to a more Dropbox-like strategy.

Google to Discontinue 32-bit Chrome for Mac Next Month

by Ben

Google to Discontinue 32-bit Chrome for Mac Next Month – OMG! Chrome.

It’s sad that I could run the latest Chrome on a Pentium 4 Dell found on the side of the road, but not on the Core Duo Mac mini I bought (for quite a bit, mind you). I don’t expect support to last forever, but what a disparity.

Major unpatched OS X bugs

by Ben

Both bugs sound pretty serious.

Unpatched Mac bug gives attackers “super user” status by going back in time.

This vulnerability can allow an attacker root access to OS X.  Time related bugs like this sudo bug are really difficult to notice, but at least it’s fairly difficult to trigger.

Rendering bug crashes OS X, iOS apps with string of Arabic characters (Updated).

This bug, on the other hand, is likely to cause all sorts of issues as it becomes more well known.  Any application that uses Apple’s CoreText  will crash if it sees a certain string of Arabic characters.  There aren’t currently any security implications, and I admittedly thought of sending the text to Mac-using friends.  However, if your browser crashes every time you view a certain site or text message, this is why.  For some reason, this bug reminds me of the ping of death (e.g., in early versions of Windows).

Maid v0.3.0 release!

by Ben

I released Maid v0.3.0 yesterday, after using Maid v0.3.0 Beta 1 for over a week myself. It was also downloaded 36 times, without any known bugs reported by beta test team.

From the change log:

I did have to make some expected changes from move to rename, however, but the warning messages for that show the new usage pretty clearly:

skipping move because foo is not a directory (use 'mkdir' to create first, or use 'rename')

Otherwise, work is progressing on the next version of Maid also. Hopefully there will be another beta soon.

But in the meantime, Maid v0.3.0 has already been downloaded 62 times. If you haven’t already given it a try, maybe Maid can help you with your spring cleaning… :)


Maid presentation

by Ben

Since I wasn’t able to make it to the newhaven.rb meetup, I ended up presenting about Maid at ICRuby today. I was happy there was quite a bit of interest.

I thought I’d share my (quick and dirty) slides and example scripts I created for the presentation. There’s no audio (besides the Ruby5 story), but you should be able to get a good sense of what I presented.

There were lots of good questions (which I wish I had written down), including how to use it with iTunes, how to use it as a replacement for logrotate, how I was using Vagrant for testing, how to automate more than set of rules, etc.

View the slides (or get the source markdown)

My thoughts on GitHub for Mac

by Ben

I recently wrote a comment for “GitHub for Mac: Easier Updates”. Since it sums up my feelings on several subjects (including my feelings about the future of OS X), I thought I should repost it here.

Maybe more people use this than I realize, but I have to say I still don’t get this.

As a web developer myself, I tend to support web-based apps; perhaps the Mac app is popular with Mac/iOS developers? More can be done from the web interface, which works on Windows, Mac, and Linux. (Plus, the web UI always stays up to date.) The only additional feature this really seems to add is a “sync” button locally. Perhaps I’m missing something, but this is all that I take away from the feature list and what I’ve used of it.

To be honest, the direction in which OS X Mountain Lion is headed doesn’t thrill me. Since I’m contemplating a move from OS X back to Linux, it’s disappointing to see an interface for this closed system even being worked on. Such a huge amount of open-source projets are hosted on GitHub (including the Linux kernel itself). If I were to expect Linux support from anyone, it would be you guys. I can understand that OS X is likely a large market for GitHub users, but I would wonder about the portability of this app…

This would be much more compelling if it were an open-source interface for git repos, but I could understand how that might not be in GitHub’s best interest. (But imagine a GitHub tool built by the users, for the users…) Maybe I’m more of a git power user than I realize, but without at least support for a remote other than origin, multiple operating systems, etc., I can’t say this is something I’ll ever use. Making it open-source would be a bonus, although it seems unlikely at this point.

Maybe I’m just missing something, but other commenters here would seem to agree.

Update: By the end of the day, they deleted not only this comment, but many others that cast an unfavorable light on GitHub for Mac. (There was at least one other that had a function named shallWeUseThisSoft.)

In the interest of preservation, here are some other recently added comments that seem likely to be deleted:

From battlemidget:

At GitHub, we think that sharing code should be as simple as possible.
That’s why we created GitHub for Mac.

Where is the source code for this client so others can port it?

From GreatS:

Please do not distribute through the mac app store and if possible do not use an apple developer id to authenticate your apps so that we don’t end up with an ecosystem fully controlled by apple (see the gatekeeper non sense they are going to introduce in mountain lion).

New open source projects: Maid and TabCarousel

by Ben

I’ve been hard at work taking some code I had originally written for myself and packaging it up as two open source projects. I’ve been very happy about the amount of interest I’ve received in both. I encourage you to take a look and see if what I’ve released would be useful to you. Feedback (and contributions) are welcome!


(Install, Source Code)

Be lazy! Let Maid clean up after you, based on rules you define.

Maid keeps files from sitting around too long, untouched. Many of the downloads and other files you collect can easily be categorized and handled appropriately by rules you define. Let the maid in your computer take care of the easy stuff, so you can spend more of your time on what matters.

Think of it like the email filters you might already have, but for files. Worried about things happening that you don’t expect? Maid doesn’t overwrite files and actions are logged so you can tell what happened.

Maid is inspired by the Mac OS X shareware program Hazel. This tool was created on Mac OS X 10.6, but should be generally portable to other systems. (Some of the more advanced features such as downloaded_from require OS X, however.)

Your rules are defined in Ruby, so easy rules are easy and difficult rules are possible.


(Install, Source Code)

A Chrome extension to help you keep tabs on info you want to monitor. It’s great for cycling through tabs on an external display, like a TV.

TabCarousel is simple: open tabs you want to monitor throughout the day, then click the toolbar icon. To stop, click the icon again.

By default, TabCarousel will flip through your tabs every 15 s, reloading them every 5 min. It’s great on a unused display or TV. Put Chrome in full-screen mode (F11, or cmd-shift-f on the Mac) and let it go.

If you want to change how often TabCarousel flips through your tabs, right click on the toolbar icon and choose “Options”.

Example Uses

On a HDTV that has a computer attached, open the NewRelic overview (and Background Tasks, etc.) for each app you’d like to monitor. Set NewRelic to kiosk mode for each page, then hit the “Tab Carousel” toolbar button.

The TabCarousel wiki has more.