Skip to content

How I ended up building my first Windows 8 app, and sparking a minor controversy

by Brandon on October 31st, 2012

Throughout the development of Windows 8, I occasionally dabbled in the new WinRT app platform, at various stages building things like a simple “twitter fall” app for watching trending or chosen topics stream by. In most cases all I did was dabble over vacations to see how the platform was progressing. However, back in February or thereabouts, I was sitting at Café Fiore on Queen Anne hill and decided to see how I might build something using the location and background task APIs that would make my Windows 8 laptop feel alive and aware of where I was. As a longtime on-again-off-again foursquare user, building something against that service seemed like a great place to start. So I fired up VS 2012 (a preview version at the time) and created a new WinJS project.

On a whim I named the project “4th & Square” – the name came about at least partly because I’d lived at 4th & Mercer, but looking back it’s also likely that I’d internalized the name of the excellent Windows Phone app, “4th & Mayor.” At the time, I gave the name little thought, as I was just dabbling and not planning to write anything that would ever be seen by anyone other than me and maybe some friends. I put a weekend or two of work into it, originally creating something that did little more than pop toast notifications as you moved around to new locations. Then I got too busy with other things like finishing Windows 8 itself, and the proto-app got stashed aside.

Fast-forward to Win8 RTM, and suddenly it seemed like all of my friends were building apps. I received some encouragement to break out my foursquare project and turn it into something real. Over a weekend I ported my existing work into the final version of the WinJS template and library, and then over a vacation to North Carolina in August, I spent a few afternoons at Starbucks completing most of the feature work for 1.0 version, learning quite a bit about JavaScript and the WinJS library along the way. A couple more weekends of polish and I felt like I had something worth sharing. I also spent some time one afternoon ensuring there wasn’t already an app with this name, and that it fit with foursquare’s naming and branding guidance. As far as I could tell, it was unique and within their rules. So when the Store opened in September, I immediately wanted to submit what I had.

In order to do so, I had to throw a privacy policy up on the web. I based this on foursquare’s guidance and included some boilerplate bits copy-and-pasted from their developer page. In my haste and fear of missing something, I Bing’d “foursquare app privacy policy” and used some of the results as a reference to make sure I had my bases covered. I also used MSDN’s documentation for location privacy (including both Win8 and Phone), and assembled the pieces I needed in a OneNote notebook I use for tracking everything related to my app. I then pasted that into WordPress and threw it up on this site as a temporary solution until I found time to build a proper site dedicated to the app. I also bought the domain name 4thAndSquare.com and pointed it at the appropriate sub-site here. All the boxes checked, I submitted the app. And then the fun began!

The app got through certification on its first attempt, and rather quickly. Within a day I started getting bug reports and feature requests from friends and others who had early access to the Windows Store. I put a couple more weekends into fixing things up, and released a couple of updates to the app to address all the reported issues.

Now, if you follow me on twitter you may know the next part of the story. At some point a few weeks after publishing the app, I received an e-mail from Jeff Wilcox, author of 4th & Mayor. He expressed some concerns about the similarity of my app’s name to his, and perhaps more importantly, a couple of paragraphs in my privacy policy which appeared to have been lifted from his. At first I didn’t believe this (I figured maybe he was confused because we both had the boilerplate stuff provided by foursquare). However, taking a look at both, I saw that the last couple paragraphs (out of many) were indeed virtually identical. In my haste to assemble the privacy policy I had apparently copied from the wrong window (one of the app policies I was using as a reference, namely his) into WordPress instead of the OneNote web app where I’d drafted my policy. I don’t remember doing this, but it is my best guess about how I ended up with something copy-and-pasted from his policy into mine. I absolutely did not intentionally do a single copy-and-paste from anywhere except the blurbs required by the docs on dev.foursquare.com. Of course, for that you have nothing but my word, and if you don’t know me I fully understand why that might not be enough.

Feeling pretty awful about this, I replied to Jeff telling him I had fixed the privacy policy issue and suggested we meet up. Several days later we did just that (ironically, in a coffee shop at 4th & Wall). Jeff’s a friendly and likable guy, and we chatted for a while about the background of how his app came to be and some challenges he’s faced along the way. I apologized to Jeff for the privacy policy issue, which simply never should have happened. I was completely embarrassed and ashamed over it. I did my best to assure him that nothing about my app was based on his (he had looked at it and seemed to agree that other than being a foursquare client, the app’s look and feel was clearly nothing like his). Jeff informed me that he’d been working on a Windows 8 version of his app. I gave him a couple of tips like how I used Unicode emoticons as glyphs in my app to avoid loading or scaling images, and some tips for how to best make use of the background task infrastructure. Then to help avoid any potential confusion, and as a gesture of goodwill, I said I would absolutely make a change to my app’s name to further differentiate it from his. Jeff suggested “4th + Square” as a simple alternative. I told him I’d think on it and figure out what to call it.

A week or so later, after racking my brain more than you’d probably think necessary, I settled on “4th at Square.” One reason for this choice, versus something even more different, was that it let me continue to use the rest of my existing branding. Another was that it was sure to be a less jarring change for my existing customers. It took a couple more weeks to get the fully renamed package into the Store, but it appeared well before Windows 8’s general public availability date.

That controversy was easily the most stressful and regrettable part of building my first Windows 8 app. I am thankful to have moved past it though, and very happy that I can return any time or energy I direct at the app to improving it and implementing feedback I get from users around the world. I’m also looking forward to sharing some of the things I learned about WinJS development, as well as some handy utilities I wrote along the way. It’s my hope that they’ll prove useful to others building WinRT apps using JavaScript. Look for those posts to arrive soon!

Oh, and this entire post was written on my personal Surface and Touch Cover 🙂

From → Other

3 Comments
  1. Hi! I just wanted to ask if you ever have any trouble with
    hackers? My last blog (wordpress) was hacked and I
    ended up losing several weeks of hard work due to no back up.
    Do you have any solutions to prevent hackers?

  2. My partner and I stumbled over here coming from a different website and thought I should check things out.

    I like what I see so now i am following you. Look
    forward to looking over your web page yet again.

  3. I think this is one of the most significant info
    for me. And i’m glad reading your article. But should remark on some general things, The website style is perfect, the articles is really excellent : D. Good job, cheers

Leave a Reply

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS