Making Sense of Color Management
A Book Apart: Get clarity in the tricky endeavor of managing colors from initial design to final product. Learn why colors shift, the science behind the human eye and color profiles, and how to set up...
View ArticleMethod Dispatch in Swift
Brian King: Compiled programming languages have three primary methods of dispatch at their disposal: direct dispatch, table dispatch, and message dispatch, which I explain below. Most languages support...
View ArticleHow to Do XCTestCase tearDown Wrong (and Right)
Jon Reid (via Natasha Murashev): In other words, it builds up the entire set of XCTestCase instances before running a single test. […] setUp and tearDown were invented because the entire collection of...
View ArticleSuper Mario Run
Andrew Webster: Now Nintendo is finally moving with them. Next week will see the launch of Super Mario Run on iPhone and iPad (an Android version is coming later), marking the first proper...
View ArticleiOS App Rejected for Using Pre-selected RSS Feeds
Mike Rundle: Now I know what was taking so long. Rejected because I use… public RSS feeds like 100 other apps. Thanks, Apple. Well, Apple denied my appeal. Interesting (simple news app with...
View ArticleHow to Unit Test Private Methods in Swift
Bart Jacobs: While access control is a very welcome addition with many benefits, it can complicate unit testing, especially if you are new to unit testing. You probably know that you can apply the...
View ArticleAccidentally Quadratic Rust Hash Tables
Accidentally Quadratic: I enjoy this bug for at least two reasons: One, it’s fun technically, allowing us to take a brief deep dive into hash-table implementation – something most of us are normally...
View ArticleWhich Macs Are People Using?
I’ve been thinking about the Mac lineup lately. When will Apple updates its desktop computers? And, when it does, should I switch back to using a desktop as my primary computer? There’s been a lot of...
View ArticleMac Users Switching to Surface
Brian Hall (9to5Mac, MacRumors, Hacker News): Our team gets so excited about meeting new Surface users and hearing their feedback, and we get to meet a lot more this holiday season! From Surface Pro,...
View ArticleSourcery: Template-Based Code Generation for Swift
Krzysztof Zabłocki (tweet): Swift is a beautiful language that powers a lot of great iOS apps. Unfortunately it features very limited runtime and no meta-programming features. This has led our projects...
View ArticleThe Opportunity of Swift on the Server
Stephan Knitelius (via Chris Lattner): Java and other languages that compile to Java byte code run on the JVM. In a world of Docker containers the JVM is just yet another layer eating up resources. The...
View ArticlemacOS 10.12.2 Removes Battery Time Remaining Estimate
Jim Dalrymple (MacRumors, Hacker News, 9to5Mac, Slashdot): Some users have reported problems with battery life, but Apple told me that after a lot of testing they stand behind the 10 hour battery life...
View ArticleUber Whistleblower on Location Privacy
Will Evans (via Christopher Soghoian, Hacker News): “Uber’s lack of security regarding its customer data was resulting in Uber employees being able to track high profile politicians, celebrities, and...
View ArticleThe Discrete GPU and You
Chris Liscio: The combination of a dGPU and lower-capacity battery means that the practical battery life of these machines gets cut in half (or worse) when the dGPU is active. I’m not sure that...
View ArticleEvernote Privacy Policy
Evernote (via Ragnar Tørnquist, Rob Price, Hacker News): To get there, Evernote data scientists need to do spot checks as they develop the technology. If you choose to participate, they’ll see random...
View ArticleThe Businesses Apple Has Left Behind
Stephen Hackett: This year, Apple has exited the external display business and is rumored to be discontinuing its AirPort wireless routers. These developments have left a bad taste in many users’...
View ArticleeBay Is for Suckers
Matthew Sag (via Jeff Atwood): The wonderful thing about eBay when it first arrived was that it freed so many people from the tyranny of small markets. eBay provided a marketplace where trust was built...
View ArticlemacOS 10.12.2 Impedes Safari Bookmarklets
Daniel Jalkut: Safari Bookmarklets that invoke a custom scheme yield a warning like this in 10.12.2. There’s a Cancel/Allow confirmation alert each time you invoke the bookmarklet, even multiple times...
View ArticleAnother Git Catastrophe Cleaned Up
Mark Dominus: At that point I realized that git-filter-branch also provided a less peculiar way out of the pickle once we were in: Instead of using my merge driver approach, I could have filtered the...
View ArticleTouch Bar Crash Protection
Daniel Jalkut: I wrote previously about crashes related to Apple’s Touch Bar. These crashes seem to affect all apps that were built with a certain toolchain. Most likely it affects all apps that were...
View ArticleReplacing Auto Layout With LayoutKit
Nick Snyder (via Dave Verwer): Here’s an example of a layout in the LinkedIn app. It has two labels: there’s a multi-line label on the left, and a single line label on the right. For the right label,...
View ArticleGitHub’s Business
Eric Newcomer (Hacker News): Though the name GitHub is practically unknown outside technology circles, coders around the world have embraced the software. The startup operates a sort of Google Docs for...
View Article“Untranslocating” an App
Patrick Wardle: So, now imagine an attacker has found an legitimate signed application that attempts to load or execute some relatively external content (i.e outside it’s app bundle, but within the...
View ArticleHiding Your Action and Share Extensions In Your Own Apps
Aditya Krishnadevan: In PDF Viewer, we use a UIActivityViewController to share PDFs. This means that our Action extension shows up in the list of actions as well! So a user would see an "Import to PDF...
View ArticleNSRegularExpression and Swift
Nate Cook: Well, many NSRegularExpression methods use NSRanges, as do the NSTextCheckingResult instances that store a match’s data. NSRange, in turn, uses integers for its location and length, while...
View ArticleGolang’s Real-Time GC in Theory and Practice
Will Sewell (via Hacker News): In this blog post, we’ll look at Go’s garbage collector. We’ll see how it works (the tricolor algorithm), why it works (achieving such short GC pauses), and most...
View ArticlemacOS 10.12.2: SSH Starts Asking for id_rsa Passphrase
I have an id_rsa file set up so that I can SSH and Git into my servers. The SSH keys are protected by a passphrase. ssh-agent remembers the passphrase so I don’t have to keep entering it, and it can...
View ArticleSwift: Challenges and Opportunity for Language and Compiler Research
Chris Lattner (PDF, tweet, Hacker News): That said, many of the things we talked about earlier are actually powered by the LLVM JIT, including the REPL, #! scripts, Playgrounds, and the LLDB debugger....
View ArticleUser Automation Blog
Sal Soghoian (tweet): This website is dedicated to informing individuals about the tools at their disposal that can be used by them to control the devices they engage with and rely upon every day. I...
View ArticleLG 5K UltraFine Display Delayed
Ben Lovejoy: LG has confirmed that the 5K UltraFine monitor Apple recommends for use with the new MacBook Pro models has been delayed. A company representative told us that LG does not yet have a...
View ArticleStroustrup’s Rule and Layering Over Time
Dave Herman (via Ehud Lamm): One of my favorite insights about syntax design appeared in a retrospective on C++ by Bjarne Stroustrup: For new features, people insist on loud explicit syntax. For...
View ArticleDTrace at Home
Adam Leventhal: I’m not the first person to hit this. The problem seems to have existed since CS6 was released in 2016. None of the solutions was working for me, and — inspired by Sara Mauskopf’s...
View ArticleHow Apple Alienated Mac Loyalists
Matthew Panzarino (Hacker News, MacRumors, 9to5Mac, Slashdot): “Some folks in the media have raised the question about whether we’re committed to desktops,” Cook wrote. “If there’s any doubt about that...
View ArticleFarewell to the Apple Watch
Matt Gemmell: My usage pattern was ludicrous, given what the thing can do. To me, it was a wristwatch with some notifications, and I was charging it every night. The notional benefit of long-term...
View ArticleMore macOS Preview PDF Trouble
Brooks Duncan (via Eddie Smith): In the comments to my blog post about ScanSnap on Sierra, awesome DocumentSnap reader Alex writes this: Since updating to macOS 10.12.2 I have found that Preview...
View ArticlePyPy’s Hash Table Implementation
Maciej Fijalkowski (via David Smith): One surprising part is that the new design, besides being more memory efficient, is ordered by design: it preserves the insertion order.[…]Here, compact_array...
View ArticleMy AirPods Experience
I’ve only been using them for about a day, but so far it seems like Apple got this one right. The AirPods seem to be exactly what you’d expect: OK audio, easier pairing and device switching, a bunch of...
View ArticleWhat Y2K Was Like at Microsoft
Kareem Anderson (via Hacker News): However, in 1999, a large intersection of people were clearly preparing for the worst in the following year as the Y2K scare ran rampant across the globe. As the Y2K...
View ArticleCwlSignal and Reactive Programming
Matt Gallagher: The careful separation of “input” and “output” and the modelling of reactive programming as a channel is a distinguishing feature of CwlSignal. Other common implementations treat...
View ArticleFixing AVPlayer Playback Transparency
Ashley Nelson-Hornstein: To test this theory, I downloaded one of the videos made in the client’s app, dropped it into Apple’s example project, and made a couple of quick changes so that Apple’s...
View ArticleApp Transport Security Requirement Delayed
Apple (Slashdot): At WWDC 2016 we announced that apps submitted to the App Store will be required to support ATS at the end of the year. To give you additional time to prepare, this deadline has been...
View ArticleConsumer Reports on the New MacBook Pro’s Battery Life
Jerry Beilinson (Hacker News, MacRumors, 9to5Mac): The laptops did very well in measures of display quality and performance, but in terms of battery life, we found that the models varied dramatically...
View ArticleInvestigating ChronoSync 4.7 for Cloud Backup
Glenn Fleishman: We at TidBITS were excited to see ChronoSync add options to use Amazon’s Simple Storage System (S3) and Google Cloud Storage as sources or destinations. ChronoSync 4.7 also added...
View ArticleMac and iOS Trajectories
Riccardo Mori: I have a hard time believing it, but for the sake of argument, let’s say the Mac has reached the end of the line. Let’s say there’s little room left to innovate on the hardware side, and...
View ArticleGoodbye Mint, Goodbye Fever
Shaun Inman: As of today I’m officially suspending sales and support of Mint and Fever. But! As self-hosted software, absolutely nothing changes and you can continue using both Mint and Fever as you...
View ArticlePHPMailer Security Bug
Tom Spring: A critical PHPMailer bug tied to the way websites handle email and feedback forms is leaving millions of websites hosted on popular web-publishing platforms such as WordPress, Drupal and...
View ArticleAmazon Could Be More International
Dave Winer: I bought a gift card for a friend who lives in the UK, but I bought it on amazon.com, thinking that would be great because they’re so international. But it turns out you can’t use an...
View ArticleChristmas Card Mail Merge
Casey Liss: If you’re willing to make precisely zero edits to the address labels that are created from the Contacts app, it’s actually quite easy to print labels. […] For me, I wanted to address...
View ArticleMacBook Pro Ethernet Adapter Benchmark
Paul Haddad notes that Apple’s Thunderbolt to Ethernet adapter is slightly faster than Belkin’s USB-C to Ethernet adapter and uses much less CPU. Unfortunately, the former must be chained with the...
View ArticleAmazon Echo Privacy
John Gruber: There’s an argument that we’re still in the very early stages of voice-driven personal computing. That, for example, Apple is not too late in putting out an Echo-like dedicated appliance....
View Article