Over a million developers have joined DZone.

Dev of the Week: Alex Curylo

DZone's Guide to

Dev of the Week: Alex Curylo

· Java Zone ·
Free Resource

Java-based (JDBC) data connectivity to SaaS, NoSQL, and Big Data. Download Now.

Every week here and in our newsletter, we feature a new developer/blogger from the DZone community to catch up and find out what he or she is working on now and what's coming next. This week we're talking to Alex Curylo, long-time Mac expert and contract iPhone programmer in Vancouver, BC, Canada. Some of his most recent DZone posts include:

A Collection of Objective-C Style Guides

Annotated Screenshots for iOS Apps

Animation Helpers for iOS

1.   What have you been working on lately?

There’s this startup out of Vegas, Full Color Games, that’s had the intriguing idea of reinventing the deck of cards; because hey, if there’s a huge and static gaming category that could use some shaking up, it’s card games, right? The first released game collection in this reinvention, Full Color Solitaire — https://www.fullcolorsolitaire.com — is just out on iOS, and plans for total world domination are advancing nicely.

2.   You've been building apps for iOS from the very beginning, and the technology has grown a lot in a short time. Is anything still missing from iOS that you hope to see in the future?

The big one impeding development is lack of system level third party framework sharing. I probably have a hundred different static linkings of Flurry Analytics’ library for instance scattered around my phone, all managing their data and communications completely independently and no way to update their functionality without a new full binary release of each app. This is silly. We have an App Store, thanks Apple, now give us a Framework Store. The way that third party QuickTime codecs were handled back in old school Mac OS, that would be a good start on your design.

And like everybody else, I’d like some way to allow apps to share the screen rather than always requiring a full context switch. The way I’d like to see explored is along the lines of the very original Macintosh’s ‘Desktop Accessories’ model — cooperatively scheduled shared event access. That would open up a completely new category of app enhancer development options, the way that people added thesauruses and the like to MacWrite way back in the non-multitasking Macintosh day. That would be pretty cool.

3.   Are there any particular developer tools or resources you couldn't live without?

By the time you’ve been making a living programming for 25+ years, you’re pretty much over getting attached to your tools, since you’ve outlived around ten generations of them; there isn’t really any tool I use that I wouldn’t have an immediate Plan B for if all support disappeared tomorrow. Because that has happened depressingly often over those 25+ years. Resource-wise, these days I’m continually gobsmacked at no matter how eccentrically obscure the problem that strikes, there’s probably already half a dozen threads on it on Stack Overflow. Losing Stack Overflow would probably cut my productivity on the order of as much as losing a hand, yep. Maybe a hand and a half.

4.   Do you have a favorite open source project (or projects) that you've contributed to recently?

The previous answer notwithstanding, I’m attached enough to Objective-C and the Foundation library that I’ll definitely favourite open source projects that extend their reach. And at the moment that would the quite wide collection of projects created and/or used by the Apportable platform — http://www.apportable.com/open_source — and in particular, as would be no surprise from reading the first answer up there, the SpriteBuilder 2D game editor: http://www.spritebuilder.com — which will no doubt be the premiere environment of iOS + Android game development choice by the end of this year!

5.   Do you follow any blogs or Twitter feeds that you would recommend to developers?

General development, DZone and Slashdot and that’s pretty much it. iOS-centric, raywenderlich.com is my top recommendation, for regular original tutorials on an ever increasing range of subjects. ManiacDev.com is a nice curator of development tidbits, probably the single biggest source of things I find nifty enough to post on my blog. The firehose of CocoaControls (@cocoacontrols) and CocoaPods (@CocoaPods, @CocoaPodsFeed) keeps you thoroughly abreast of pretty much all new source projects of note. @ObjectiveCStack is a great feed of likely interesting Stack Overflow questions. Last recommendation would be the email newsletter from iOSDevWeekly.com. Follow that collection, and you’ll probably catch mention of just about everything of ongoing interest in the iOS development world.

6.   Did you have a coding first love -- a particular program, gadget, game, or language that set you on the path to life as a developer?

Back in my antediluvian 1980s adolescence, my dear parents were foresighted enough to recognize that these personal computer things were probably going to be big, so they were ok with purchasing one for vaguely supposed educational purposes. But games, no games were right out of the question. And wanting to play games, but being far too rural to have access to any pirated software scene, the only available option in those days of physically copy protected floppy disk software distribution was to make regular copies of game disks from my vanishingly few friends who had computers and more gamingly generous parents -- and sector edit those floppy copies with hexadecimal disk editors until the game ran. Open source? Pshaw, I have a readable binary, I’m good. Not precisely the way my dear parents had pictured their investment being educational, no doubt; but hey here I am, so it worked out pretty well.

7.   Is there anything else you'd like to mention?

Hmmm … no, nothing that springs to mind.

Thanks, Alex!

Check out Alex's blog and Twitter!

Connect any Java based application to your SaaS data.  Over 100+ Java-based data source connectors.


Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}