Centralize Callback Handling by Creating a Reactive Signal

When I first started using ReactiveCocoa (now ReactiveObjC), I mainly stuck to the basic operators: map, flatten, merge, etc. I saw a few examples of createSignal, but all I saw was a lot of manual work with disposables, subscribers, and other tedious sorts of things that I didn’t really want to mess with. Read more on Centralize Callback Handling by Creating a Reactive Signal…

Three Strategies for Maintaining an App on Two Platforms

If you want mobile apps for both Android and iOS, the cross-platform framework approach sounds pretty great, promising that you only have to develop the app once to run on multiple target platforms. Developing two separate apps sounds as if it will require fully twice as much work. Read more on Three Strategies for Maintaining an App on Two Platforms…

Stay Sharp by Standing While You Work

Many of us here at Atomic take advantage of height-adjustable workstations, or “standing desks.” Some of the claims made in support of standing desks may be difficult to detect (burns calories!) or require time to verify (lowers obesity risk!), so I won’t reference any of those in this post. What I do have is first-hand experience. Read more on Stay Sharp by Standing While You Work…

Three Attitudes that Lead to Maintainable Code

When writing code, there are many specific principles that aim to make your code more maintainable: DRY, the single responsibility principle, the Law of Demeter, the open/closed principle, etc. These are great principles to follow, but it can be difficult to keep all of them in your head at once. I’ve found it’s often easier to keep a few broader ideas in mind. Read more on Three Attitudes that Lead to Maintainable Code…

3 Good Habits for Avoiding Memory Leaks in Objective-C

I have been developing software in Objective-C for quite some time now, but I continue to discover new ways to shoot myself in the foot, particularly in the way of memory management. A while back, I wrote a post about finding iOS memory leaks using Xcode’s Instruments. This is a great tool for discovering memory leaks and tracking them down. But ideally, we would not have to deal with Objective-C memory leaks in the first place! The best way to avoid these types of problems is to stop them before they start.
Read more on 3 Good Habits for Avoiding Memory Leaks in Objective-C…

Achieve Resolution Independence in Your iOS App Using SVGs

Having devices of varying sizes is great for allowing users to choose what is right for them, but supporting all those combinations of resolution and pixel density can be a hassle. Even if you develop all of your original artwork in some vector format, you typically have to export it in PNG format at various sizes and densities. Read more on Achieve Resolution Independence in Your iOS App Using SVGs…

Getting Android ListView Right the First Time

ListView is an Android UI element commonly used when you want to display a scrollable list of items. Unless you have a simple, static list of items, you’ll probably end up subclassing BaseAdapater in order to provide content for Android ListView. The basic process of doing this is fairly straightforward, but there are a few mistakes that are easy to make if you’re not careful.
Read more on Getting Android ListView Right the First Time…