GameGamer43 + apple_mac_development   78

Debugging macOS Kernel using VirtualBox
Late last year, I upgraded my old MBP to the 2016 model with a Skylake processor. As I was debugging a kernel exploit, it turned out that SMAP was enabled inside my VMWare Fusion VM. I wanted to avoid dealing with SMAP, but couldn't figure out how to disable it in Fusion. Luckily, VirtualBox VMs do not support SMAP (yet?).
VirtualBox  Mach_Kernel  Apple_Mac_Development  Mac_Development  Mac  MacOS_Sierra 
april 2017 by GameGamer43
Remote Kext Debugging (No, really - it worked!) | RedNaga Security
This gif perfectly describe me attempting to connect debuggers to a kext using all the “simple” instructions on the internet.
Apple_Mac_Development  Mac_Development  Mach_Kernel  Mac 
april 2017 by GameGamer43
Timac » Blog Archive » Apple’s use of Swift in iOS 10.1 and macOS 10.12
Swift has been announced at the WWDC 2014, more than 2 years ago. Most of the sample code projects from Apple are now written in Swift. But does Apple use Swift in iOS 10.1 and macOS 10.12.1?
Apple_Swift  Swift  SwiftLang  Apple_iPhone_Development  Apple_Mac_Development 
february 2017 by GameGamer43
How To Create Your Own URL Scheme | CSS-Tricks
A URL Scheme is like "http://..." or "ftp://...". Those seem like a very low-level concept that you don't have much control over, but actually, you do! What sounds like an exotic topic is not so exotic at all: we are constantly using different URL Schemes, on any given day. For example when we're clicking a link to an iPhone app that launches the AppStore. Or when a friend sends us a link to a playlist and it opens in the Spotify desktop app.  Apple_iPhone_Development  Apple_Mac_Development 
february 2017 by GameGamer43
Xcode 8: How To Create an Animated iMessage Sticker
I’ve finally have little bit of time set aside this weekend to work on a fun side project. Ever since I saw my friend @chiuki‘s Fit Cat app on the Android Watch, I knew I needed to have it on my Apple Watch and @chiuki agreed to let me make it.
Apple_iMessages  Apple_iPhone_Development  Apple_Xcode  Apple_Mac_Development  NatashaTheRobot 
july 2016 by GameGamer43
Introducing Apple File System
The Apple File System (APFS) is the next-generation file system designed to scale from an Apple Watch to a Mac Pro. APFS is optimized for Flash/SSD storage, and engineered with encryption as a primary feature. Learn about APFS benefits versus HFS+ and how to make sure your file system code is compatible.
Apple_Mac_Development  Apple_Development_Documentation 
july 2016 by GameGamer43
Sync for Core Data Apps
"Sync is hard." How often have you heard that from your fellow developers? Well, now it's not.  GitHub_Repos  Apple_Mac_Development  Apple_iPhone_Development 
june 2016 by GameGamer43
Creating an embeddable Python distribution on OS X
I am currently working on a cross-platform Electron application that needs to make network calls to an embedded Python web server. Since this application must run on OS X and Windows, and I don't want my users to have to install Python 3 themselves, I have to include the Python interpreter with the application. Since Python 3.5 we can use the embeddable Python distribution on Windows, but there's not such thing for OS X and we have to roll our own.
Python  Mac  Mac_Development  Apple_Mac  Apple_Mac_Development 
june 2016 by GameGamer43
OS X BSD System Calls Reference
Generated from XNU-3248.20.55/ on Thursday, 07 April 2016 by @dyjakan.

Description for JSON dump elements (apart from conditionals):
Mac_OS_X  BSD  Mach_Kernel  Mac_Development  Apple_Mac_Development 
june 2016 by GameGamer43
A simple showcase how to create a simple OS X app in plain C without any Objective-C
GitHub_Repos  Apple_Mac_Development  C 
may 2016 by GameGamer43
The GCD Handbook
Grand Central Dispatch, or GCD, is an extremely powerful tool. It gives you low level constructs, like queues and semaphores, that you can combine in interesting ways to get useful multithreaded effects. Unfortunately, the C-based API is a bit arcane, and it isn’t immediately obvious how to combine the low-level components into higher level behaviors. In this post, I hope to describe the behaviors that you can create with the low-level components that GCD gives you.
Apple_Mac_Development  Apple_GrandCentralDispatch 
april 2016 by GameGamer43
Remodel is a tool that helps iOS and OS X developers avoid repetitive code by generating Objective-C models that support coding, value comparison, and immutability.
Facebook  GitHub_Repos  Objective-C  Facebook_OpenSource  Apple_Mac_Development  Apple_iPhone_Development 
april 2016 by GameGamer43
Building and managing iOS model objects with Remodel
One of the aspects of building an application is deciding how data will flow through it. Many iOS developers use dictionaries for this purpose, or use handwritten, simple objects instead. We've seen these patterns in our use of Objective-C at Facebook, and we've found some drawbacks in these approaches. Passing dictionaries of data around proved dangerous because dictionary fields are not type-safe. We also found that maintaining custom model objects was time-consuming, tedious, and error-prone.
Facebook  GitHub_Repos  Facebook_OpenSource  Objective-C  Apple_Mac_Development  Apple_iPhone_Development 
april 2016 by GameGamer43
Swift Education
Swift Education is a collection of resources to assist educators in bringing Swift into the classroom.
Apple_iPhone_Development  Apple_Swift  Swift  SwiftLang  Apple_Swift_Opensource  GitHub_Repos  Apple_Mac_Development 
april 2016 by GameGamer43
Indent with tabs or spaces? I wish I didn't need to know.
The always entertaining Erica Sadun wrote an article on her blog yesterday about code indentation styles, titled “Swift Style: Are you a 4-denter?”. There was a flurry of replies on Twitter as others playfully chimed in.
Apple_iPhone_Development  VIM  GitHub_Atom  Programming  Apple_Mac_Development 
april 2016 by GameGamer43
Using Identifiers to Debug Autolayout
A quick tip I found buried in a WWDC session on Auto Layout that helps when debugging problems with constraints
Apple_Xcode  Apple_iPhone_Development  Apple_Mac_Development 
march 2016 by GameGamer43
Everyone tries to implement a cache at some point in their iOS app's lifecycle, and this is ours.
GitHub_Repos  Spotify_Opensource  Spotify  Apple_Mac_Development  Apple_iPhone_Development  Objective-C 
march 2016 by GameGamer43
Top 10 iOS Conferences in 2016
If you’re an iOS developer, you should absolutely attend at least one iOS conference a year.
Ray_Wenderlich  Apple_iPhone_Development  Apple_Mac_Development 
march 2016 by GameGamer43
Introducing Freddy, an Open-Source Framework for Parsing JSON in Swift
Parsing JSON can be tricky, but it shouldn’t be. We think parsing JSON should feel like writing regular Swift code.
BigNerdRanch  Swift  Apple_Swift  SwiftLang  Apple_iPhone_Development  Apple_Mac_Development  JSON 
february 2016 by GameGamer43
Upload screenshots, metadata and your app to the App Store using a single command
Apple_Xcode  Apple_Mac_Development  Apple_iPhone_Development  GitHub_Repos 
january 2016 by GameGamer43
kdv - KDebug Unleashed for OS X/iOS
The OS X/iOS KDebug facility is an incredibly powerful tracing mechanism I touched on in the first edition of MOXiI. It is second only to DTrace, and - on iOS (where DTrace is unavailable) - is second to none. It has nonetheless gone unnoticed by many (not unlike other useful stuff I pointed out ;-).
Kdebug  Apple_Mac_Development  Apple_iPhone_Development  Debugging  Programming_Tools 
december 2015 by GameGamer43
Mac OS X Development Tutorial for Beginners Part 3: Your First OS X App
Welcome back to our 3-part Mac OS X Development tutorial for beginner series!
This introductory series about building apps on OS X has covered a lot of ground. This is what you’ve already learned:
Tooling: In part one you learned about the many facets of Xcode – and had a glimpse of how you could use it to start developing for OS X.
App Anatomy: The second part covered a lot of the theory behind how OS X app are constructed – from the data layer, through the binary assets, to designing the UI.
In this third and final part, you’re going to dive deep into the world of OS X development, by creating your first ever app!
Mac_Development  Apple_Mac_Development  Ray_Wenderlich 
december 2015 by GameGamer43
Mac OS X Development Tutorial for Beginners Part 2: OS X App Anatomy
Welcome back to our 3-part Mac OS X Development tutorial for beginner series!
In part 1 you first learned how to obtain the tools you need to develop for OS X. Then, using an app you downloaded as an example, you took a tour of Xcode, discovering how to run an app, edit code, design the UI and debug it.
Mac_Development  Apple_Mac_Development  Ray_Wenderlich 
december 2015 by GameGamer43
Mac OS X Development Tutorial for Beginners Part 1: Intro to Xcode
Want to learn how to develop your own apps for Mac OS X?
Good news – Apple makes developing for OS X incredibly easy – and in this tutorial series we’ll show you how. You’ll learn how to create your first app for OS X – even if you’re a complete beginner.
Mac_Development  Apple_Mac_Development  Ray_Wenderlich 
december 2015 by GameGamer43
Putting a UICollectionView in a UITableViewCell in Swift
A few years ago, I wrote this post on putting a collection view inside a table view cell. Collection views were still pretty new and there wasn’t a lot written about them, so my post got pretty popular. It now accounts for over a fifth of my entire blog’s traffic.
Ash_Furrow  Swift  SwiftLang  Apple_Swift  Apple_iPhone_Development  Apple_Mac_Development 
november 2015 by GameGamer43
Thread Safety Basics on iOS/OS X
Dealing with concurrency and reentrancy is one of the more difficult challenges any library will inevitably face as it grows. Here at Parse, we have put a large effort towards ensuring that anything you do with our SDKs is thread-safe, without letting performance suffer.
Programming  Parse  Parse_Blog  Apple_iPhone_Development  Apple_Mac_Development 
november 2015 by GameGamer43
How can you do TDD with Swift?
If you haven’t done TDD in a compiled language like Swift before, you may be wondering:
Apple_Swift  SwiftLang  Swift  TDD  RoadFire_Software  Apple_iPhone_Development  Apple_Mac_Development 
october 2015 by GameGamer43
Xcode Build Settings Reference
All variables are prefixed with "$" to uniquely identify them on this page. Submitting updates to this page.
Apple_Xcode  Xcode  Mac_Development  Apple_iPhone_Development  Apple_Mac_Development 
august 2015 by GameGamer43
Kernel debugging with LLDB and VMware Fusion
Being able to use LLDB to debug anything on my Mac has been the basis of my job for the last few years. Regardless of the particular use case – to debug my own program in Xcode or attach to another process – being able to set up breakpoints and inspect a program call stack frames and memory at runtime is just invaluable.
Mach_Kernel  Mac_Development  Apple_Mac_Development  LLDB  VMware 
august 2015 by GameGamer43
How To Change Your App Icon at Build Time
So, you’ve finished a beta version of your app, and finally there are some fresh eyeballs and brains helping you test and perfect the app that’s going to make you rich…or at least fatten your portfolio.
Ray_Wenderlich  Apple_iPhone_Development  Apple_Mac_Development 
august 2015 by GameGamer43
iAd Producer is a favorite of mine (I actually worked on its design for awhile at Apple) it's a little-known but extremely powerful tool from Apple. Think of it as "advanced Keynote", or "actually accessible Interface Builder". Alas the app is meant for not-so-popular content like iAds and iBooks widgets, but it can easily be repurposed to prototype iOS and Mac apps. It handles UI elements, screen flow, and animation really well. Better yet, an iAd project is based in HTML5, CSS3, and javascript which a lot of designers are already familiar with.
Apple_Mac_Development  Mac_Development  Apple_iPhone_Development 
july 2015 by GameGamer43
Code Signing in El Capitan
After releasing a update for xScope with fixes for El Capitan, I launched the app on a fresh install of the OS and was greeted by this dialog:
Craig_Hockenberry  Mac_OS_X  Mac_Development  Apple_Mac_Development 
july 2015 by GameGamer43
Lightweight Framework for using Core Data with Value Types
GitHub_Repos  Apple_Mac_Development  Apple_iPhone_Development 
july 2015 by GameGamer43
An Apple Push Notifications Debugging Story
APNs is a service provided by Apple that allows you to send push notifications to your iOS app's users. To use it, your service connects to an SSL-secured TCP server located at, port 2195, and you stream a protocol-specific message to the server for each push notification you want to send. You're intended to keep a persistent connection to their service, even when you aren't sending any messages.
Apple_Mac_Development  Apple_iPhone_Development  Apple_Push_Notifications 
july 2015 by GameGamer43
Valet lets you securely store data in the iOS or OS X Keychain without knowing a thing about how the Keychain works. It’s easy. We promise.
SquareUp.com_Opensource  GitHub_Repos  Mac_Development  Apple_Mac_Development  Apple_iPhone_Development 
june 2015 by GameGamer43
Apple has published a great free learn to code course for Swift — on GitHub
TL;DR: Apple has apparently, via some sort of collaboration with a university professor, published last week — during WWDC — a really solid-looking learn-to-code curriculum for Swift that is kind of on iTunes U but that is really on GitHub.
Apple_Swift  Swift  SwiftLang  Apple_iPhone_Development  Apple_Mac_Development 
june 2015 by GameGamer43
Swift 2: Test Driving the Error Handling
I’d admit it, when Chris Lattner explained the new Swift 2 error handling code on Tuesday at WWDC (session available here), I was a bit overwhelmed. It looked pretty alien, Java-like, and unnecessarily complex. I felt like I’d have to sit down for a while to try to understand it.
Swift  SwiftLang  Apple_Swift  Apple_iPhone_Development  Apple_Mac_Development  Mac_Development  Apple_WWDC 
june 2015 by GameGamer43
Debugging `launchd` on OSX 10.10.3
With the recent discovery of some IPC vulns in OSX (one, two, three) digging into the way IPC works in OSX came to the front of my TODO list. That, along with the re-write of launchd for 10.10.x, well, let’s just say it has thus far been a fruitful endeavor - that story is for another post. Which leads me to this post - why would I want to debug launchd?
Mac_OS_X  Mac_Development  Apple_Mac_Development 
may 2015 by GameGamer43
Swift vs. Objective-C: 10 reasons the future favors Swift
It’s high time to make the switch to the more approachable, full-featured Swift for iOS and OS X app dev
Paul_Solt  Swift  SwiftLang  Apple_Swift  Objective-C  NetworkWorld  Apple_iPhone_Development  Apple_Mac_Development 
may 2015 by GameGamer43
An Introduction to 3D Graphics with Metal in Swift
Warren Moore, a former Apple engineer, recently stopped by the Swift Language User Group to give an introduction to 3D graphics, Apple’s new Metal framework, and how you can use Metal for 3D rendering from Swift. His presentation covered a lot of ground and was a perfect intro for anybody trying to learn more about 3D, game development, and Swift. Thanks Warren!
Mac_Development  Apple_Mac_Development  Apple_iPhone_Development  Apple_Metal  Swift  SwiftLang  Apple_Swift 
may 2015 by GameGamer43
Example of compiling C libraries
In my last article we looked at how you can compile C libraries written by other people and integrate them into your Xcode project as static libraries. It covered some basics regarding the build process of many standard open source libraries. However, often times things don’t exactly go according to plan and an inexperienced developer can be left with cryptic compiler and linker errors.
Apple_iPhone_Development  Apple_Xcode  Apple_Mac_Development 
march 2015 by GameGamer43
Atlas is a fully featured, high performance, 100% customizable UI kit, built by Layer to power communications interfaces in any app.
GitHub_Repos  Apple_iPhone_Development  Apple_Mac_Development 
february 2015 by GameGamer43
DIY: kernel panic OS X and iOS in 10 LOC
After receiving quite a few reports from users of of kernel panic upon attaching the second time to a process, I finally got around to debugging the kernel to figure out what was going on.
Mach_Kernel  Mac_Development  Apple_Mac_Development  Apple_iPhone_Development 
february 2015 by GameGamer43
Core Data Libraries & Utilities
So let's say that, having determined your particular needs and compared all of the alternatives, you've chosen Core Data for your next app.
Apple_iPhone_Development  Apple_Mac_Development  NSHipster  Objective-C 
february 2015 by GameGamer43
MPW, Carbon and building Classic Mac OS apps in OS X
In 2014 I came across a project on Github described as “Macintosh Programmer’s Workshop (mpw) compatibility layer”.
Mac_Development  Apple_Mac_Development 
january 2015 by GameGamer43
Weekly bite-sized screencasts on iOS development.
Apple_Mac_Development  Apple_iPhone_Development 
january 2015 by GameGamer43
My Foray Into Mac OS X Kernel Hacking
Last night I watched Julia Evans’ StrangeLoop talk “You can be a kernel hacker!” I was inspired by her straightforward strategies for getting started with kernel hacking.
Mac_Development  Apple_Mac_Development  Apple_Mac_Open_Source 
december 2014 by GameGamer43
Building and Debugging Kernels
This chapter is not about building kernel extensions (KEXTs). There are a number of good KEXT tutorials on Apple’s developer documentation site ( This chapter is about adding new in-kernel modules (optional parts of the kernel), building kernels, and debugging kernel and kernel extension builds.
Apple_Mac_Development  Mac_Development 
december 2014 by GameGamer43
OSX “strace” equivalent: dtruss – seeing inside applications what they do and why they hang
I am running OSX desktops coming from Linux background. We cross-develop software both on OSX and Linux. I am familiar of debugging system issues on Linux using strace command and now I had to try something similar on OSX. strace prints out system calls a running application makes so you can see “inside” the application and see where it crashes, hangs, etc.
Strace  DTrace  Mac  Linux  Linux_Development  Mac_Development  Apple_Mac  Apple_Mac_Development 
december 2014 by GameGamer43
Manage iOS App Layouts with Autolayout
This tutorial assumes that you’ve used Xcode before and are familiar with Interface Builder, but not with Auto Layout tools in Xcode.

At WWDC 2012 Apple introduced a new system for laying out interfaces. Auto Layout is an incredibly capable layout engine perfect for applications. While a little strange to understand at first, once mastered it allows for much more fluid layouts with significantly less (or perhaps no) layout logic in code.

Since 2012, Auto Layout has featured again and again, with considerable tool improvements. Suggesting that Auto Layout (and now Size Classes) is Apple’s solution for multi-resolution support.
Xcode  Apple_Mac_Development  Apple_iPhone_Development  SitePoint 
august 2014 by GameGamer43
Auto Layout and tab ordering
Because SourceTree has continued to support versions of Mac OS X back to 10.6 (Snow Leopard), we’ve still been using the ‘springs and struts’ approach to user interface layout up to now; we couldn’t adopt the newer Auto Layout without restricting support to 10.7+. So I’ve only just started experimenting with Auto Layout recently, and I ended up getting stuck for a while on something that seemed like it should be really simple, and yet I couldn’t find any hard information about it on Stack Overflow or via Google: how to specify tab ordering.
Xcode  Apple_Mac_Development  Apple_iPhone_Development  Steve_Streeting  Atlassian_SourceTree 
february 2014 by GameGamer43
My Favorite Cocoa Programming Blogs
The end of the year is as good an occasion as any to list my favorite programming blogs and websites. You probably already know most of these but perhaps there are one or two sites that are new to you. Happy new year!
Cocoa  Apple_iPhone_Development  Apple_Mac_Development  Blogs 
january 2014 by GameGamer43
Diff Tools on Mac OS X
Staying up-to-date in a software, writing, or design project is hard - especially when multiple people are working on it. Without the right tools, you won't be able to understand the changes that move the project forward.
Git-Tower  Mac_Applications  Mac_Development  Apple_Mac_Development  Apple_iPhone_Development  Programming  Diff_Tools  DIff 
december 2013 by GameGamer43
LSCTableView: Building an Open, Drop-in Replacement of UITableView
UITableView is everywhere in the world of iOS. Yet, it relies on a relatively unusual API design – delegates, dataSources, and object queuing. Why did Apple design UITableView in such a seemingly confusing way? To understand how this popular class is working, let’s break it down all the way to the UIScrollView and reimplement our own open, drop-in replacement for UITableView…

If you want to follow along in Xcode, the LSCTableView implementation is available on GitHub.
Apple_iPhone_Development  Apple_Mac_Development  GitHub_Repos 
december 2013 by GameGamer43
How to Generate Beautiful Apple-Style Documentation in Xcode 5
Good code should be self-documenting, but sometimes you also need to generate external documentation for reference purposes. In this post I’ll show you how to use two open-source tools and a build script to create beautiful, Apple-style HTML documentation files in Xcode.
Apple_iPhone_Development  Apple_Mac_Development  Apple_Xcode_Plugins  Apple_Xcode 
december 2013 by GameGamer43
Code Signing and Mavericks
Very simply put, you can no longer sign a bundle (like your .app) if any nested bundle in that package is unsigned. These nested bundles are things like helper executables, embedded frameworks, plug-ins and XPC services.
Mac  Apple_Mac  Mac_Development  Apple_iPhone_Development  Apple_Mac_Development 
october 2013 by GameGamer43
In defense of Core Data (Part I)
Core Data has had a lot of bad press lately. To name the dissidents:

Why Core Data is a bad idea
Working with CoreData should be easier
Pain in the Ass
On switching away from Core Data (not so recent but interesting)
Apple_Mac_Development  Apple_iPhone_Development 
september 2013 by GameGamer43
A quick little app to show how to use iTunesLibrary.framework on Mac OS X to display a list of song titles/albums/artists. — Read more
Apple_Mac_Development  Apple_iPhone_Development  GitHub_Repos 
may 2013 by GameGamer43
MailCore - An e-mail library for Mac & iOS
MailCore is a Mac and iOS library designed to ease the pain of dealing with e-mail protocols. MailCore makes the process of sending e-mail easy by hiding the nasty details like MIME composition from you. Instead, there is a single method required to send a message. Checking e-mail on an IMAP server is a more complex beast, but MailCore makes the job much simpler by presenting everything as a set of objects like Messages, Folders and Accounts.
MailCore  Email_Library  Apple_Mac_Development  Apple_iPhone_Development 
may 2013 by GameGamer43
The Company and the Cocoapod
Companies should make a Cocoapod for their commercial SDKs
Cocoapods is a dependency manager for iOS and OS X projects that makes it easy to integrate 3rd party software. It’s just like Ruby Gems, right down to being written in Ruby. The vast majority of open-source Objective-C projects have been made into Cocoapods, but unfortunately many commercial libraries have not been (or else are maintained by their users, rather than the companies themselves). I urge companies to make a Cocoapod for their SDK.
Apple_iPhone_Development  CocoaPods  Apple_Mac_Development 
may 2013 by GameGamer43
You Don’t Need The Xcode “Command Line Tools”
When Apple made Xcode into its own app bundle it greatly simplified our lives as developers. This enabled incremental updates for the stable version can get from the app store. Also you get updates the same way as updates for other apps.

To cut down on file size Apple made several items optional downloads, like the documentation, older versions of Simulator or Command Line Tools. The latter you need if you are building stuff outside of Xcode, like Open Source projects. You know, bare knuckles, command line geekery.

However those tools are not needed if you want to say use svn or git. This article explains why.

When you download and install the “Command Line Tools” they integrate with your Unix file system structure the same way a compiler and header files would. The installer copies these files all over the place. All these tools (and many additional ones) are already included in as they are remote-controlled from Xcode when you build apps. Now if you update via the app store then the copies of these tools remain their current versions.
Apple_iPhone_Development  Apple_Mac_Development  Apple_Xcode 
july 2012 by GameGamer43
Introduction to The Objective-C Programming Language
The Objective-C language is a simple computer language designed to enable sophisticated object-oriented programming. Objective-C is defined as a small but powerful set of extensions to the standard ANSI C language. Its additions to C are mostly based on Smalltalk, one of the first object-oriented programming languages. Objective-C is designed to give C full object-oriented programming capabilities, and to do so in a simple and straightforward way.

Most object-oriented development environments consist of several parts:

An object-oriented programming language

A library of objects

A suite of development tools

A runtime environment

This document is about the first component of the development environment—the programming language. It fully describes the Objective-C language, and provides a foundation for learning about the second component, the Mac OS X Objective-C application frameworks—collectively known as Cocoa. You can start to learn more about Cocoa by reading Getting Started with Cocoa. The two main development tools you use are Xcode and Interface Builder, described in Xcode Workspace Guide and Interface Builder respectively. The runtime environment is described in a separate document, Objective-C Runtime Programming Guide.
Apple_Development_Documentation  Apple_Mac_Development  Apple_iPhone_Development 
february 2011 by GameGamer43
Introduction to Secure Coding Guide
Secure coding is the practice of writing programs that are resistant to attack by malicious or mischievous people or programs. Secure coding helps protect a user's data from theft or corruption. In addition, an insecure program can provide access for an attacker to take control of a server or a user's computer, resulting in anything from a denial of service to a single user to the compromise of secrets, loss of service, or damage to the systems of thousands of users.

This document discusses several common sources of vulnerability in programs and gives advice on how to avoid them, with special emphasis on programs that run on the Mac OS X, Mac OS X Server, and iOS operating systems. If you write code that runs on Macintosh computers or on iOS devices, from scripts for your own use to commercial software applications, you should be familiar with the information in this document.
Apple_Development_Documentation  Apple_Mac_Development  Apple_iPhone_Development 
february 2011 by GameGamer43
Mac vs. UNIX line breaks UNIX
If you're having trouble getting something to work right, and that something is based on a text file (for example, a Perl CGI script or a page of HTML), make sure you don't have any hidden Mac line breaks (also called line endings) in the file!

If you installed or modified the file using a GUI-based tool, there's a chance you accidentally inserted Mac line breaks. I know (from personal experience!) that Mac line breaks can make both Perl scripts and static HTML pages non-functional if they show up in the wrong spot. Read the rest to see how to find and remove the line breaks...

How can you tell? Start a terminal and open the file with the vi text editor. It's important to use vi, as the other editors will hide control keys from sight.

If you see a bunch of ^M's in the file, you have Mac line breaks. There are some shell commands [editor's note - see the comments for a one-line perl command to fix your files!] that can auto-replace them, but I just used a Mac text editor (either jedit, BBedit, or Alpha) and re-saved the file, making sure to specify UNIX as the file type.

This problem can be very difficult to diagnose, especially if you normally edit in Emacs, and try just cat'ing the file at the command line. In both cases, you will not see the ^M's, and won't understand why your file isn't doing what it should!
Apple_Mac  linux  programming  linux_development  Apple_Mac_Development 
february 2011 by GameGamer43
360 MacDev: Josh Abernathy on the mechanics of good UI design
As the 360 MacDev conference continued in Denver today, the attendees had a chance to stuff their faces with apple pie courtesy of a vendor, and then sat down to here a talk by Josh Abernathy of Maybe Apps on the mechanics of good UI design. Josh started by making a distinction between graphic design (making something pretty) and interaction design (making something that is a joy to use).

Abernathy was primarily focused on the graphic design of applications. He suggested that many developers hire a graphic designer to do this job, as programmers aren't necessarily good designers. Pixie, a UI "explorer" that is included in the Apple Developer Tools, was noted as a simple and useful assistant for seeing the closeup details of how other developers have achieved a certain effect.
december 2010 by GameGamer43

related tags

Apple_Development_Documentation  Apple_GrandCentralDispatch  Apple_iMessages  Apple_iPhone_Development  Apple_Mac  Apple_Mac_Development  Apple_Mac_Open_Source  Apple_Metal  Apple_Push_Notifications  Apple_Swift  Apple_Swift_Opensource  Apple_WWDC  Apple_Xcode  Apple_Xcode_Plugins  Ash_Furrow  Atlassian_SourceTree  BigNerdRanch  Blogs  BSD  C  Cocoa  CocoaPods  Craig_Hockenberry  Database  Debugging  DIff  Diff_Tools  DTrace  Email_Library  Encryption  Facebook  Facebook_OpenSource  Git-Tower  GitHub_Atom  GitHub_Gists  GitHub_Repos  Google_Analytics  Google_Android_Development  iPhone_Development  JSON  Kdebug  linux  linux_development  LLDB  Mac  Mach_Kernel  MacOS_Sierra  MacPaw  MacPaw_Opensource  Mac_Applications  Mac_Development  Mac_OS_X  MailCore  Mobile_Development  NatashaTheRobot  NETTUTS+  NetworkWorld  NSHipster  Objective-C  Parse  Parse_Blog  Paul_Solt  programming  Programming_Tools  Python  Ray_Wenderlich  ReactiveCocoa  RoadFire_Software  SitePoint  Spotify  Spotify_Opensource  SquareUp.com_Opensource  Steve_Streeting  Strace  Swift  SwiftLang  TDD  VIM  VirtualBox  VMware  Xamarin  Xcode 

Copy this bookmark: