Confederacy, Heroes, and Romans 14

I’m simply going to start with this, because it’s the point of all of this really:

Do not, for the sake of food, destroy the work of God. Everything is indeed clean, but it is wrong for anyone to make another stumble by what he eats. It is good not to eat meat or drink wine or do anything that causes your brother to stumble. – Roman 14:20-21

Let’s say, for the sake of argument, that everything you are arguing about the Confederacy and the “heroes” (in your words) of that time is true. Let’s also say, for the sake of argument, that the only part of that time in history you are trying to celebrate is your heritage, Let’s also say, for the sake of argument, that the history of slavery and oppression of people is not part of that heritage you are trying to remember and honor. With all that, how do you still answer Paul’s charge about stumbling blocks? How can you, knowing what the imagery looks like to other people, especially those not of the caucasian pigmentation, continue to hold it up and fight for it?

Paul says that it is better to not eat meat or to abstain from drinking for the benefit of those that might struggle with those things and their pursuit of God. So as a Christian, how can you go about trying to uphold something that is so much more grave and important then eating meat and drinking wine when you know it causes a stumbling block to your brother?

So please, if you consider yourself a Christian, I implore you to wrestle with the words that Paul wrote: “But rather decide never to put a stumbling block or hindrance in the way of a brother.” – Romans 14:13b

Confederacy, Heroes, and Romans 14


I’m sitting here typing on, what is no question, a very beautifully designed piece of hardware that I just paid $2799 (+ tax) for. But the question in my mind: is it really worth it?

The answer: I really wish it was, but for me, it’s simply not.

There are good things about it, but at the end of the day, and maybe it’s partially because of all of the gloom in the political climate as well that has me melancholy as well, but I just don’t see myself having a long-term future in the Apple ecosystem, if the current trend continues.

This is what I’m looking to upgrade at home in the near future as I’m moving out of our temporary rental into our new home:

  1. Workstation
  2. Wireless router setup
  3. Home entertainment center
  4. Home Picture Management
  5. Secondary gaming machine

A few of years ago, I was under the impression that we’d be getting some better Mac Pro options that weren’t just tailored to heavy graphic workstations.

A few of years ago, I was under the impression that we were on the brink of getting better HomeKit wireless networking.

A few of years ago, I was under the impression that Apple was going to be really stepping it up with TV.

A few of years ago, I thought Apple was finally on the course to make managing my digital picture and movie life better.

It’s now been a few years. As I sit here in the present, this is the only thing I see coming out of Apple: thinner and lighter. Sure, there is some interesting stuff in the periphery, like ARM-based Macs. But honestly, what else is there? I don’t know.

The latest “Mac” event, and I use that term extremely lightly, hinted at what I truly believe Apple thinks (or at least thought at the time, maybe they’ve started to revisit that notion), that this is the future of the Mac ecosystem:

The MacBook Pro hardware setup

A silly image of Mac’s connected to ugly crap – or, what Phil Schiller actually presented.

That’s just not Apple to me.

When I was picking up this MacBook Pro at the Apple Store, there was an old Apple Cinema Display.


I had forgotten just how beautifully clean those monitors were. It made me sad. What also made me sad as I looked around the store: the shear dominance of everything but Macs.

It seems clear that the future Apple wants is not the future that I want for it. That’s ok. But maybe that just means it’s time for me to move on too. If four of the five solutions above I need to satisfy in the near future simply cannot be an Apple product, it might finally make sense to go back to having my workstation not be one anymore too. After all, a Mac is really only needed for the code signing and App Store submission process these days anyway.


More Touch Bar Thoughts

The more I use the Touch Bar (or rather, look at it wishing it actually did something useful), the more I’m thinking of all of the missed opportunities. Fortunately, these aren’t fundamental design limitations, but only limitations with what we have to today.

Here’s a list of what I actually want in the touch bar:

  1. Fully customized Touch Bar region with Control Strip (we only have the “extended control strip option” today, and it’s missing functionality compared to the control strip present with the app controls enabled).
  2. APIs to add items into the control strip portion, like both iTunes and Xcode can do. I’m guessing that this will eventually come.
  3. Automator support to build up custom control strip items. This is a fantastic use case as it allows me to dictate what my quick and easy commands are. Though… with the announcement of the termination of both Sal and his position, I’m greatly concerned that Apple is becoming quite clueless here.

Those features above, those are “pro” features. Contextual app elements, especially those that are simply showing the same stuff in the app, like the “save” and “cancel” buttons (I mean really? I’d love to have been there for the conversation on how is such a great feature, are, in the nicest terms possible, a supremely weak use case.

I’m hopeful that things will get better. Maybe the control strip API support was just not ready yet (it is already a super buggy area. Once you have iTunes or Xcode open, you’ll get an empty icon in the control strip).

I guess I’ll continue my waiting for the “pro” Apple.

More Touch Bar Thoughts

The Touch Bar

This basically sums up my experience with the Touch Bar after using it for a day:

Overall, I think it is a huge usability nightmare.

Really, it’s pretty terrible. The screenshots make it look a lot better than it actually is. From a first take at the bar itself, it suffers from two really unfortunate limitations:

  1. No haptic feedback, there’s not even any auditory feedback that you’ve pressed or interacted with something.
  2. It’s blurry. It’s rendered right next to the super crisp and clean lines of the MacBook Pro, the keyboard key text, and the beautiful retina display – it really looks out of place.

This screenshot does not accurately represent the quality that is actually rendered.


It actually looks nice and crisp there. But no… I don’t have a good enough lighting or camera setup to take a picture that accurately represents what the Touch Bar looks like in real life, but the best comparison I can think of is the difference between the non-retina and the retina iPhone displays. And you always have them side-by-side to look at things. I can feel my eyes re-focusing on them the bar and the screen as I look up and down from it.

Not only that, I’ve not found an app yet where I’m like, “oh, yeah, that’s really convenient that you’ve rendered stuff down in the touch bar.” You can see the screenshot above with the tabs… maybe that’s cool to you, but it takes significantly more effort for me to find the correct tab and navigate to it using the touch bar than to simply click or cycle through the tabs in Safari.

If anything, having the touch bar really makes it so I want to actually just touch the MacBook Pro’s screen. This is especially true during the configuration of the bar.

Maybe I’ll grow to like it over the next week or so, but my initial reaction is: wow, this thing is pretty crappy.

Thankfully there are options to hide the contextual app controls – they can be brought back up with a press of the “fn” key. I’ve customized my bar to leave it like this:


Maybe I’ll press “fn” every once in a while to see what apps have to offer, but most likely not. At least in this mode I don’t have to deal with the constant peripheral flickering I see as I navigate between apps.

The only thing I’ve liked about it the Touch Bar so far is the Touch ID integration. That’s been nice. However, if there was a proper 15” model with function keys, I’d return this model tomorrow morning.

Update Thursday, Nov 17th.

One thing I’ll add here: I think the biggest miss with the Touch Bar is that contextual UI in the bar is just not good. However, the power, that I think is really poorly executed, is the ability to control apps that are not the front-most apps.

You can do that today, but it appears that the only way to do it is to have the contextual UI available as well. Otherwise, you lose access that functionality. See below with the iTunes item within the Control strip and then that item expanded.


What I want, is to have the ability to have those attachments in the control strip attached to the Siri button, like in the default Touch Bar setup.

But alas, I see no option here to help with me that:


That functionality would make the Touch Bar significantly more useful. Contextual use within the currently opened app… still not feeling it.

The Touch Bar

Electoral College

I keep seeing this float around:

I think this is a terrible idea. At the very core of our country, we are a federalist nation. That is, we are supposed to have strong state governments that are stitched together by a single governing body. Now, we can argue that we’ve continued to let this principle erode over our country’s lifespan, but I would argue that today we are seeing just how costly of a mistake that could become.

The point of the Electoral College is summed up here (we should not overlook that slavery also played a role too2):

To reject the Electoral College is to reject the very founding principles of the Constitution. The Electoral College serves a similar purpose as jury nullification: it provides the people the ability to fix the outcome when something is not right. Here are some examples of it working:

Also, people talk about the voting power of the states. This comes from the balance of not having small states overwhelmed by larger states as each state gets the number of representatives plus the number of senators. So smaller states will obviously have their senate weight count more. Here’s a look at what that might look like with out election:


Source: My Normalized Electoral College Sheet 

In other words: Clinton still loses. It also shows that California, Florida, New York, and Texas are the only states that would gain four or more Electoral College votes. So maybe it’s simply time to readjust the allocation again.

Now, people say that Clinton will win the popular vote by a “huge margin”1. I guess I just don’t find 1.5% of the population warrant the usage of “huge margin”. Also, I simply don’t buy the assumption that Clinton would still come out on top of the popular vote if those were the rules going into the election. It’s easy to say if we changed the rules now, she’d win, but that completely negates the strategy of the GOP this entire election. They knew they did not need the popular vote to win, so why go after it?

Until December 19th, there is still a potential recourse. There are many dangers with Trump that are outside of the typical Democrat vs. Republican policy arguments. I won’t get into those now. However, if you actually try to repeal the Electoral College, you remove the States last recourse at stopping an election outcome like this.

Here’s hoping they do.

  1. New York Times, Clinton’s Substantial Popular-Vote Win:
  2. Times, The Troubling Reason the Electoral College Exists:
Electoral College

A Christian in America – A Personal Story

I saw this stat that said that 85% of Evangelical Christians voted for Trump… I don’t get it… I mean, I do in a way, but it breaks my heart that they cling to a name they so clearly do not espouse the virtues of.

I’m a Christian. I believe in the Bible. I believe many things from the Bible that you’d probably call me a fool for. That’s fine. You can think of me what you want.

But here’s the thing, you can basically summarize the entirety of the Bible down to this, the only new commandment Jesus gave his disciples:

34A new commandment I give to you, that you love one another: just as I have loved you, you also are to love one another. 35By this all people will know that you are my disciples, if you have love for one another.

John 13:34-35 (ESV)

Now, that means more than I think many people realize as it’s not a romantic, wishy-washy type of love that we are so accustomed to in our culture. It’s not even a brotherly or camaraderie type of love. This is ἀγάπην (agápe) love: the unconditional love for another (especially in the context of God’s love for us). Thomas Aquinas defined it as, “to will the good of another”.

There are few modern day examples of this love demonstrated better than by the life of Dr. Martin Luther King Jr. He dedicated, and ultimately had taken, his life to see this realized throughout our country. To change the mentality of a nation so that it wouldn’t look at one another with disdain, but that we could see each other as a person with thoughts and ideas and wouldn’t be judged by the color of our skin.

And this, this is why I’m so heartbroken at those that call themselves Christian and voted for Trump. Today, the nation voted for someone that is the antithesis of everything that is at the heart of Christianity and at the heart of all the good things from the Civil Right’s movement.

When you voted for Trump, you voted to enable and empower this, whether you wanted to or not:


muslim attacks.PNG


Were there racist people before Trump? Of course. Did they act out? Of course. Were non-whites disenfranchised and belittled by even our government? Of course. However, Trump has finally given that hate a legitimate platform that they have been lacking for many decades. Even if Trump himself doesn’t want it to happen, maybe he’s more indifferent to it all, it’s unleashed now.

I do pray that our last line of defense in our government, the Electoral College, stands up for what America should be, and does not hand the presidency over to Donald Trump.

Either way, we are at the brink of a social revolution. How far, how quickly, and how extreme will it be? I don’t know, but I do know that we’ve finally arrived at the precipice.

A Christian in America – A Personal Story

Where To Go From Here

There’s been a lot of hoopla about Apple’s latest event. I’ve blogged on it and a good summary of lots of opinions about the topic can be found here: This post is more of an introspective piece about me, so fair warning.

I’m what you’d probably call a mid-time Mac user. I used Macs growing up in school and learned my first “real” programming language on one during school (Pascal). However, I didn’t actually start owning Macs until the Intel transition. At the time, I was fairly deep in the Windows platform. My first computer that I had purchased (my actual first computer was a Packard Bell, 486 25MHz machine) with my own money was one of the first convertible laptops that Microsoft helped usher out: the Toshiba Protégé 3500.

Mind you, this was like back in 2003. Pen computing was new (at least in the consumer space), and it was going to be huge. Well… or so I thought. Turns out, the novelty wore off pretty quickly. The hardware and the software just wasn’t very compelling. The truth is, even over the years, there’s not been a single Windows PC that has ink that really felt much different than that Toshiba.

I had been eyeing the Mac for some time. I’d even used one of the old white plastic iBooks that a friend lent to me to help on a project. I was pretty turned off because I thought the hype of Mac OS was supposed to be better than this! It turns out, those iBooks were just pretty terrible machines. Their touch pads sucked and they were missing a bunch of the features that their bigger brothers, the PowerBook had.

Now, I wanted a PowerBook, but I simply wasn’t able to give up running Windows. Also, as a freshly out-of-college graduate, I certainly didn’t have the money to buy both a PC and a Mac, even though I did just land a job at Microsoft (which I still work at today, for full disclosure). It turns out living in Kirkland is pretty expensive.

And then the announcement:

I was sold. Done.

Over the next 12-18 months, I would transition over to Mac OS X for all of my home use. Eventually, the Windows Boot Camp partition would be gone. It’s hard to explain exactly, but there was just something so refreshing and so emotionally engaging about OS X. I know that doesn’t exist for everyone, but for me, it was a huge pull. It’s why I still use a Mac today. It’s why even after using Win 10 with all its improvements (and sadly the only real vessel for playing games), switching back to my Mac just feels like home.

Over the years I’ve got to see the Mac flourish, OS X make great improvements, the iPhone, and the iPad. It was a really great time to be an Apple enthusiast. It seems like every product that came out was, “YES, I WANT! DONE!”.

And then the “big” iPhones starting coming out. And then the WATCH came out. It’s kind of ironic as this was near the end of the time that Apple was making fun of fragmentation in the Android market, and well, here we are with fragmentation of a different sort now: form factors and platform variations. But for me, this was also the first time since 2006 in which I didn’t want to buy what Apple was creating.

Side Note: I have an WATCH series 2 now, and my quick review would be: it’s ok. I set my expectations low going in as I only wanted it as a watch and a fitness tracker. It has reminded me how much I miss wearing a watch though. 

No big deal right? More consumers in the space now, more needs and compromises to be made. Yeah? Maybe. But the cracks were already showing with each software update adding new features and not fixing bugs – some of which that have been around for years now, like the incomplete progress bar – ok, an exaggeration, they were fixing some of the bugs. But there was a lot of stuff that was just not working well or at all (Maps, iCloud, and MUSIC as examples). Sure, some of this has gotten better, but some not, and some has just changed to a new kind of pain.

Then we got the PENCIL. I went to the Apple store to use one, it felt great! Remember that Protégé from above? Nothing like that. This was smooth, almost no latency, awesome. I have an iPad Pro. How often do I use the PENCIL? Honestly cannot tell you the last time. Frankly, how much do I use my iPad Pro? Remember all those Apple jokes about a giant phone app on an Android tablet? Yeah… say hello to iPad apps on an iPad Pro.

We also got Swift. The “Objective-C without the C” language. Now Swift has a lot of nice features in it, but it’s a pain to use right now. The tooling (namely Xcode and the debugger) is really terrible, it’s extremely unstable from version to version. It has huge discrepancies between optimized and non-optimized builds in terms for performance, and in some cases, functionality (though I think nearly all of those are fixed now). I could go on, but the point is, Swift is not really the language for me at the moment (nor is necessarily the direction I’d hoped for, but maybe I’ll reflect on that more later). That will definitely change when things settle down, but it’s not there yet, including some of its broader cross-platform implications.

But, like I’ve said, I’m in desperate need of a new dev machine, but:

Luckily there is the event, “hello again”, right?

Let’s start with TV. Besides the obvious “TV in a TV” jokes because of the questionably lazy design of the app icon… wasn’t is just last year that Cook said, “We believe the future of TV is apps”? And now, you’re going to shove all of this “content” into a single location… well, not all of it as TV is still missing Amazon Prime and the new app doesn’t include Netflix. This covers the rest better than I care too:

And of course, the MacBook Pro, or the MBPTB (MacBook Pro with Touch Bar) edition. You know, I’m torn on this. The Touch Bar seems gimmicky. It also seems like it’s something that is just really not that usable in the same way that the tactile functions keys are (which I do use). I can also see how much of the entire demo that was featured could be done in the UI as well, and in many cases, just as well, if not better. But besides the touch bar, the performance updates just look, well, rather lackluster? The questions come up:

  • Why not the Nvidia 1060 and 1080 chips?
  • Why not sacrifice some thinness gains for more power or more battery life?
  • Why not the 7th generation Intel chips?
  • Why not more than 16GB of RAM?
  • Why not …?

After reflecting about it some more, I think the answer is simply: because Apple can. Every update to the MacBook and MacBook Pro have been wrought with various trade-offs. Sometimes we mock the choices, but even in my poking, I’m glad there is a company that is trying to push just how thin can we get a computing device. I don’t think Apple is willing to stop until it’s paper thin.

Sometimes it’s really disheartening looking out at the PC landscape of hardware and seeing all of these options that make different sets of trade-offs. Maybe those trade-offs align with more of what I’d like personally, which make it even more troublesome. Do I really want to buy a new PC? Is that where I want to move to? I mean, I play games on a PC, but I’m reserved to that fact already that Mac has just lost the battle there as is unable to recoup.

Now, the MacBook Pro is not everything I want in a laptop. It is most certainly not everything that I want in a desktop computer. But, when the dust settles, it’s still a Mac. With all of the warts that macOS has, with all of the mind boggling decisions that Apple makes with some of their products at time, is there really any other platform I’d rather be using?

No. The answer is that I do not want to. Even with many things at Apple seemingly going a direction that I might not like, I still have hope that Apple can start to tighten the reins in (if the rumors of project Titan being cancelled or scaled way back are true, I think that may be a good indication that some retraction is indeed starting).

And who knows… maybe the Mac Pro will get updated in March. Maybe Apple is on a three year cycle with it because it thinks that’s roughly the upgrade cycle of desktop Mac users. I don’t know… but I do know that I cannot risk waiting until then only to be potentially severely disappointed by a lack of announcement.

But, if this it the slow, twisted demise of macOS, then I guess I’m going to ride it down to the ground.

Where To Go From Here

Hello Again

Last Thursday’s event was a pretty hard hit to me. I have a lot of feels about the event, but this piece probably captures them better than I can articulate right now, The Future of the Mac, or, What The Hell Just Happened.

To me, Thursday’s event signaled one thing for me, and maybe I’m completely wrong, but the Mac is officially over. The sunset is calling, and until that sunset arrives, this is the future:

The MacBook Pro hardware setup
The MacBook Pro hardware setup

And fine… I could resign myself to that if Apple would throw a bone and actually give us the option to build out a computer that fits our hardware needs and not just what, at this point, is just a check box for size and weight reduction. I know, blasphemy, right?

Apple, the MacBook Pro is not a pro-level computer. It’s simply not.

You want to see what a pro-level laptop looks like? Look at the Razer lineup. They are crushing it on terms of performance and style in hardware design. Sure, it looks a lot like a MacBook Pro, but isn’t that what we want?

The 14” Razer is 17.9mm (height) x 345mm (width) x 235mm (depth) and weighs between 1.89kg and 1.95kg.

The 15” MacBook Pro is 15.5mm (height) x 349mm (width) x 240mm (depth) and weighs 1.83 kg.

So yeah… we are talking a mere 2.4mm (less than 1/10th of an INCH!!!) and 0.06kg or 0.12kg.

Yeah yeah, specs only tell part of the story and there of course is no Touch Bar, or Apple Pay, macOS in the Razer. And yes, the battery life in the Razer is not as good. All trade-offs. However, you’re marketing these as for professionals, so let us in on the decision for what we think is import.

Look, Apple, you have two lines of laptops that already cater to the ultra-portable and ultra-light: MacBook and MacBook Air. Would it be so difficult to actually build a real MacBook Pro line? Here’s the thing, you don’t even need to change the current shipping devices (other than more RAM, I mean, come on!) other than add one more item to your accessory stack: external docking/graphics enclosure.

Would I prefer the option of putting an Nvidia 1060 or 1080 in the laptop: yes, of course. However, I’m willing to face the truth if you are: we are living in a transitionary period, so let’s compromise somewhere.

I guess my point is this: Apple, stop telling professionals what they want and need in their machine. If you’re not going to be willing to build those machines, let companies like Razer build them for you.

Hello Again

On Demand Resources and Games

Alright, this article over on that was linked by Darring Fireball talking about how on-demand resources isn’t going to be a problem for games got me a bit riled up.

On-demand resources is fine for some classes games. However, this is not true for games like XCOM. The desktop version of this game clocks in at 20GB (Enemy Within)1. There is no amount of tagging, stripping, or slicing that is going to get a company like Firaxis Games to deliver a desktop quality game on Apple’s supposed desktop class hardware because desktop (and console) quality games are bigger than 2GB.

Let’s take the defense of this, from the article:

But: You have a 4GB game! How do you get those other 25 levels?

Easily, thanks to the power of background processing. On-Demand Resources works in conjunction with whatever your user is actively accessing, and will flush older, unused content to make room for additional resources. If a user is playing level 24 of your game, the system automatically flushes a few 100MB tags of old levels (say, 1-5) to make room for levels 25-30. As the user gets further into your game, older levels drop off and get deleted from the Apple TV, and your new levels (also in tag bundles) get installed – all in the background.

Let’s just play out this scenario: I am playing a game and I’m on level 25 (older levels are now purged because 2GB is enough for any game). Now, my son or daughter comes in and they want to play, but they need to start a new character because they haven’t played before. Ok, they to go play the game…

beach ball of death

Oh… pardon me, I need to download those levels… Meanwhile, while this is downloading, other resources are being dumped out (I sure hope they are not the levels that I’m playing). You see, there’s no telling how much overlap between game assets are going to be between levels 1-5 and 25-30. If a game is 10~15GB, it’s reasonable to assume that there is not a lot of overlap of resources between levels as you progress through the game.

The kids get tired of waiting for the levels to download, so they go do something else. I then go and try to play my levels, and of course… data has been purged and more assets are coming in. This is fun!

There is another description for this phenomenon in computer science: thrashing.

Now, this probably works better of iOS devices because those are mostly single-user devices. However, the TV is centralized and consumed by multiple individuals.

It’s decisions like this and the game controller decision (which is a fascinating case of stealth documentation changes) that tell me Apple just doesn’t care to really enable high-quality gaming on tvOS. Instead, companies are going to basically bringing their iOS versions over, which I find so disheartening. Especially since disk space is so cheap these days; put a 1TB fusion drive in the device and charge $50 more or stop teasing us with actually making the iOS and tvOS platforms a contender for more than just casual games.

  1. Now, Firaxis stripped out a LOT and was able to get the iOS version down to 2GB. However, it took a big hit on what it could actually deliver.
On Demand Resources and Games

Modern Web Development… /sigh

Yesterday I thought it would be a good idea to see just how big an article on my blog was…

Profile Picture: 4.5MB for the size

Um… 4.5MB for an article about coding? That seems, a bit excessive?

So I went digging in to see what the heck was going on. Over half of that was for simply adding Disqus support. Seriously? Over 2MB for a comment system? And a comment system that can't even properly format posts? WHY?

Alright, so that's gone.

Where's the rest of it? Well… another 400KB or so was for the webfonts that I was using. Do I think the previous font looked better? Yeah. But come one! 400KB for slightly better looking prose. Nope, sorry, gotta go.

Another culprit of wasted space was the "me" picture on the left. It was a PNG file that was roughly 600KB. Yikes! The PNG version is down to 29KB.

After a bit more tweaking, I got the site down to about 360KB (for articles, content with images is obviously larger). This is still stupidly large for what is actually going on. Also, the page load time has gone from 1.42s down to 143ms.

Profile Picture showing the latest results

But I still have a bunch of cruft in there. Unfortunately, this last layer, to actually stream-line out, requires a complete rewrite of everything in there.

This is where I have the biggest issue with development today, and it's not just web developers: developers have become complacent in being wasteful for the benefit of their own development ease instead of considerate of the time and resources they are taking from customers. Every article I had on my page was costing you 4MB of bandwidth (minus any local caching). It took me about an hour of time to reduce the size and render time to about 10% of what it used to be.

We should all strive to do much better than we currently are.

Modern Web Development… /sigh