ipad pro apple keyboard rumor

There’s a rumor going around that Apple is planning a new keyboard and cover with a trackpad for its iPad Pros. I don’t know if it’ll be for the newest Pros it might introduce later this year, or if it will be for all the Pros it has released up to this date. Regardless, I have some experience with such keyboards as I’ve written about in earlier posts, and I’m very ambivalent about whether I want a trackpad added or not.

  1. Cost. The keyboard I have for the 12.9” iPad Pro was made by logi. Even though it’s not an Apple product, it still wasn’t cheap, costing around $100 when I purchased it. I can only imagine how much more the Apple version with integrated trackpad would cost.
  2. Ergonomics. You’ll note in the lede photo that I’ve got my iPhone 11 Pro Max lying on the part of the cover that has no keyboard keys (and which is there in a way for scale). Now imagine that the trackpad is about half that length. I see a cramped space for my hands to rest. I really prefer my pointing device off to the side on a table, and nothing to interfere with where I rest the palms of my hands while I type. You’ll also note how flat the keyboard wrist rest is. The thickness is negligible and contributes to my typing comfort.
  3. Robustness. I’ve already lost one expensive logi keyboard cover on my older, smaller Pro and I have no desire to go through that again. It was lost because it was dropped on one corner and two keys were broken out. That makes the keyboard rather useless, especially if it’s the corner where the cursor keys were located. On the larger cover above the edge of the keyboard is well away from the edge of the device when folded, so if it does get knocked it won’t damage the keyboard (the Pro itself suffered neither damage nor ding).
  4. Size. Having experienced the difference between the small and large Pros, I don’t see how a practical keyboard and trackpad can be combined for the 9.7” or the newer 10.2” Pros. The screen grew larger because the bezels were shrunk, but the overall physical size hasn’t changed.

All of that is based on a conventionally constructed keyboard with mechanical keys. Who knows what Apple has in mind (ignoring the fact that the rumor is true; it may very well be not). But the more sophisticated and complex the device gets, the more expensive it gets. It wouldn’t surprise me if Apple called it the iPad Pro Keyboard, and set a price in the hundreds of dollars for the thing. Which would place it well outside my budget for such a device to be sure. It will be interesting to see what happens later this year, but I’m pretty sure I’m not in Apple’s target demographic if it is released.

About the lede photo; you’re seeing the logi keyboard and cover, with the logi Ergo Max trackball sitting next to it. Using a trackball is much more comfortable than a regular mouse, as I don’t have to move a mouse, and thus, my right wrist stays still. It’s also a Bluetooth capable device and is paired with the 12.9” iPad Pro it sits next to. It works equally well with my MacBook’s Bluetooth radio.

configuring xcode’s clang to compile using a given c++ standard

I’ve been working with C++ lately, particularly the compilers that support the latest C++ standards such as C++11, C++14, C++17, and C++2a (the upcoming C++20 which should be finally published sometime in February). Rather than install gcc/g++ via Brew on my Mac, I’ve been endeavoring to learn how to compile against those standards using Apple’s clang/clang++ compilers.

The unfortunate part for me (at first) was what command line switches needed to be passed to clang to enable the ability to compile a given standard’s code. I was able to determine what those switches were by deliberately mangling a switch in a makefile and then running make. For my troubles I got the following helpful list:

note: use 'c++98' or 'c++03' for 'ISO C++ 1998 with amendments' standard
note: use 'gnu++98' or 'gnu++03' for 'ISO C++ 1998 with amendments and GNU extensions' standard
note: use 'c++11' for 'ISO C++ 2011 with amendments' standard
note: use 'gnu++11' for 'ISO C++ 2011 with amendments and GNU extensions' standard
note: use 'c++14' for 'ISO C++ 2014 with amendments' standard
note: use 'gnu++14' for 'ISO C++ 2014 with amendments and GNU extensions' standard
note: use 'c++17' for 'ISO C++ 2017 with amendments' standard
note: use 'gnu++17' for 'ISO C++ 2017 with amendments and GNU extensions' standard
note: use 'c++2a' for 'Working draft for ISO C++ 2020' standard
note: use 'gnu++2a' for 'Working draft for ISO C++ 2020 with GNU extensions' standard

For example, to compile against C++17, you would use

clang++ --std=c++17 ...

to enable compilation of source code that uses features from C++17 on back. This keeps the tool clutter down on my Mac, which was getting a bit out of hand with the various GCC compilers via Brew. The GCC tools are all very good, but I would rather use clang since it’s delivered by Apple and is a part of the Xcode tool suite available to every Apple user. As of this point in time the Xcode version is 12.1.2 and clang’s version is 11.0.0. One final note, gcc is linked to clang and g++ is linked to clang++.