Categories
Apple iOS Mac

Post Mac Apple

Recently Vivek Wadhwa of The Washington Post wrote:

Apple should release a version of iOS for non-Apple devices. This suggestion will seem like heresy to the brand’s loyalists, but it may be necessary for the success of the company.

Imagine those Samsung, LG, and Xiaomi smartphones having an original Apple operating system on them rather than the imitations they are presently running. Offered the choice, users would upgrade in droves. And those users would download new applications and sign up for Apple’s subscription services, giving the company a cut of everything they purchased, as well as valuable data and marketing opportunities. Google’s Android business would finally have a formidable rival.

First off, I don’t think Apple is in bad shape because they own less of the mobile market than Android. In fact, they make more money than all Android devices combined. So the thought of being a formidable rival is kind of moot, but that’s not what I wanted to write about, just an observation.

I think macOS would be a much better OS to OEM. Why? Well, Apple is paying so much attention to iOS based devices, the iPhone in particular, they’ve ignored their laptop and desktop computers for a very long time. In fact most of their computers are rated Don’t Buy by Mac Rumors.

Mac Rumors
Mac Rumors

Of course they’ve tried this before. Before Steve Jobs returned in 1997 Apple had OEM’d Mac OS to a few partners. Those partners were doing fine at the expense of Apple. When Jobs returned it was one of the first things he killed so Apple could focus on their core business, the Mac. Fast forward 20 years and Apple is as unfocused as ever. They’re building all kinds of stuff looking for the next iPhone. Here’s a hint Wall Street, I don’t think you’ll get another iPhone-like success for many, many, years.

Anywho, back to macOS on other hardware. Since Apple hasn’t shipped new Mac hardware for professionals in a long time professionals have either created their own solutions or switched to Windows or Linux. Yes, people are switching to Windows because their Macs are not up to the task. Those of us that live on the platform feel strongly about it. I love using the Mac and macOS to do my work but most people just see it as a hammer. They don’t have an attachment to the OS or the hardware. If you can get a PC with Windows that blows the doors off a Mac Pro and your production software runs fine on Windows, why not switch?

What if there were another solution to the problem? What if Apple selected a single OEM and allowed them to create high end hardware that runs macOS? That’s what I’d prefer to OEM’ing iOS to other mobile phone makers. The professional market may appreciate it too.

I know the iPhone and iOS are killing it revenue wise. That idea seems to be the driving force behind Mr. Wadhwa’s piece, but it would be really nice to have alternative hardware designs that don’t focus purely on thinness and lightness. I still love my SUPER FAT 15in 2011 MacBook Pro. It’s perfectly suitable for people creating iOS Apps or small Mac Apps. Folks editing Audio and Video or making movie magic the likes of Pixar and ILM need powerful computers. I’m sure they’d appreciate faster Macs every year or an OEM that could deliver faster, specialized, expandable, repairable, Mac alternatives running macOS.

Categories
Life Mac Uncategorized

Mac Apps I Use

If I had to choose one device to keep it would have to be my Mac. Not because I use it more than my trusty iPhone. I would pick it because it is how I make my living.

A wonderful bouquet of flowers.To that end we all have our very personal daily workflows. Some are way more complicated than others. Mine is fairly simple. 

There was a time in my life when I had to customize everything I possibly could on my desktop rig. These days I don’t bother.

Here is a list of software I use day to day.

Safari

Safari is a great browser that supports OS X extensions and browser plugins which gives me all the power I need to connect the web to my favorite desktop apps. I do not sync my opened sites between desktop and mobile.

Slack

Who doesn’t use Slack these days? We use it at work for most of our communication needs. Nuff said, it’s awesome. 

Evernote

I store quite a bit of information with Evernote. When I run across and interesting development article I clip the Simplified Article to Evernote as a reference. It is a great way to organize reference material. I do it through a combination of Notebooks and Tags. It’s a fantastic service and I love their native Mac and iOS Apps.

Wunderlist

I use Wunderlist to organize my personal project thoughts, so it mostly used on my home Mac and on my iPhone, but it’s a great app and service.

Reeder

I know RSS is dead, right? Not really. If you’re in the market for a beautiful, solid, easy to use RSS reader for the Mac or iOS, Reeder is a good choice.

Alfred

I only use Alfred for one thing, lunching apps. I keep my dock clean and find it easier to launch apps by smacking a shortcut and typing. I know I could do many more awesome things with it, but I don’t.

Dropbox

When I need access to a document or picture from many different places I use Dropbox.

Terminal

I use the built in terminal app. It’s used for git mostly.

SourceTree

I like using a nice application for git and SourceTree covers the bases for me. I split time between this app and the terminal. 

BBEdit

On occasion you have to edit something other than a file for the app you’re working on. BBEdit is more than capable. 

Xcode

This seems an obvious entry given the work I do. I develop iOS Apps. This is the best tool for the job.

I think that’s it, I’m composing this on my iPhone using the WordPress for iOS App, so I’m doing this from memory.

That brings me to this list.

Stuff I no longer use on my Mac

MarsEdit

At one point I used MarsEdit for all my blogging needs. The app is fine but I use iOS more and more for blogging. Like I said above, I’m using my iPhone to compose this post. Most of the time I use my iPad Mini on the weekends to catchup on all the stuff I pushed to Pocket. That usually results in a blog post right from the Mini. 

Fine software, great developer, no iOS App. For iOS I use the WordPress for iOS App.

Twitterrific

Unfortunately Twitter’s developer hostile token limits have all but killed off development of my favorite Twitter client. I have resorted to using the web site for my desktop browsing. If Twitterrific saw a renaissance on the Mac I would switch back in a heartbeat.  Thankfully Twitterrific for iOS is going strong. Here’s hoping Jack opens up Twitter to developers. 

Categories
Development iOS Mac

Swift, REST, and JSON

I’m fond of a site called The Pastry Box Project. It’s a collection of thoughts and stories by a bunch of great writers, but that’s not why I mention it. I mention it because I noticed they had a nice, simple, REST API. Nifty!

PastryKit

Since I really enjoy writing code that communicates with services, and I needed a little project to learn some Swift, I thought I’d write a couple classes, I call PastryKit, that implement the Pastry Box REST API in Swift.

PastryKit is just two classes:

  1. PastryKit – Allows you to communicate with the Pastry Box REST API.
  2. Pastry – This is an entry returned by a call to PastryKit.

You can read more about The Pastry Box API on their site.

private func showPastryBaker() {
     var pastryKit = PastryKit();
     pastryKit.thoughtsByBaker("mike-monteiro", completionHandler:{(pasteries, error) in
          if (nil != error) { println(error) }
          if (nil != pasteries) { println(pasteries) }
     });
}

The Heavy Lifting

Most of the “heavy lifting” is performed in one place in PastryKit.swift in the private getWithIngredient function. It makes use of NSURLSession, which was introduced in iOS 7. Go find that function if you’d like to see how to do an HTTP GET in Swift. This is a simple case, it doesn’t require any authentication, or messing around with headers, and it only does GET’s. Doing a POST, PATCH or DELETE would, of course, require some changes, but you get the idea.

    /// getWithIngredient - worker method that does all gets
    private func getWithIngredient(ingredient: String?, completionHandler: (([Pastry]!, NSError!) -> Void)?) {
        let url = ((ingredient) != nil) ? NSURL(string: PastryBoxUrl + ingredient!) : NSURL(string: PastryBoxUrl)
        let request = NSURLRequest(URL: url!)
        let configuration = NSURLSessionConfiguration.defaultSessionConfiguration()
        let session = NSURLSession(configuration: configuration, delegate: self, delegateQueue: nil)
        let task : NSURLSessionDataTask = session.dataTaskWithRequest(request, completionHandler:{(data, response, error) in
            if (error == nil) {
                var conversionError: NSError?
                var ingredientsArray: NSArray = NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.AllowFragments, error:&conversionError) as NSArray
                if (conversionError == nil) {
                    var pasteries = Pastry.pastryArrayFromNSArray(ingredientsArray)
                    if (completionHandler != nil) {
                        completionHandler!(pasteries, nil)
                    }
                }
                else {
                    println(conversionError)
                    if (completionHandler != nil) {
                        completionHandler!(nil, conversionError)
                    }
                }
            }
            else {
                println(error)
                if (completionHandler != nil) {
                    completionHandler!(nil, error)
                }
            }
        });
        
        task.resume()
    }

Go Get It!

The code is available on GitHub if you have need to get stuff from The Pastry Box Project in your Swift or Objective-C app.

Enjoy!

Categories
#twitter Development Indie iOS Mac

What happened to Twitterrific 5 for Mac?

Ollie! The Twitterrific Bird9TO5Mac: “By limiting the ability of third-party developers to create unique and useful clients for its service, Twitter is ensuring that new users will be forced to use one of its first-party solutions, whether that’s Twitter for Mac, TweetDeck, or the web. Unfortunately, none of these products are really worth using, and Twitter is shooting itself in the foot by attempting to drive users to these subpar experiences.”

There’s the problem in a nutshell. Twitter has been less than friendly to developers who can help them make a better experience for their users. Let’s say Twitter changed their rules to allow folks to develop clients that they don’t consider their bread and butter. What if you could create a client, free of limits, that wasn’t for web or mobile? This would open the door to a great update from The Iconfactory and allow other indie developers to create great native experiences for Windows or Linux. Seems like good business to me.

Categories
#twitter Indie Mac

On Tweetbot for Mac

I'm a Robot Bird, not a chicken.The Next Web: He says that Tapbots will continue to support the app, even after it cannot sell any more copies to new users, but that has forced them to charge more for the app, which runs $19.99 on the Mac App Store. “We know some will not be happy about Tweetbot for Mac’s pricing,” says Haddad, “but the bottom line is Twitter needs to provide us with more tokens for us to be able to sell at a lower the price.”

Given that statement I wonder what the pricing will be for Appbot for Mac, if they decide to create it? It’s obvious they’re limited to 100,000 tokens for Tweetbot, but App.Net has no such restriction and is being built as a communication service. Since Twitter changed direction to become an ad/sales/marketing tool App.Net has emerged as our next best bet and has been gaining traction ever since.

With Twitter recently breaking Twitter for Mac, and no apparent fix in the works, Tweetbot for Mac adds a fresh face to client app choices available to Mac owners.

Categories
Business iOS Mac Mobile

Are Third Party Twitter Clients Doomed?

Things aren’t looking good for Twitter clients, I know, I’m reading a lot into it, but it sure looks bad.

Last night Gedeon Maheux of Iconfactory posted this on Twitter.

This morning he followed up with this choice tweet.

It really reads like Twitter is shutting the door on third party clients that display a stream.

This bothers me for a lot of reasons, but mostly because I’m a fan of Iconfactory’s work and they’ve done nothing but contribute great work to the Mac and iOS community for years.

I hope I’m wrong, but I don’t think I am.

Long live Ollie.

Categories
Development iOS Mac

Fresh Code: RFRddMe

Earlier this week Dave Winer pointed out some neat stuff Readability was up to. Part of the piece pointed out a new URL shortener. I marked it and came back to it today. Since I love writing code to talk to RESTful web services, why not write another one?

The Red Readability CouchThis afternoon I started on RFRddMe, an Objective-C library for the Readability Shortener Service. Late this afternoon I completed the library, and I checked it into my GitHub Repository tonight. Figuring out git submodules took a bit of time, but it works as advertised.

If you just happen to be looking for Objective-C code to shorten a URL, and add an article to Readability, look no further.

Get the code for RFRddMe on GitHub.

Please, drop me a line, rob.fahrni@gmail.com, if you use the code.

Enjoy.

Categories
Development Mac

Don’t Panic!

CodaPanic: “Coda 2 has now been in development for about a year and a half. All of us have been working incredibly hard on this forthcoming release. We’re finishing up new features, boosting up the editor, dramatically cleaning up the UI, and improving what Coda already does well today, all while, hopefully, keeping things extremely light and lean. By the time you see it, Coda might look a little different than you’re used to, but we think it’s for good reason. We’ll see how it shakes out, but we’re very excited.”

I’m sure the Coda update will be a work of art, Panic doesn’t know how to create bad software.

Categories
Business Development iOS Mac

Craig Hockenberry on Chameleon

AHHHHHH!Craig Hockenberry: “In summary, we’re very disappointed with how things have turned out. Not because of the funding, but because there’s some potential here that will never be realized. We’ll continue to add things we need for our own products, but don’t expect to see any documentation or bug fixes that don’t affect our own code. Any changes or fixes will get pushed out to the community on a schedule that suits us best: probably at the end of minor release cycles (every few months.)”

If you’re an iOS developer you probably know who Craig Hockenberry is, he’s the guy that created Twitterrific. Anywho, he’s also a Principal at Iconfactory. I guess my point is the guy has been developing software for a very long time and is well respected. I do find it odd that he’s a bit disappointed in the response to Chameleon. I’m not sure what was expected? Open Source is by nature fickle. What I see is this; people will download it, use it, gripe about bugs, but do nothing beyond that. Sure, there will be diehards that get behind it and contribute, but mostly people will just pull the source down, build, and use it. That’s the way it goes in the Open Source community. I have a couple of Open Source things, granted they’re nothing special, and I doubt anyone has used them, but I never expected anyone to contribute to them, or give me money to support them. I don’t want to sound like an ungrateful person, but I don’t think you should expect to receive any money for an Open Source project. It’s icing on the cake if you could raise money to support it, but I wouldn’t expect it.

Anyway, if you’re an iOS or Mac developer you should take a look at Chameleon, and support it in any way you can, the fine folks at the Iconfactory put a lot of time and money into it.

You can donate to the effort right from the homepage.

Categories
Indie iOS Mac

Free App Idea

Justin Williams: “A notes app with native web, Mac, and iOS clients which supports rich (or Markdown) formatting on all three, and can do inter-note linking. There are a ton of apps in this space, but you can only get at most 2 of those 3 features in any one app.”

This is from Justin’s interview of Steve Frank of Panic for his new series “Show Me Your Pixels”

Get started, now.