🔗 newfoo: Good Practices for Big iPhone Projects

newfoo: Good Practices for Big iPhone Projects Developing a high-quality iPhone app can be tricky stuff for new and veteran developers alike – especially on larger projects. In this article, I’ll discuss several tools & techniques that have helped my teams and me to produce high quality work and helped save a lot of time. Use Multiple Build Configurations Use an Enhanced UIColor Use isEmpty Instead of Nil and Length Checks Use Logging Treat Compile Warnings as Errors Use Static Analysis Frequently Learn Apple’s Rules for Memory Management

2 October 2013 Âˇ 1 min Âˇ 88 words

🔗 CodeRunner — krillapps

CodeRunner — krillapps Edit and run code in any programming language with just a single click. With CodeRunner, it has never been easier to write and test code, run scripts, work with algorithms, or simply experiment with a new coding or scripting language.

20 September 2013 Âˇ 1 min Âˇ 43 words

🔗 75 Essential Tools for iOS Developers – Fickle Bits

75 Essential Tools for iOS Developers – Fickle Bits I present to you a gigantic list of tools. Some of these I use daily, others I see potential in. (…) I tried to categorize these the best I can. Some of the entries are websites, some are back-end services, but most are apps that you install. Not all of the apps are free, so I’ll make a note with a $ to denote that an app costs money. ...

19 September 2013 Âˇ 1 min Âˇ 108 words

🔗 iOS 7 Development Tips, Tricks & Hacks

iOS 7 Development Tips, Tricks & Hacks Like with any new iOS version there are a bunch of new tricks and hacks to work out. Here are a few things that weren’t immediately obvious to me, it’s in no way a complete set, just things that I happened to come across.

19 September 2013 Âˇ 1 min Âˇ 51 words

🔗 Touch Keyboard Type ‘Cheat Sheet’ – Labs – Baymard Institute

Touch Keyboard Type ‘Cheat Sheet’ – Labs – Baymard Institute HTML5 code and demos for invoking different touch keyboards depending on input type

19 September 2013 Âˇ 1 min Âˇ 23 words

🔗 Tools | Developer Economics Developer Economics

Tools | Developer Economics Developer Economics Boost development speed Test your idea & get feedback Before launch After launch Get more users Distribute your app Promote your app Monetize your app Monitor your app’s success Expand to new markets

17 September 2013 Âˇ 1 min Âˇ 39 words

🏞 (image)

If you want to make a mobile app for an iOS device, you are operating at the intersection of software, design, and Apple’s particular development philosophy and tools. True competency requires successfully drawing on key concepts from each of these areas (and filling in your own blanks). (via Everything a Competent iOS Developer Needs to Know [Graphic] )

31 August 2013 Âˇ 1 min Âˇ 58 words

🔗 Zach Waugh: Preventing Xcode from building with #error

Zach Waugh: Preventing Xcode from building with #error zachwaugh: (…) I wanted Xcode to not even build the app if conflicting conditions were enabled. I came across the #error preprocessor directive which does exactly that, and can be used like this: #if defined(APP_STORE) && defined(BETA) #error Beta enabled for App Store build! #endif

31 August 2013 Âˇ 1 min Âˇ 53 words

🔗 GitHub Flow – Scott Chacon

GitHub Flow – Scott Chacon So, what is GitHub Flow? Anything in the master branch is deployable To work on something new, create a descriptively named branch off of master (ie: new-oauth2-scopes ) Commit to that branch locally and regularly push your work to the same named branch on the server When you need feedback or help, or you think the branch is ready for merging, open a pull request After someone else has reviewed and signed off on the feature, you can merge it into master Once it is merged and pushed to ‘master’, you can and should deploy immediately For teams that have to do formal releases on a longer term interval (a few weeks to a few months between releases), and be able to do hot-fixes and maintenance branches and other things that arise from shipping so infrequently, git-flow makes sense and I would highly advocate it’s use. ...

29 August 2013 Âˇ 1 min Âˇ 182 words

🏞 (image)

App.io, previously Kickfolio, allows developers to test drive their iOS apps in any browser, on any device. No Downloads. No UDIDs. Just a simple testing page in the browser featuring your live, interactive app. With App.io, developers are able to simply upload their test builds and share a link with their testers and clients. (via Run iOS Apps in the Browser – App.io )

27 August 2013 Âˇ 1 min Âˇ 64 words

🏞 (image)

Android vs. iOS screen sizes in the market. (via Android Fragmentation Report July 2013 – OpenSignal )

6 August 2013 Âˇ 1 min Âˇ 17 words

🏞 (image)

we-are-star-stuff: If you’re interested in an IT degree and career, coding can be pretty intimidating. From understanding common programming languages to deciphering programming from developing, learning to code is necessary in today’s IT industry. The ability to implement a variety of programming languages can help you decide which coding career path is correct for you. Additionally, comprehending multiple popular programming languages will make you more marketable in the IT industry at large. [via] ...

31 July 2013 Âˇ 1 min Âˇ 73 words

🔗 97 Things Every Programmer Should Know – Contributions Appearing in the Book

97 Things Every Programmer Should Know – Contributions Appearing in the Book Act with Prudence by Seb Rose Apply Functional Programming Principles by Edward Garson Ask “What Would the User Do?” (You Are not the User) by Giles Colborne Automate Your Coding Standard by Filip van Laenen Beauty Is in Simplicity by Jørn Ølmheim Before You Refactor by Rajith Attapattu Beware the Share by Udi Dahan The Boy Scout Rule by Uncle Bob Check Your Code First before Looking to Blame Others by Allan Kelly Choose Your Tools with Care by Giovanni Asproni Code in the Language of the Domain by Dan North Code Is Design by Ryan Brush Code Layout Matters by Steve Freeman Code Reviews by Mattias Karlsson Coding with Reason by Yechiel Kimchi A Comment on Comments by Cal Evans Comment Only What the Code Cannot Say by Kevlin Henney Continuous Learning by Clint Shank Convenience Is not an -ility by Gregor Hohpe Deploy Early and Often by Steve Berczuk Distinguish Business Exceptions from Technical by Dan Bergh Johnsson Do Lots of Deliberate Practice by Jon Jagger Domain-Specific Languages by Michael Hunger Don’t Be Afraid to Break Things by Mike Lewis Don’t Be Cute with Your Test Data by Rod Begbie Don’t Ignore that Error! by Pete Goodliffe Don’t Just Learn the Language, Understand its Culture by Anders Norås Don’t Nail Your Program into the Upright Position by Verity Stob Don’t Rely on “Magic Happens Here” by AlanGriffiths Don’t Repeat Yourself by Steve Smith Don’t Touch that Code! by Cal Evans Encapsulate Behavior, not Just State by Einar Landre Floating-point Numbers Aren’t Real by Chuck Allison Fulfill Your Ambitions with Open Source by Richard Monson-Haefel The Golden Rule of API Design by Michael Feathers The Guru Myth by Ryan Brush Hard Work Does not Pay Off by Olve Maudal How to Use a Bug Tracker by Matt Doar Improve Code by Removing It by Pete Goodliffe Install Me by Marcus Baker Inter-Process Communication Affects Application Response Time by Randy Stafford Keep the Build Clean by Johannes Brodwall Know How to Use Command-line Tools by Carroll Robinson Know Well More than Two Programming Languages by Russel Winder Know Your IDE by Heinz Kabutz Know Your Limits by Greg Colvin Know Your Next Commit by Dan Bergh Johnsson Large Interconnected Data Belongs to a Database by Diomidis Spinellis Learn Foreign Languages by Klaus Marquardt Learn to Estimate by Giovanni Asproni Learn to Say “Hello, World” by Thomas Guest Let Your Project Speak for Itself by Daniel Lindner The Linker Is not a Magical Program by Walter Bright The Longevity of Interim Solutions by Klaus Marquardt Make Interfaces Easy to Use Correctly and Hard to Use Incorrectly by Scott Meyers Make the Invisible More Visible by Jon Jagger Message Passing Leads to Better Scalability in Parallel Systems by Russel Winder A Message to the Future by Linda Rising Missing Opportunities for Polymorphism by Kirk Pepperdine News of the Weird: Testers Are Your Friends by Burk Hufnagel One Binary by Steve Freeman Only the Code Tells the Truth by Peter Sommerlad Own (and Refactor) the Build by Steve Berczuk Pair Program and Feel the Flow by Gudny Hauknes , Ann Katrin Gagnat , and Kari Røssland Prefer Domain-Specific Types to Primitive Types by Einar Landre Prevent Errors by Giles Colborne The Professional Programmer by Uncle Bob Put Everything Under Version Control by Diomidis Spinellis Put the Mouse Down and Step Away from the Keyboard by Burk Hufnagel Read Code by Karianne Berg Read the Humanities by Keith Braithwaite Reinvent the Wheel Often by Jason P Sage Resist the Temptation of the Singleton Pattern by Sam Saariste The Road to Performance Is Littered with Dirty Code Bombs by Kirk Pepperdine Simplicity Comes from Reduction by Paul W. Homer The Single Responsibility Principle by Uncle Bob Start from Yes by Alex Miller Step Back and Automate, Automate, Automate by Cay Horstmann Take Advantage of Code Analysis Tools by Sarah Mount Test for Required Behavior, not Incidental Behavior by Kevlin Henney Test Precisely and Concretely by Kevlin Henney Test While You Sleep (and over Weekends) by Rajith Attapattu Testing Is the Engineering Rigor of Software Development by Neal Ford Thinking in States by Niclas Nilsson Two Heads Are Often Better than One by Adrian Wible Two Wrongs Can Make a Right (and Are Difficult to Fix) by Allan Kelly Ubuntu Coding for Your Friends by Aslam Khan The Unix Tools Are Your Friends by Diomidis Spinellis Use the Right Algorithm and Data Structure by JC van Winkel Verbose Logging Will Disturb Your Sleep by Johannes Brodwall WET Dilutes Performance Bottlenecks by Kirk Pepperdine When Programmers and Testers Collaborate by Janet Gregory Write Code as If You Had to Support It for the Rest of Your Life by Yuriy Zubarev Write Small Functions Using Examples by Keith Braithwaite Write Tests for People by Gerard Meszaros You Gotta Care about the Code by Pete Goodliffe Your Customers Do not Mean What They Say by Nate Jackson \

26 July 2013 Âˇ 4 min Âˇ 831 words

📜 Programmers waste enormous amounts of time thinking about, or worrying

Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered. We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%. Donald Knuth (via When optimal matters ) ...

18 July 2013 Âˇ 1 min Âˇ 95 words

🔗 When optimal matters | Playing with Objects

When optimal matters | Playing with Objects The rules of optimization (…) When you are thinking on making an optimization: First time: Don’t do it! Second time: Don’t do it yet! Third time: Ok, but you first profile and measure, and then optimize

18 July 2013 Âˇ 1 min Âˇ 43 words

🏞 (image)

Basic Features: Overview of iOS Crash Reporting Tools: Part ½ | Ray Wenderlich Setup Procedures: Overview of iOS Crash Reporting Tools: Part 2/2 | Ray Wenderlich

15 June 2013 Âˇ 1 min Âˇ 26 words

📺 Apple – Making a difference. One app at a time.

Apple – Making a difference. One app at a time. (by Apple ) THIS!

13 June 2013 Âˇ 1 min Âˇ 14 words

🔗 iPhone & iPad GUI PSD | Teehan Lax

iPhone & iPad GUI PSD | Teehan Lax iPhone PSD This Photoshop template contains all the major iPhone iOS elements to help you design your app. iPad PSD Another PSD template that is made specifically for iPad to help you design your app.

2 June 2013 Âˇ 1 min Âˇ 43 words

🔗 Starters Guide to iOS Design

Starters Guide to iOS Design (…) I find that many designers struggle with the transition to UI work, or with the different processes involved in iPhone and iPad app design. In this guide I’ll describe the deliverables you’ll be expected to produce, outline the constraints of the medium and introduce fundamental iOS and UI design concepts.

28 May 2013 Âˇ 1 min Âˇ 56 words

🔗 Develop Cross Platform Mobile Apps and Games | Corona Labs

Develop Cross Platform Mobile Apps and Games | Corona Labs Interesting cross-platform mobile development kit, which compiles to native binaries. Uses the Lua programming language . Corona dramatically boosts your productivity. Thanks to our elegant APIs, tasks like animating objects, creating UI widgets or enabling physics take only a few lines of code. Corona is the best solution for developing cross-platform apps for all major platforms and devices. Write once and build to iOS, Android, Kindle Fire and NOOK at the touch of a button. Corona makes dealing with different device sizes and resolutions easy. ...

22 May 2013 Âˇ 1 min Âˇ 115 words