Migrated back to WordPress

I've been using Octopress for over year and I really enjoyed it. You have to love the command line, understand Git, and know your stuff when something breaks. Oh, and it will break. A lot. But when you fix it, you get that satisfaction that you're a geek and you got it. I was kind of done with the shit breaking. (That and I got a job with Automattic) So now I'm back to WordPress. Luckily I had kept my WordPress site around that I migrated from to Octopress. I found that Octopress, because it was a simple type and post software, made me blog a lot less. A LOT less. That benefited me because I was able to copy and paste the 12 or so blogs I made into WordPress. I made sure the titles were the same, the date published matched, and I copied the tags. I had to install a GitHub Gist plugin because I used a lot of Gists in my posts now. I also had to manually upload images from my posts into the blog. ...

July 26, 2013 · 2 min · Aaron

Diversity in Developers

I had an excellent weekend at CocoaConf Chicago meeting interesting people and reconnecting with many as well. One of the subjects that was brought up in Brittany Tarvin's Friday Keynote talk was that of women in the technology field. I had the pleasure of meeting Brittany at SecondConf and it was great to see her challenge to encourage women (and girls) to be software engineers brought to CocoaConf. Her talk stirred a lot of discussion, especially in the reverse panel discussion Saturday. The overwhelmingly positive response to her message was inspiring. Nowhere before have I experienced such open-minded discussions and outright admittance that we can all do more for women and other minorities in the tech field. ...

March 10, 2013 · 3 min · Aaron

Scrolling to hidden table view cells

I'm currently using BSKeyboardControls to add that fancy Next/Previous/Done buttons to the top of the keyboard on the iPad. I have noticed, however, that while scrolling through the fields in a UITableView, the cursor would sometimes disappear and the keyboard would be detached (typing does nothing). I threw some logging together and make a discovery - scrolling to a UITableViewCell far off the screen that is UIView.hidden == YES doesn't allow subviews to receive the becomeFirstResponder message. ...

March 6, 2013 · 1 min · Aaron

Adding the fancy search magnifying glass to your UITableView

So you're working on a search screen or popover with UITableViewController and you're wondering how to get that fancy search magnifying glass in your search results, right? In my example, I have my table view sourced by a simple array of data. This may not be the case for you, but you get the idea from the example. Simply add the constant UITableViewIndexSearch as the first section header title - UITableView will understand to replace the {search} text from that constant with the locale-specific image indicating search. ...

August 11, 2012 · 1 min · Aaron

Bringing in your own hardware to work

As a consultant, I have to move around to various companies as part of my job. Sometimes I am able to stay with the same client for months, sometimes weeks. The one thing that continues to be an issue wherever I go is the availability of a suitable development environment for me to start working on day one. I typically bring in my own laptop so that I can get started as quickly as possible. This is only if the client allows it. ...

March 22, 2012 · 2 min · Aaron

Spring 3.1's PropertyPlaceholderConfigurer

Spring 3.1 brought a lot of good changes to the framework but with any version change, behaviors can be different. Spring does a good job documenting most of this API changes but there is one that I apparently missed or underestimated the impact of. Property files can be "imported" into the Spring context so that the values can be inserted into configuration using ${ } with the property value inside of the brackets. This is a handy feature that I use frequently in my Spring projects. The PropertyPlaceholderConfigurer has been replaced by PropertySourcesPlaceholderConfigurer in Spring 3.1. One minor difference between them is the latter has the ability to read @Value annotations for direct injection of property values. The other side effect is that the 3.1 class puts system properties ahead of your property file's values. 3.0, on the other hand, let your property file win if a name matched one as a system parameter. ...

February 17, 2012 · 2 min · Aaron

Maven & Eclipse target folder + validation stabbyness

Does using Maven with Eclipse make you stabby when you spend an hour waiting for Eclipse to finish validating files? You may not realize it, but Eclipse is indexing/validating files inside of your project's target folders! Yes kids, this is annoying and time consuming. The target folders also end up showing results in the "Open Type" and "Open Resource" windows. I'm sure we've all experienced the duplicate results when searching for a class or resource. ...

February 11, 2012 · 2 min · Aaron

Resizing a UITextView automatically with the keyboard

One of the biggest UI no-nos you can perform in iOS is creating a UITextView that assumes the size of the keyboard on the screen before the keyboard even shows up. You should be dynamically resizing your text views by looking at the dimensions of the keyboard, and not assuming you know the dimensions. Why? Try enabling a Japanese keyboard and see how your app performs. You'll notice that the keyboard is taller than the English keyboard - it's to give room to a typeahead area for creating the glyphs. Now how does your app behave? ...

February 1, 2012 · 3 min · Aaron

Fixing Layer Transparency Issues in Xcode

If you're looking to get higher frame rates and general application performance tweaks from your iOS application, you may need to take a look at transparent settings on your subviews. Any time you set a subview to be transparent, the OS has to blend multiple layers together to figure out the end flattened result. This blending takes CPU cycles and can impact performance of your app - especially in something as simple as a UITableViewCell. ...

January 30, 2012 · 2 min · Aaron

Google Data API

I've started to mess around with the Google Data APIs recently to help support my Migraine Diary iOS application. Specifically I want users to be able to export their journal entries into a Google Spreadsheet rather than just a plain CSV file. I am using the Objective-C client that Google built and have come across a number of issues or gotchas. The Objective-C client is badly documented - a number of Google Data API calls have zero examples and translating REST calls into Objective-C classes is a challenge.OpenAuth 2 is surprisingly easy to useGoogle provides very little troubleshooting assistance even with their clientObjective-C is very new compared to the Python, .NET and Java clientsThat being said, I am making progress. I'll most likely share my finalized code to create a simple spreadsheet here so others have a jumping off point.

January 9, 2012 · 1 min · Aaron