Apple Is Quietly Replacing One Of Its USB-C Cables

Dieter Bohn, The Verge:

Earlier this year, Apple began a “voluntary exchange program” for USB-C cables that were designed alongside the original MacBook. And now it appears the company is silently updating that cable with a new, better version that still has the exact same model number. According to K, the new cable comes in a rectangular box (don’t buy one in a square box) and is the “best ‘charge’ cable I’ve ever seen.” (It also turns out that Apple is using different cables in its stores than it’s shipping to customers.)

But I’m not going to get into the minutiae of Apple’s exchange program nor the specs of its cables and chargers: the Google+ community is doing a fine job of that. Instead, I just want to point out how much fun it is to watch an experienced engineer essentially do forensic analysis on consumer products. It’s fun even though I know that all this work is only necessary because so many of those products are legitimately dangerous to plug into your devices. Even the simplest thing — delivering a charge over a wire — turns out to be insanely complicated and filled with corporate politics.

If diving into a bunch of Google+ pages isn’t your idea of a fun distraction, can I interest you in a USB-C Reddit thread? Perhaps a spreadsheet of tested, safe USB-C cables? How about an Android Common Compatibility Document that Android Police found? It detailing Google’s “STRONGLY RECOMMENDED” suggestion that USB-C Android devices adhere to the standard and don’t mess with pin-outs or voltages. That doesn’t sound like fun to you?

MQTT Dynamic Library Not Found on Mac OS X

Great article on how to fix your dynamic library linking:

http://qin.laya.com/tech_coding_help/dylib_linking.html

As it turns out, in OS X 10.0 – 10.2, you need the path to the library to show up in there — what you need is for the second line to show something like this:

@executable_path/../Frameworks/libbz2.1.0.2.dylib (compatibility version 1.0.0, current version 1.0.2)

This tells OS X that it should look in the place where the binary is, move up a directory and into the Framworks folder, and the library will be sitting there. Which it is. Indeed, if you run otool -L on the binary of some application in your /Applications folder that has a working frameworks or dylibs in the app package Frameworks folder (try one of the applications from Omni), you can see that this is the case — all of their binaries comtain the right path. But the compiler is not figuring things out right… In fact, as it is right now, you can place the dylib in the same folder that the .app package is in, and things will run properly. But that’s not what we want.

Well, the first thing you can try to do is to use install_name_tool. If you read the man page for install_name_tool, you can actually change the information inside of the executable so that it has the right location. Depending on how the application was compiled, this may or may not work correctly. More specifically, you’ll be able to change the location if there was extra space compiled into the binary to allow space for a longer pathname. Generally install_name_tool will work on binaries, but not libaries. So you can now do this:

% install_name_tool -change libbz2.1.0.2.dylib
 @executable_path/../Frameworks/libbz2.1.0.2.dylib MyFunBinary 

Now try to run the file. Voila! It should work.
However this is somewhat unacceptable, as whenever the binary gets changed — taht is, whenever you recompile your code, this binary is going to get the short end of the shaft and get replaced by a new binary. Now, you could actually set up a shell script that runs install_name_tool every time you build your program, but that’s somewhat of a hack. We might as well try to fix things at the origin of the problem.

Whole article linked here: http://qin.laya.com/tech_coding_help/dylib_linking.html

Samsung Note 7 Exploding GTA 5 Mod Backup Video

Nathan Ingraham, on Engadget

Samsung’s Galaxy Note 7 has been the butt of its fair share of internet jokes since it started exploding in September, but it’s hard to surpass what one Grand Theft Auto V modder did when he turned the phone into an in-game grenade. Apparently, Samsung doesn’t think it’s very funny, though — the company appears to have filed a totally bogus copyright infringement claim on the YouTube video showing this mod.

If you try to watch the video now, you’ll see that Samsung has blocked it by using YouTube’s tools for reporting infringing material. Of course, this isn’t how those tools were meant to be used — they’re for reporting instances in which video or audio is posted in violation of copyright. Using the Note 7’s likeness in a video made from a video game mod doesn’t really seem like what YouTube’s tools are meant to be used for.

Fortunately, that was far from the only YouTube video that shows off the Galaxy Note 7 being used as an incendiary device. Now that the cat’s out of the bag, it’s probably not worth the effort for Samsung to chase down these videos — the company has a lot more serious things to be worrying about right now.

The most un-Apple-like project in the company’s history

John Gruber on Daring Fireball:

Making a platform that Apple would, I can only suppose, license to actual car makers doesn’t sound anything like Apple at all. I’m not disputing Gurman and Webb’s reporting, I’m just pointing out that if true, it’s the most un-Apple-like project in the company’s history.

There are ways to square this story with Apple’s traditional integrated approach. Perhaps they’re thinking, Do the software first, see if we can do something worth making, and if so, buy a car company. But even that doesn’t sound like Apple.

Maybe it would be more like Apple CarPlay where you would need an iPhone to activate self driving…

How To Browse Ionic AngularJS API Docs

Dash, API browser app

Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs (for a full list, see below). You can even generate your own docsets or request docsets to be included.

Dash comes with 150+ offline documentation sets. You can choose which documentation sets to download and Dash will take care of the rest, making sure they are kept up to date. You can also generate your own docsets, request docsets or download docsets from third-party sources.

https://kapeli.com/dash