by Cesare Rocchi

Transmit iOS was great, and yet

Panic is winding down Transmit iOS. I am surprised. I assumed they were doing good. They are, as a company. But even great companies that create compelling app have problems in justifying further investments on products that don’t bring in enough money. It’s a bittersweet announcement. It must have been a tough call. I think it’s important to not fall in the “if Panic can’t make it, I can’t make it either” trap.

Continue reading →

Breezi is Back

It was 2012. Prince was still alive and iOS 6 was about to be released. There were rumors of a bigger iPhone. They’d have called it “iPhone 5”. At this point I had already built quite a lot of apps for clients and I wanted to take a stab at building AND selling an app. And so Breezi was born. I wanted it to be something unique and so I designed a fully gesture driven user interface.

Continue reading →

Podrover Diaries: Cleaning a stain in the iOS navigation bar

Podrover Diaries is a series about my adventures in building Podrover, a service to track, collect and share your podcast reviews. Subscribe to the RSS feed or join my newsletter to stay up to date with upcoming adventures. When I released the 1.3.5 version of Podrover some customers reported the presence of a “stain”. Here it is (look at the top and bottom right). I didn’t notice it at first but it’s creepy, isn’t it?

Continue reading →

Supporting IPv6 Networks

In my list of transitions I forgot to mention IPv6 support. Mostly because I didn’t stumble upon it. Until today. I knew it was announced. I just didn’t recall when it was the deadline. It was June 1st 2016. From that day on every iOS (and maybe Mac app?) has to support IPv6. So yesterday I submitted an app for a client and my jaw dropped when it was rejected because it didn’t support IPv6.

Continue reading →

iOS vs Android in Old Projects

Around ten days ago I wake up and the iPhone tells me I missed ten phone calls. Usually not a lot of people call me and very rarely ten times in half an hour. I call back, suspecting something weird. It was a friend. He runs a company that has many branches. One branch deals with constructions and publishes a monthly magazine. Besides being printed the magazine is also available as a Newsstand app for iOS and Android.

Continue reading →

Restoring non-consumable IAPs in iOS

You’d think that a Google search and subsequent visit to Stack Overflow are the solution to all your programming problems. Right? Until, I don’t find an answer or I find multiple contrasting answers. This adventure follows in the second category. I needed to restore a non-consumable IAP (in-app purchase) for an iOS app. When you search for something like that you end up with a lot of noisy and contrasting information.

Continue reading →

Aren't Storyboards supposed to tell a story?

In the last few months I have read some interesting articles about “Coordinator” objects. Some they call it Flow Controllers, some coordinators. I admit I like the idea of having an object collecting the navigation logic. As a side effect you end up with slimmer and easier-to-test view controllers. Win-win. Now. Maybe it’s the word itself, maybe I conceptualized it in a wrong way. Isn’t a storyboard supposed to do exactly that?

Continue reading →

The App that was Never Born

Becky Hansmeyer posted an interesting challenge. Share some screenshots of your first, and probably not that great, app. I enjoyed Curtis’ take. Here’s is mine. It’s not about my first app. It was supposed to be my fourth. Unfortunately, even if you get your first app right, you can still stumble along the way. Beginning of May 2014. I get out of the hospital after a sleepless night. A few hours before my daughter was born.

Continue reading →

I Spoke at My First Online Conference

For the first time I spoke at an online conference. It was fun. The pros: no traveling no dressing up you speak in the comfort of your office no worries to forget the slides at home :) The cons: I missed the after conference, the water cooler chat that happens in between sessions I had to share my slides full screen, so I had no visual feedback from the audience As for the last point, my connection dropped five minutes before the end of my presentation, but I kept speaking because I had no way to find out.

Continue reading →

Speaking at iOS Remote Conference

I was supposed to speak at Cocoaconf Austin. And after I committed I discovered a dear friend of mine was getting married on April 16th. I don’t take commitments lightly, once I commit I am committed. So I mulled on it a few days and then sent an email to the Kleins, asking if I could withdraw. Very simply they replied: You shouldn't miss a friend's wedding for a tech conference.

Continue reading →

Upsert in Core Data

I am a huge fan of upsert. An upsert operation creates a new record in a database, but if the record already exists it just updates it. All of that in the same query. Without upsert you’d need something like this (in pseudocode): if (record.exists?) { // update code here } else { // insert code here } The disadvantage of this is that you have to perform two queries, one to check the existence of the record and one either to update or to insert it.

Continue reading →

Accessibility and Dark Mode in iOS8

As you know I am very sensitive to accessibility. But until that day comes, I ask developers of text-heavy apps: please consider including a dark mode for your app not just because it's a night-use feature but also because, for some of us, it's an accessibility feature. @cgpgrey source Even if it’s potentially a lot of work to include a dark mode, do it. It’s worth it.

Continue reading →

Building a Business outside the App Store

Written by a solopreneur, this article is not just for solopreneurs, but for everybody noticing that something has changed in the App Store. Introduction I must say it’s easy to stare at a shelf and complain about the price of a product. I did it many times and I still do it sometimes. Whenever I see a high price it’s kinda hard to not think the producer is cheating on me and charging too much.

Continue reading →

On why I am not buying RubyMotion

RubyMotion is a recently released tool which allows to create native iOS applications using Ruby. It was made by Laurent Sansonetti, an ex-Apple employee, also leader of MacRuby. RubyMotion enables to develop native applications by skipping Xcode and using commands from the terminal to compile, run and even submit the application to the store. Premises I like Ruby and the way it is easy to work with. I personally use ruby in many projects, mostly on the server side.

Continue reading →

Pages(1)