I Am Finley


Virtual Hosts and Mobile Development


Virtual hosts are such a great tool for web developers to test locally without losing their mind, but web development in 2015 involves testing on far more than a single machine. If your mobile iOS devices are on the same network, here is a simple trick.

  1. Go to System Preferences on your Mac.
  2. Go to the Network panel.
  3. You should see your IP address in here. Mine right now is
  4. Go to Settings on your iOS device.
  5. Go to the Wi-Fi section.
  6. Tap the info icon on your current Wi-Fi network.
  7. Scroll down to the HTTP Proxy and tap Manual.
  8. Enter the IP address you found above into the Server field.
  9. Enter 80 into the Port field.
  10. Go to your browser of choice on the iOS device and go to your virtual host.

Simple enough for quickly testing your websites.


Preprocessor Macros and User-Defined Settings in Xcode


As I have built more iOS apps over the last couple of years one of the biggest struggles I have had is the switch between development and release server APIs. More than a few times I have released an app pointing at the dev API. Not only is this an embarrassment, but it creates a logical nightmare in trying to redirect traffic from the dev environment to the live. Needless to say, there has to be a better way.

Over the weekend with a bit of research— which has me kicking myself for not doing it sooner— I found the best solution in Preprocessor Macros and User-Defined Settings. They are easy to set up and easy to use.

  1. Go to your Build Settings
  2. Go to the Editor menu, Add Build Setting, Add User-Defined Setting
  3. Give your setting a name, mine is called APIURL
  4. These settings have a Debug and Release value: set both
  5. Search in Build Settings for Preprocessor Macros
  6. Add APIURL=\@\"${APIURL}\" to both Debug and Release

You will now have a variable available anywhere in your code called APIURL. When compiling your app in Debug mode, you get the Debug value. When compiling your app for Release, you get the Release value. No more mistakes.


An AirPlay Record Player


For Christmas my wife got me a record player. It was on my list. I had been wanting to get away from Spotify for a few months and after doing the math, found it to be a better financial choice to leave Spotify and start buying my music again. With an iTunes library of nearly 2000 songs, I didn’t exactly have to start fresh.

As a Mac guy, I have my Apple TV, iPhones, iPads, and Mac all speaking the same language of AirPlay. I can quickly toss a video up to my television or stream music from my phone. Going analog is delightful, I’ll be honest. Many nights this year we have played Settlers of Catan while having some vinyl spinning. The speakers on my player are good. Not great, but good. Hooked to the television is a set of JBL speakers that I’ve had for some time. They’re better than nothing. So last night I decided to look into a way to make my record player wireless.

Following a lead from GeekDad, I took an audio cable (male-to-male) and plugged my record player into my Mac Mini. Using free software from Rogue Amoeba called LineIn, I can take that line-in audio coming from the player and send it to the Mini’s speakers or to any audio output, including AirPlay devices.

A simple setup that cost me nothing since I had an audio cable sitting around. Now I can play my vinyl through my JBL speakers wirelessly.