Categories
Apple

The App Store Reddit Client Takedown

MacStories: “What bothers me the most about this incident is how Apple implemented its policy change. There was no imminent threat or emergency that made Reddit clients any more a threat than they were twelve months prior, but nonetheless Apple summarily pulled them and offered to reconsider the apps if the developers resubmitted. The developers worked through the night, resubmitted their apps and many were back on the App Store by the next morning. As a result, the story barely got traction and, while Apple may have avoided an onslaught of bad press, the damage was done. Developers took note.”

This mess could have been completely avoided if Apple had picked up the phone and reached out to each developer affected. Why not call and say “Hey, this is Apple, we’d like you to turn the NSFW setting on by default and resubmit your app. You have x-days to make the change.”

How tough would that have been?

Categories
Apple Indie Podcast

Premium Apps

Do you listen to Under the Radar with David Smith and Marco Arment? If you’re an iOS or Mac Developer you should consider it, it’s good.

The latest episode — Improving the App Store, Part 1 — is going to be quite controversial. I wouldn’t be surprised if Part 2 includes a bit of laughter and talk about how much mail they received.

Duct Tape, fixer of all things!I’ll admit, at first I was a bit miffed by how they couched their apps as Premium, maybe it was a bit of sour grapes on my part, but the more I listened the more I realized they were right, they do make premium apps. Once I got past that idea I was able to focus on what they were after; a Premium App Store.

The big question is this: What the heck is a Premium App Store? Well, I have some ideas, and they won’t align with what a lot of people believe is premium, but you have to find a way to separate Premium Apps from everything else.

Here are my thoughts on how to create a Premium App Category. This category would be front and center in the iOS App and Mac App Stores.

I belive a Premium App would be defined by the following traits:

  • Paid up front
  • Price starting at $9.99 and up for iOS and $19.99 and up for the Mac
  • No Ads
  • No In-App Purchase for tokens or fake money. Think Games.
  • Not a “Marketing Style” applications. Think Starbucks
  • Embraces new OS features where applicable
  • Possesses a level of fit and finish worthy of an Apple product

Some of these ideas are very subjective, others are objective. The idea of a Marketing Style application may be difficult to define as well as the Fit and Finish requirement. That’s fine. The App Stores already have this level of subjectivity and maybe there’s room for a bit more for this level of application.

I believe this small set of requirement could separate a small swath of excellent Indie and BigCo Applications from the Application Salad that exists today. Developers like David and Marco walk a fine line. They make their living writing applications in an extremely overcrowded app market. Something like a Premium App Store could make a YUGE difference in their bottom lines. Then again, it may fall on its face.

I think we’re going to find out really soon what Apple thinks. A few months back app developers received a questionnaire. That questionnaire was, as I recall, very marketing centered. I would expect the App Store to change quite a bit under Phil Schiller and I think those changes will begin as a set of marketing programs aimed at helping developers improve their “image’ in the eyes of users. I’d expect Apple to reach out to developers they believe have a strong product and offer to help them market their applications. This could be the beginning of an effort to indirectly build a Premium App Store.

That’s just a few thoughts on the matter.

Categories
Apple Cloud

Apple’s Cloud Infrastructure

Mac360: “In recent years Apple has used Microsoft’s Azure cloud infrastructure and Amazons’s Web Services, as well as it’s own data centers, as a mashup melange which together makes up iCloud and other cloud services. That’s right. Apple’s iCloud and cloud services come from Microsoft and Amazon. And soon Google’s Cloud.”

I find this fascinating. You’d think Apple would have their own services, hosted on their own hardware, in their own facilities. Read the article and, like me, you’ll discover they just didn’t have the bandwidth to standup a facility the size of Azure or AWS or Google just to serve their customers. Wow, that is amazing growth.

I would really love to see a report outlining all the technologies Apple uses to serve iCloud customers. Everything from service providers to hardware to software stacks and how massive each of those really is. It has to be mind boggling. Makes me wonder if any one person at Apple knows the answer for all the services, top to bottom?

Categories
Apple Government Life

Just say No to Big Brother

Apple: “The FBI may use different words to describe this tool, but make no mistake: Building a version of iOS that bypasses security in this way would undeniably create a backdoor. And while the government may argue that its use would be limited to this case, there is no way to guarantee such control.”

I hope Google, Microsoft, and Facebook join in this effort to keep our data safe from the US Government. It’s none of their business what beer I drink or to see the conversations I’ve had with my wife, daughters, family, and friends.

While the FBI may have the proper motivation, hackers and thieves do not. You might as well publish your Social Security number and all of your financial data for the world to see.

Bravo Apple.

Categories
Apple iPad

Hard Times for Mini?

Above Avalon: “Apple is still selling too many iPad minis for the product to be mothballed. However, the more likely path will be a slow yet steady slide into irrelevancy. The product will see more sporadic refreshes, which has already happened with the iPad line, while the value proposition continues to become less compelling.”

If true this is a real bummer. I know Apple can’t win with every product, and they’ve had their share of failures, but the iPad Mini is my favorite iPad. I still use a first generation iPad Mini and love it, maybe that makes me part of the problem. I haven’t gone out and bought a nice shiny new iPad Mini 4?

I would imagine a lot of folks have opted for a Plus sized iPhone and skipped purchasing a Mini. I’ve been torn recently between purchasing an iPhone 6s Plus and the rumored iPhone 5se. I still like the smaller phone but the large phone seems reasonable and could definitely fill the role of the two devices I use today.

It will be really interesting to see how Apple shifts their product line in the coming years. The iPhone remains king of the hill but the entire hardware lineup seems to be doing quite well.

Categories
Apple

John Saddington on the MacBook

John Saddington: “I gave it a serious run through a typical work week. And then, I gave it one more week and it just didn’t perform like I wanted it to.”

RibbitThis shouldn’t surprise anyone doing development work on a Mac. The MacBook wasn’t built for developers, that’s why we have the MacBook Pro lineup and the Mac Pro for the super power crazed. I use a 15in MacBook Pro and love the performance. It’s extremely portable and more than powerful for all the development tasks I perform.

John points out some good and bad points of the MacBook so make sure you read the entire post. One other point that didn’t surprise me was the battery not living up to the specified hours of use. Once again, John is a Mac App Developer, he’s using tools that require a lot of power. Run Xcode and check your power usage. It sucks battery, and why shouldn’t it? I want it to use as much of the computer as it can during compilation or debugging. 

Anywho, I’m rambling. I’m sure the MacBook would be an excellent computer for most people and would most likely live up to its advertised battery specification.

Bottom line: not good for development, likely good for most uses.

Categories
Apple

Core Intuition(@coreint) 209: We Need A Grand Gesture

I’ve been listening to Core Intuition with Daniel and Manton for a very long time. Being new to the Apple and iOS ecosystem it’s nice to hear from guys that have been around for a while. They have some pretty unique insights and experience to share with those of us new to community.

I feel like it’s time for me to give back a little. In Core Intuition 209, the talk a bit about Swift. With the advent of Swift, and Apple’s deep commitment to it, it’s tough as an old-time Objective-C developer to see and hear all the attention being given to the new baby. I’ve been in your shoes.

Back in the early 2000’s as Microsoft was making a big push with .Net and C# I was still hacking away on C++ applications written straight against the Windows API. Early on I had my doubts about .Net and C# becoming the development tool of the future on the Windows platform. Fast forward to 2015 and it is the dominant development tool. It just took a bit of time for people to become comfortable with the idea and, more importantly, it took time to people to trust Microsoft was all in with .Net.

I think something Apple has done a really good job of is convincing the development community they’re committed to Swift. It’s the only development tool at Apple that has really reached out to the community. They have a weblog and just this week released Swift to the open source community. Apple is committed.

Does it mean you should run out and rewrite everything in Swift? Probably not, but that is a choice you will have to make on your own. Apple has a huge investment in Objective-C and Cocoa and even if they stopped making huge advances to either it’s going to be years and years before writing code in Objective-C is not a good idea. In fact, Craig Federighi said as much this week in an interview with The Next Web.

“Objective C is forever. I don’t think anyone should fear for the future of Objective C. We’re going to continue to support Objective C for ourselves and the developer community.”

On Core Intuition the guys each said something that really stuck accord. Manton mentioned Swift’s syntax was a bit too punctuation happy, which I can agree with, and he says it reminds him of C++, which I also agree with. In my case I actually like the C++ language, whereas Manton said he’d rather not go back to it. I would never hold that idea against anyone. It’s an unforgiving language.

Daniel mentions his reluctance to add the Swift runtime to his products just so he can include a new class here or there. I had this same feeling when adding C#/.Net code to an existing C++/Windows API application. It just felt so weighty to get such little support. In those cases I’d say why change? Just keep hammering away in Objective-C if you’re good at it and you can move to release new product quickly. When building a new product give Swift a whirl.

Another great point discussed by Daniel and Manton was how people embrace new languages and find a way to over complicate things. Think about the Architecture Astronaut. Swift brings all kinds of interesting syntax sugar to the table, but it doesn’t mean you have to use it. Start simply, experiment. You’ll find things in the language you love and things you hate. It’s true of every language I’ve ever learned. Keeping your code readable and maintainable is way more important than any syntax sugar offered by the language.

I’ve been working in Swift for the past few months and we’re doing more and more at Agrian with it. All new features are being written in Swift. The language is expressive and once you get going I think you’ll find you can move pretty quickly. We still have large portions of code in Objective-C. We’ve been selective about moving bits of that code to Swift and other parts we leave alone.

If you’re an iOS or Mac developer I recommend you listen to Core Intuition. Daniel and Manton are thoughtful and very experienced developers. Listen and you’ll learn something new.

Categories
Apple

Xcode on iPad?

This is another interesting idea, if only to ask why? A lot of developers have a habit of doing things “because.” It’s not a bad thing, it’s usually out of curiosity or because it’s a fun challenge. Now, I don’t believe this is why we’d get Xcode for iPad, but initially it felt that way.

The obvious question is “Who is this for?” At first I thought it was a silly idea, but after letting that question stew for a while I decided it wouldn’t target Professional Developers, it would target hobbyists.

Imagine if you will an Xcode stripped down to Swift only, hopefully with a new Swift based framework for modern development. Playgrounds would be a bright spot for curious folks. There’s no need to go whole hog with all of Cocoa and Objective-C, give everyone a clean slate environment for the creation of iOS Apps. 

If you look at all of Apple’s recent hardware creations they have their own operating systems. Each operating system is honed for the platform and each in the mold of iOS, not the more open OS X model. 

If you remove OS X as a development target and only target Arm based architectures the idea of a trimmed down Xcode begins to make a little sense. You should be able to build all targets on an iPad Pro. Keep in mind the A9x performs really well. 

I still believe for serious development you’ll need a keyboard and mouse. We will see if Apple ever finds it necessary to create what I’ve dubbed macOS or do developers shoe horn their workflows into a less capable workflow?

According to John Gruber we may find out at WWDC 2016. I hope I will be able to attend.

Categories
Apple iPad

On Saving the iPad

Jared Sinclair: “The iPad should be rebooted with a set of fresh design principles that are aimed at answering the question: How can a multi-tasking touchscreen device fully replace a Mac? These principles would guide both Apple and third-party developers, and in turn would spur a desire in customers to leave behind a PC for an iPad without looking back.”

I’ve been following Jared’s thought flow on Twitter this week. He’s had a lot of good ideas and they’re distilled down into his blog post, go read it.

My Thoughts on the Matter

With the iPad Pro the line between computer and tablet begin to blur. Jared’s post focuses on the idea of upsizing iOS, for the creation of something he calls padOS. I’ve been thinking along similar lines, but my thoughts center on starting with OS X and adding touch and Pencil support.

Why?

It’s a device for Professionals, right? A recurring theme of recent iPad Pro reviews is how poor the typing experience is, not to mention the lack of a pointing device. The iPad Pro is not a device for all Professions, I’m sure there will be a set of professionals that can use it, but it’s not something I can use in my daily professional life. I need a solid keyboard and pointing device. Touch just won’t work as a primary way to control the caret position. It wouldn’t hurt to have it, it’s just not something I’d use all the time. I think Justin Williams captured it really well in his post The Chicken or the iPad Pro.

The sad reality is there aren’t enough Omnis in the ecosystem right now to make the iPad Pro a viable productivity platform for anyone but those executives, retired folks, and masochist bloggers who jump through more hoops than a circus elephant to use an iPad instead of a Mac.

I could see a Mac Book, or iPad Pro, that is a clamshell design with all the smarts in the iPad display part. The lower part of the clamshell could be a keyboard and a trackpad. Maybe they jam more battery into the lower part, maybe not. The point is they’re so darned close to having this device today.

By adding touch to OS X we get what Jared is after. A platform that is more open to professional applications. We’re not required to run our applications through the review process and we can sell them directly from our own website, which will allow us to control pricing much, much, better and put us in direct contact with our customers. That is appealing.

This brings me back to what I called macOS; similar, I believe, to Jared’s padOS.

In the end could you imagine how wonderful a Mac laptop would be running a form of iOS built just for the hardware? Something that is essentially an iPad with the addition of a keyboard and possibly a mouse? It feels like the Mac could evolve in that direction.

It feels like there is another OS in there somewhere. Either OS X gets touch and Pencil input, or iOS gets pointing device support. Couple a touch based macOS/padOS with a clamshell style iPad Pro and you’d have a very interesting combination.

Sounds familiar, doesn’t it?

This idea isn’t new or inventive. Like a lot of what Apple has done in the past they don’t have to be first to market. Most of their big wins came after careful study of existing markets. Apple has always been able to make a better experience. Did they create the MP3 player? No, they made the iPod. Did they create the smartphone? No, they made the iPhone. Same goes for the tablet form factor. They’ve managed to create a platform that is super easy to use and, more importantly, has a single point of contact for content via the App Store. Most people don’t care to go looking for apps on the web from different third-party vendors. They can find them all in one place, the App Store, which is great for users and not so great for developers.

The iPad Pro isn’t a new idea of course. In some ways it’s following work Microsoft has done with its Surface Pro line of tablets. Microsoft is now on iteration four of their line and I can tell you these are amazing devices. They give software developers and users everything Jared is looking for. They’re running a full desktop operating system that includes touch input. If you’re looking for good stylus input, the Surface Pro has it. It is the real deal. It can run full blown desktop applications, like Photoshop, and run touch input applications. It does this with plenty of power to make both a great experience.

If you’re a professional software developer focused on Mac and or iOS you owe it to yourself to consider other platforms given today’s complexities competing in the Apple ecosystem.

Either that or you can get a job working for someone else and write iOS apps on the side as a hobby.

Categories
Apple Development

My Dearest Apple

If you’re a developer in the Apple ecosystem you’ve no doubt heard of Swift, and could be developing with it every day.

I work for a little shop focused on Agronomics Software and Services. Our service is like many gigantor services in thee market; a website with a backing REST based service. It’s a magical cloud! 

We also develop a mobile client for iOS. Our products are Objective-C based but recently we’ve been writing new features in Swift. 

Swift is a really nice language. It takes some getting used to and the syntax is super sugary. As an old C/C++ developer a lot of it feels right at home. We get to trade a dynamic language for strong typing, which doesn’t bother me in the slightest but might bug died in the wool old-time Objective-C developers. Anywho, suffice it to say I’m enjoying it, and I hope to develop in this language for many years to come.

You’re probably saying “What’s your point, man?”

What I’m trying to say is I hope Apple goes whole hog and gives us a new framework for application development. That’s right, leave Cocoa as it is, put it in maintenance mode and do everything from this day forward with a new set of frameworks built entirely in, and for, Swift.

I also hope Apple can bring more of the concepts learned from UIKit back to the Mac. We have a wonderful set or portable API’s with Cocoa, but the Mac feels a bit neglected. If a new set of frameworks were developed Apple could start fresh, leave out the cruft, and give us new frameworks built to take advantage of Swift’s language features.

Get your tools!I would imagine this idea makes app developers cringe. What about all those years invested in Cocoa? For years to come I would imagine Cocoa apps would receive plenty of support and still be first class citizens. Remember what Adobe went through to bring Photoshop to the Mac when Carbon was dropped? Yes, it can be painful, but knowing ahead of time Apple will eventually pull the plug on Cocoa would be helpful, if they ever feel like taking on such an ambitious project.

In 2000 (I think that’s the correct year) Microsoft brought us .Net with the C# programming language at a time when the Windows API (Win32 API) and C/C++ were the primary way to create great native Windows apps. This is what we used at Visio. Lots and lots of C/C++ with the Windows API, later on we introduced MFC into the mix, and finally after bein acquired by Microsoft we integrated Office shared components (MSOx.dll’s.) Microsoft to this day still writes in C++ for its Office apps but most development outside is now done in .Net in C# — I’m sure Microsoft is doing plenty of work in C# and .Net. It’s a very powerful framework and programming language and is getting the lions share of the attention. It was a big risk, but it has paid huge dividends for the Windows ecosystem.

This can be done, is my point. Apple did it with Carbon to Cocoa and Microsoft had done it with the Windows API to .Net Framework. It feels like we are primed for a new Apple Framework that embraces Swift.

Please note, I’m not suggesting that Apple should completely abandon Cocoa. If this type of change happens maybe they can keep parity between the two for a while to give developers time to switch. Remember, Carbon was released in 2000 and finally fully deprecated in 2012, it became way less useful in 2007 when it was not updated for 64-bit applications. Depending how you look at it, Apple supported Carbon for seven, or 12 years. If they allowed for a five year overlap of feature support before fully deprecating Cocoa they could allow developers to move into the new, completely Swift, framework.

Recently we have seen Dropbox fully embrace Swift. With the Dropbox V2 API the Dropbox team has dropped support for Objective-C. That speaks volumes. It’s obvious they feel strongly about the future of Swift.

Is a movement to an all Swift Apple Framework in our future? Your guess is as good as mine, but it is obvious Apple is embracing Swift as its language of choice for future software development.