I’m proud to announce the release of my second Mac app Fast Start. Fast Start started as a CLI tool that I was using to create new files since Sublime Text did not offer easy template support at that time. While the CLI was useful it would constantly break and it was a massive pain to try and add/edit new templates. To fix this I decided to build a native Mac app that would allow me to easily create new templates and make editing these templates painless.
I started this new project in August planning for it to be a quick weekend project that would be a nice break from what I was working on at the time. Quickly this project started to take more and more of my time since I wanted to make this tool as perfect as I could because I would be using it daily. While I was working on the app I kept thinking of ways to make creating new files easier, which lead me to creating a Notification Center Widget. Since Yosemite allowed for custom widgets in Notification Center I thought that if I could put Fast Start there it would always be accessible without requiring to launch the app. Once I got the widget working it quickly became obvious that a Notification Center Widget would be a perfect place to store my code snippets, so I added code snippets to the app/widget and began the long road of testing. I kept using the app everyday to ensure that the experience was easy and unobtrusive to my daily routine and finally finished the 1.0 in December.
While this project took a lot of time to build and get right, the entire time I was motivated by wanting to improve the app and make it exactly what I wanted. This was the first app I wrote that I used daily during the development which helped me find bugs and think of new ways to improve the overall experience. Fast Start was one of my favorite projects I’ve worked on in a long time and I plan on building new features for it in the near future. You can download Fast Start on the Mac App Store.
Apple is doomed just like it was doomed in 2010 when they released a tablet that was just a big iPod Touch.
Apple is doomed just like it was doomed in 2007 when they released a smartphone without a physical keyboard and no stylus.
Apple is doomed just like it was doomed in 2001 when they released a MP3 player that only worked with FireWire.
Apple is doomed just like it was doomed in 1984 when they released a computer to “regular” people.
Apple is always doomed and no matter what they do in the future will continue to be labeled as doomed by the press.
Marco Arment recently published a post that gained a lot of media attention about how “Apple has lost the functional high ground”. While I won’t link to the post here since Marco has had a change of heart about the post and the kind of negative press it created, I think it is important to talk about the doomed Apple the press likes to highlight and focus on.
In Marco’s post he references Geoff Wozniak’s post about how he switched from OS X to Desktop Linux due to the issues that arose in Yosemite and previous releases of OS X. While Wozniak’s original article has been taken down, you can find the article through the Wayback Machine easily, it mainly focused on the terrible release of Yosemite that left him with no choice but to switch to Desktop Linux for his everyday operating system. While I personally have had some issues with Yosemite, even recently I was unable to easily setup a brand new computer because the Setup Assistant stalled after opting out of iCloud Drive, there doesn’t seem to be any major system breaking issues. Every time Apple releases a new operating system you should expect WiFi issues, permissions issues, and email issues. And about a month after the release expect major updates that try to fix these issues because that is how software works. I think it is important to remember that recent issues always seem larger because of how recent they are. Daniel Jalkut’s post perfectly sums up the history of broken OS X releases and tries to show that Apple has always had problems. Just because Apple has had issues with OS X releases it doesn’t mean they are loosing their focus or are doomed.
In recent discussions about Apple many people are starting to say that they are no longer an underdog and this means they need to be careful in their future product and service releases. The idea that Apple is no longer the underdog is completely wrong and Marco’s post and accompanying press shit storm proves it. While Marco is a somewhat known Apple writer and developer, his article got a lot of press because it highlighted issues with Apple products and ended with the idea that Apple is starting to break. While the true meaning of the article was that Apple has made some bad calls over the past 6 months and need to improve so that there isn’t “long-term reputation damage”, the press still grabbed at the chance to highlight a doomed Apple. Whenever the press has a chance to highlight a weak or doomed Apple they jump for it, which is a prime example of being an underdog. If Apple was no longer the underdog the press would not focus so much on their smallest of flaws whenever possible.
Apple isn’t perfect and they have a lot of flaws when it comes to many aspects of their products and services. None of these flaws however are causing the company to fall apart and it is important to make note of that. Since the general public mainly understands Apple through how the press portrays them, due to how closed Apple is as a company, it is important to call bullshit when the press tries to label Apple as a doomed company. This is why writers like John Gruber or Jim Dalrymple are still incredibly important to the Apple community since they highlight the bullshit the press sometimes like to say. While I don’t fully agree with Marco’s post I do think Apple needs to maybe look again at their public facing decisions and try to be more open in the future to help mitigate the bad press.
Bringing Coords back to iOS from the Mac feels great!
After months of learning as much as I could find about Mac development, I have finally released my first Mac app, Coords. I had this idea over four years ago when one of the iOS apps I was working on required me to work a lot with map related data. While there were many online tools for converting longitude and longitude to decimal degrees and allowed me to easily find locations, I never felt that these tools were complete enough for everyday use. Initially I wrote an iPad app that allowed me to easily add pins to a map, view their coordinates, and easily save pins for later viewing. While the app worked for me, it was nowhere near a shipping app and eventually I shelved the app. As with most of my shelved ideas, I always kept it in the back of my mind in hope to return to it in the future.
It wasn’t until June of this year that I started to rewrite the app with the goal of shipping it by the end of the year. The biggest change I wanted to make was changing the app from an iOS app to a Mac app. Coords was the perfect opportunity to learn Mac development since I already knew how the app should work, due to my four year old prototype, and I had an understanding of all the technologies that the app would require. Over the next few months I learned some basic Mac development, got the app working, and then spent the rest of the time rewriting and improving the codebase as I learned new things about Mac development.
I’m extremely happy with the app’s initial release and everything I’ve learned along the way. I’m already working on the next version, and can’t wait to create more Mac apps in the future. I also plan on collecting all the Mac development resources I used to create this app in a future post since specific Mac development, especially AppKit, are hard to find. You can download Coords here.
Just found a great post about totaling lines of code in Xcode Projects. You can easily modify the command to support .swift files to give you an idea of how much smaller your Swift project is as compared to Objective-C.
find . -name "*.swift" -print0 | xargs -0 wc -l // Must be used when you are in your project's source directory
With all the Marvel movie news this week, if you want to read the comics that inspired the movies check out Marvel Unlimited. They offer a ton of digital comics from their back catalog as well as many comics that cover the new movie storylines such as Age of Ultron and Civil War.
After working with Swift for an entire day I still miss Objective-C, but I’m looking forward to the future with Swift.
Probably late to the party, but just found out that MKMapView supports a tint color!
The new iPhone 6 Touch ID is so much more accurate than the iPhone 5s. Really seems seamless now.
I recently switched my personal site from being hosted at Squarespace to a Jekyll/GitHub Pages hosting. I’ve been thinking about doing this for a while due to a few things that nagged me about Squarespace’s setup and editing functionality. Even though I’m no longer using Squarespace I would definitely recommend their service to anyone who wants an easy site with little to no maintenance. While the ease and simplicity of Squarespace is extremely helpful to some, for the kinds of things I want to do with my site in the future Squarespace wasn’t going to cut it.
Another big reason for the change was due to some recent posts written by Brent Simmons and Manton Reece about controlling your content and being able to move it around at will. This is not really possible with a service like Squarespace where they don’t allow you to easily export all of your content. Lastly, even though Squarespace is doing very well now, and will probably continue to do well, what will happen when they eventually close down or are bought out by a company that could change things for the worse?
Going into this change I knew there were a few things I wanted my new site to do better than Squarespace:
- Easy setup so I could focus on the content.
- Full Markdown support, while Squarespace has Markdown support it doesn’t work well.
- The ability to run the site locally to test changes and preview posts.
- The option to move the site from host to host with little to no changes to my content.
After researching possible site generators I settled on Jekyll. I’ve always been a fan of Jekyll and have wanted to use it for a while but never found a project to use it on. A big reason I chose Jekyll was the various options I had for hosting the site. You can do everything from copying the generated HTML folder to a server, to the more advanced automatic deployment with GitHub Hooks. For hosting the site I chose GitHub Pages since it is very simple to setup and it allows me to become more familiar with Jekyll without having to worry about the server side of things. And if GitHub was to discontinue their Pages service in the future, I would have plenty of options in hosting and it will be an easy move.
This change has really made me want to work more on my site and I can’t wait to learn more about everything Jekyll can do. I plan on writing about my Jekyll setup and some of the things I learned from switching my site in the future.
subscribe via RSS