Objective-C and Cocoa in 2025Back in 2015 I gave a talk titled “Cocoa is the new Carbon: the Future of Apple’s Beloved Framework”, whose presentation has a slide that said “Cocoa should remain for backwards compatibility during 10 years at least, until 2025”.
Mobile Application Testing BookGoing through my archives I found a booklet I wrote 10 years ago, about testing iOS and Android mobile apps. I’m adding it to my Books page for the sake of memory, even though its contents are not at all relevant by today’s standards.
Memories of WWDC 2008Exactly 15 years ago, on Monday, June 9th, 2008, I published a blog post with a picture taken in the big room of the Moscone conference center in San Francisco, waiting for Steve Jobs to introduce the iPhone 3G to the world at the annual Apple World Wide Developers’ Conference 2008.
Yup, Still Learning a New Programming Language Every YearI gave an update on this lifetime activity of mine in 2006, 2007, 2011, and 2013, and here we go for 2023.
What Objective-C 3.0 Could Have BeenIn a parallel universe, in a parallel WWDC 2014, instead of Swift, developers got Objective-C 3.0, and this is what it would have looked like. It’s the same parallel universe where Russia doesn’t annex Crimea, by the way.
Killer AppsThe D programming language lacked a “killer app” to break through. Another brilliant language suffered from this situation, objectively deserving a much better fate than the one it had; Smalltalk.
Text Editors for WorkThere has been a particular text editor that defined each period of my career as a software developer.
Polyglot ConwayMy personal project during the pandemic was Conway, a project providing implementations of Conway’s Game of Life in as many programming languages as possible.
The Next Big ThingLooking backwards, the migration from Objective-C to Swift as main programming language for the Apple galaxy was quite an event.
12 Years of iPhone – A Developer's PerspectiveThis is the talk that I gave in the 4th MCE Conference in Warsaw, Poland, on May 8th, 2017 (conference organized by Polidea) and (with updates) at UIKonf on May 15th, 2018 and at NSConfArg on April 20th, 2019.
The Developer Guide to Migrate Across GalaxiesThis is the presentation I gave at the second App Builders Conference in Lausanne, Switzerland, April 25th, 2017.
Refactoring iOS ProjectsPresentation given in Dnipropetrovsk, Ukraine, on July 16th, 2016. In this session we are going to learn simple yet effective techniques to refactor large iOS codebases in order to make them more testable, to adapt them to be eventually rewritten in Swift, and to make them as “future proof” as possible.
Cocoa is the new Carbon: the Future of Apple’s Beloved FrameworkIn this talk, Adrian will provide lots of speculation and highly arguable unverified gossip, about how the design of Swift will lead Apple to redesign Cocoa into new directions, and maybe replacing it altogether.
Still Learning One Language per YearQuick update about my “one language per year” lifelong initiative:
Getting the Next and the Previous NSIndexPath InstancesVery often, when you work with UITableViewControllers driven by NSFetchedResultsControllers, that you want to get the “previous” or the “next” elements in the results controller.
Determining Delegate Object Method Call Order in Objective-C with NSProxyThis is a guest post + code, wrote together with Joe D’Andrea from LiquidJoe LLC!
A Proposed Architecture for Network-Bound iOS AppsOne of my most popular answers in StackOverflow is the one I gave to the following question: “What is the best architecture for an iOS application that makes many network requests?
Learning One New Language Every YearHere’s an update of the current status of my “one language per year” lifelong initiative:
Smart Pointers in Objective-C++One of the coolest features of C++ are templates, of which I’ve been drooling in the past.
How knowing C and C++ can help you write better iPhone apps, part 1While learning how to write iOS applications, you will often encounter the phrase “learn C first”.
Migrating iPhone 3.x apps to iPad and iOS 4.0Right now, creating Universal Applications for the iPod touch, the iPhone and the iPad is not really a straightforward task.
Core Text Objective-C WrapperOne of the most promising and mysterious new frameworks introduced in iOS 3.
Objective-C Categories as StylesheetsIt is very important that iPhone and iPad applications use visual styles in a coherent way.
initWithContentsOfURL: Methods Considered HarmfulAs I promised on Twitter, here’s a small discussion about the problems brought by the “initWithContentsOfURL:” family of methods.
EasyTableView for iPhone PrototypingOur first blog post of 2010 presents a tool that we’ve been using internally and that might be useful for other people.
iPhone Apps without Objective-CYes, it’s possible. Even if Objective-C is one of my preferred programming languages, in any case I think it’s worth mentioning that, 2 years after the official iPhone SDK has been announced, the iPhone development landscape has really grown up, and many, many different options are available today.
Objective-C Compiler WarningsA recent comment by Joe D’Andrea in a previous post reminded me about the importance of removing compiler warnings in Xcode projects.
OpenGL ES 2.0 on iPhone OS 3.0Now that the NDA on the iPhone OS 3.0 SDK has been lifted (which happened much faster than what I thought it would take!
NIBs or code? Why not both? Here's nib2objc.(Somehow this project seems to me so simple, that I’m sure someone has done this before.
10 iPhone Memory Management TipsMemory management in the iPhone is a hot topic. And since I’m talking about it on tonight’s monthly meetup of the French-speaking Swiss iPhone Developers group, I might as well share some tips here from my own experience.
Objective-C REST Client UpdateI’ve uploaded (yet another) update to the Objective-C REST client I’ve blogged about previously.
NibsI’m sure the pun between the acronym for “NeXT Interface Builder” and this definition of “cocoa beans” is intentional, but it surprised me anyway:
The Beauty of Cocoa(Highly geeky post ahead. You’ve been warned!) I have found the very message that summarizes the beauty of Cocoa in a single word.
Amazing XcodeXcode is amazing. Of all the IDEs I’ve used (and this is, as always, a personal opinion, having used Visual Studio since version 6, Eclipse, Kdevelop and others) it’s the one I prefer.
Playing With HTTP LibrariesIt’s fun to find out how to tackle the same task in different programming languages; in this case, it’s all about doing HTTP requests over a network: fortunately, there are networking libraries in virtually all major programming languages.
Null ReferencesThere’s an interesting discussion going on these days on Ruby blogs about, basically, how to avoid one of the most common, annoying, easy-to-create bugs in any programming language: calling a method on a null reference (or pointer, depending on your language).
Preferred Programming LanguagesThere are basically 5 languages that I really like. For several reasons.
This Year's Programming LanguagesTrying to keep my promise of learning a new programming language every year, I have identified a couple of candidates for 2007:
How to Grab or Capture Your Screen With CocoaLately I got curious to know how could I grab the entire desktop of my computer, and save it into a file, or display it into an NSImageView component.
A New Programming Language Every YearSomewhere I read that it was a good thing to learn at least one new programming language every year; I think I have kept up that trend since 1992: