You Can Learn A Lot From A Dummy

There is a commonly recurring mistake I see in the world of software product development. This is how the scenario often plays out:

An entrepreneur new to software takes some money and a product idea and makes a particularly fateful decision that will return to haunt him. Perhaps a year later, and perhaps $100k poorer, he re-emerges worse for the wear. To show for it, he has a trash-heap of a product that is slow, a bad user experience, full of bugs, and nearly impossible to maintain. Every attempt to update or make it better costs more and takes longer. Worse yet, there is a high probability that he will need to invest a significant expense in order to salvage or redo the product the right way.

What was the fateful mistake? He gave-in to the siren’s call of cheap off-shore software development. He bought into the idea that you can get $150/hr worth of value out of $12/hour off-shore labor. In the real world it will take him months to discover he actually has a problem. Often the realization may come only after a few cycles of firing one and hiring another off-shore team to try and fix the problems of the previous, only to encounter the same issues all over again. There might be a final moment of realization once he has blown through so much time and money. So many others have made this mistake that it should be learned from without having to experience it first-hand.

The take away:

  • You really do get what you pay for. Worst of all, paying less in this type of scenario actually ends up costing more in the long run. You end up paying much more in time, money, and energy. Everything has a cost - especially cheap off-shore software development.

  • There is only one kind of cheap software - the kind you don’t want. In this regard, software development is like breeding horses for horse-shows. No haircut or fancy trick will hide the fact that your horse is malnourished and untrained.

  • Remember the old crash-test dummy commercial — “You can learn a lot from a dummy.” Learn your lesson from the mistakes of others - those who play the dummy in these repeating situations found out the hard way. Learn from them, and don’t get stuck in the same bad scenario.

  • Find someone with proven experience delivering great software and work with them. Look at what they’ve built. Ensure you feel good about their work, just like you would with an architect, an artist, or any craftsperson — let their previous work inform your decisions more than the promise of a low rate. You will get what you pay for.

Todd Hopkinson
Architecture: Deciding What's Important

My favorite distillation from this article:

“Architecture is about the important stuff. Whatever that is” — Ralph Johnson

And this too:

“…the heart of thinking architecturally about software is to decide what is important, and then expend energy on keeping those architectural elements in good condition“

Todd Hopkinson
From Apple To LoveFrom

Jony Ive’s departure from Apple has some people speculating. Some are concerned about Apple’s direction and leadership. But what does it really mean? For Apple, probably not much at this point. It’s the loss of a pretty major talent at a company full of majorly talented people. Apple’s direction without Jobs at the helm is going where it is with or without Ives.

In my view what it really means for every day consumers is that Apple’s loss is potentially a much bigger gain for us. Ive’s new company will serve clients other than Apple. I anticipate watching Steve Job’s right-hand-man move beyond the role of just Steve’s favored design partner at Apple to something that is separate, new, and fully his own.

Todd Hopkinson
Swift + SwiftUI: That Which We Can Do Together…

WWDC 2014: Write the code. Change the world. Apple reveals Swift.
WWDC 2019: Write code. Blow minds. Apple reveals SwiftUI.

Swift was introduced in a world where Apple developers lived and breathed Objective-c. It did blow our minds, but mainly because no one expected it. It came out of nowhere. How did we change the world with Swift? Or maybe the right question is how did Swift change our world as developers?

Unlike Swift’s sudden arrival, SwiftUI was somewhat expected. Rumors had been circulating so its reveal didn’t really blow our minds. SwiftUI may end up changing our world as developers more than Swift - in the way iOS and Mac development teams are composed and work together. And dare I wonder if SwiftUI will eventually cause a “world-changing” shift with web and Android teams too?

Imagine popular design tools (Sketch, etc) enabling their code-exporting feature to output full SwiftUI for designers to send to the developers to utilize in their programming efforts. A huge swath of work can be reduced to essential parts, eliminating virtually all redundant overlap between the designers and programmers, allowing each member to focus on their particular strengths.

Streamlined collaboration - enhanced by SwiftUI in the workflow pipeline - will magnify the value we can derive from our efforts. We’ll be able to do so much more with less. Benjamin Franklin said, “That which we can do together exceeds that which we can do alone.” SwiftUI is going to play a big part in the coming mobile development world.

Todd Hopkinson
Your iOS App Requires A Privacy Policy

Note that in order to publish your app on the App Store, you are required to have a privacy policy and include the URL to it at submission time.

You can read the full information and requirements document here or just read the relevant excerpt below:

5.1.1 Data Collection and Storage

  • (i) Privacy Policies: All apps must include a link to their privacy policy in the App Store Connect metadata field and within the app in an easily accessible manner. The privacy policy must clearly and explicitly: 

    • Identify what data, if any, the app/service collects, how it collects that data, and all uses of that data.

    • Confirm that any third party with whom an app shares user data (in compliance with these Guidelines) — such as analytics tools, advertising networks and third party SDKs, as well as any parent, subsidiary or other related entities that will have access to user data — will provide the same or equal protection of user data as stated in the app’s privacy policy and required by these Guidelines.

    • Explain its data retention/deletion policies and describe how a user can revoke consent and/or request deletion of the user’s data.

Todd Hopkinson
Magic Little Seeds

On Sundays Walt Disney would take his young daughters to Griffith Park, sit on a bench, eat peanuts, and watch them ride the merry-go-round.

One Sunday Walt said to himself, “Dammit, why can’t there be a better place to take your children, where you can have fun together?”

In this simple moment a magic little seed took root. By the time Walt’s small girls were starting their own families, he was introducing the world to a fantastic new experience - a one of a kind “place to take your children, where you can have fun together.”

Watch for the small and simple things. They might be magic little seeds trying to take root - the small beginnings of great things.

Todd Hopkinson
Human Programming With If/When-Then Plans

1. a planned series of future events, items, or performances.
1. provide (a computer or other machine) with coded instructions for the automatic performance of a particular task.
2. arrange according to a plan or schedule. 

How many productivity/time management systems can you name? The typical solutions that come to mind include Franklin-Covey planning systems, GTD, Bullet Journaling, Hobonichi, and the Pomodoro technique.

Most Professionals used solutions like Franklin-Covey's day planners prior to the digital revolution. When the world went digital, hundreds of digital mobile applications vied to replace the paper-based planners and systems. I wonder why Franklin-Covey has not been able to pull off a good, viable software vision of their systems and principles. In my view there is a gaping hole in all that is presently available, and I still wonder why they don't pursue this disruption avenue. But that's another matter.

The point is that people have long invested in improving their behavior. As long as we're psychologically healthy, people are on the lookout for ways to improve. And so this is where human behavior and programming come together. Programmers make use of if/then statement to program the behavior of physical and digital machines. For humans, It turns out there are some very interesting experiments that suggest that If/When-Then statements are an effective tool we can leverage toward our goals and achievements. Apparently it is so effective that it can result in a 2 to 3x increase in the likelihood of achieving our goals.

With If/When-Then planning, rather than relying merely upon the goal statement, such as "I intend to reach X", instead you essentially plant in your mind a trigger or an intention with a statement such as, "If situation Y is encountered, then I will initiate goal‐directed behavior X." As author Robert Cialdini describes the technique, if the goal is to watch your weight, you would pick a cue and link an action to that cue such as, "If/when, after my business lunches, the server asks if I'd like to have dessert, then I will order mint tea."



Todd Hopkinson
Pro Tip: Demo On-screen Using Real iPhone

This post actually contains two Pro-Tips. They are summarized by the boy scout motto: Be Prepared.

First, always carry a cable for your iPhone. Always. I was in an important meeting once and an associate was suddenly asked if he could show something from his iPhone. He couldn't because he didn't have his cable on him, therefore couldn't plug in and demo what he needed to from the iPhone. Fortunately, I had one coiled up in a pocket, swiftly shifted it to him, and he was able to present as expected. The day was saved... or at least the meeting. It turned what would have looked like bumbling inept bozos into pros.

This part is the meat and potatoes of this Pro Tip. One of the simplest ways to show your real iPhone on screen is to connect it to your computer via the cable you deftly fetched from your nerd-pocket and then start QuickTime Player. From QuickTime Player's File menu select File > New Movie Recording... and at the center of the screen a control will display with a red circle button, to the right of that button is a downward white chevron arrow, click that and select your iPhone. Now your iPhone's screen is streaming right onto your computer screen and you can share however you want at this point. 

Don't be caught in a meeting with your pants down - always expect to present what you're working on and have a way to do it. Yoda says "do or do not..." If you do not, it's probably because you didn't prepare.

Todd Hopkinson
Commandment #4: Create A Wienie

I'm convinced that "Mickey's Ten Commandments" are universally applicable to all staged experiences. Marty Sklar's One Little Spark offers an insight into Walt's term for "visual targets that lead visitors clearly and logically through an experience."

"Years ago, when the first exhibition of treasures form the tomb of Egypt's King Tut first traveled to American museums, the staff at the Los Angeles County Museum of Art asked John Hench to review their layout for the exhibit. According to Hench, they had placed one of the exhibit's true treasures, the boy king's exquisite golden mask, at the very beginning of the exhibition. John told me he immediately saw its location as a showstopper that would impede movement into the exhibition; so he moved it to the very end of the show--making it the visual wienie that helped move the audience into and through the presentation."

-- One Little Spark, pg. 35

Todd Hopkinson
Thanksgiving Proclamations

On this Thanksgiving day, we recognize America's two most revered leaders for their profound and inspiring thanksgiving proclamations:

George Washington's Thanksgiving Proclamation -- New York, 3 Oct 1789

Whereas it is the duty of all Nations to acknowledge the providence of Almighty God, to obey his will, to be grateful for his benefits, and humbly to implore his protection and favor—and whereas both Houses of Congress have by their joint Committee requested me “to recommend to the People of the United States a day of public thanksgiving and prayer to be observed by acknowledging with grateful hearts the many signal favors of Almighty God especially by affording them an opportunity peaceably to establish a form of government for their safety and happiness.”
Now therefore I do recommend and assign Thursday the 26th day of November next to be devoted by the People of these States to the service of that great and glorious Being, who is the beneficent Author of all the good that was, that is, or that will be—That we may then all unite in rendering unto him our sincere and humble thanksfor his kind care and protection of the People of this Country previous to their becoming a Nation—for the signal and manifold mercies, and the favorable interpositions of his Providence which we experienced in the course and conclusion of the late war—for the great degree of tranquillity, union, and plenty, which we have since enjoyed—for the peaceable and rational manner, in which we have been enabled to establish constitutions of government for our safety and happiness, and particularly the national One now lately instituted—for the civil and religious liberty with which we are blessed; and the means we have of acquiring and diffusing useful knowledge; and in general for all the great and various favors which he hath been pleased to confer upon us.
and also that we may then unite in most humbly offering our prayers and supplications to the great Lord and Ruler of Nations and beseech him to pardon our national and other transgressions—to enable us all, whether in public or private stations, to perform our several and relative duties properly and punctually—to render our national government a blessing to all the people, by constantly being a Government of wise, just, and constitutional laws, discreetly and faithfully executed and obeyed—to protect and guide all Sovereigns and Nations (especially such as have shewn kindness unto us) and to bless them with good government, peace, and concord—To promote the knowledge and practice of true religion and virtue, and the encrease of science among them and us—and generally to grant unto all Mankind such a degree of temporal prosperity as he alone knows to be best. Given under my hand at the City of New-York the third day of October in the year of our Lord 1789.

Abraham Lincoln's Thanksgiving Proclamation -- 3 Oct 1863 

The year that is drawing towards its close, has been filled with the blessings of fruitful fields and healthful skies. To these bounties, which are so constantly enjoyed that we are prone to forget the source from which they come, others have been added, which are of so extraordinary a nature, that they cannot fail to penetrate and soften even the heart which is habitually insensible to the ever watchful providence of Almighty God. In the midst of a civil war of unequalled magnitude and severity, which has sometimes seemed to foreign States to invite and to provoke their aggression, peace has been preserved with all nations, order has been maintained, the laws have been respected and obeyed, and harmony has prevailed everywhere except in the theatre of military conflict; while that theatre has been greatly contracted by the advancing armies and navies of the Union. Needful diversions of wealth and of strength from the fields of peaceful industry to the national defence, have not arrested the plough, the shuttle or the ship; the axe has enlarged the borders of our settlements, and the mines, as well of iron and coal as of the precious metals, have yielded even more abundantly than heretofore. Population has steadily increased, notwithstanding the waste that has been made in the camp, the siege and the battle-field; and the country, rejoicing in the consciousness of augmented strength and vigor, is permitted to expect continuance of years with large increase of freedom. No human counsel hath devised nor hath any mortal hand worked out these great things. They are the gracious gifts of the Most High God, who, while dealing with us in anger for our sins, hath nevertheless remembered mercy. It has seemed to me fit and proper that they should be solemnly, reverently and gratefully acknowledged as with one heart and one voice by the whole American People. I do therefore invite my fellow citizens in every part of the United States, and also those who are at sea and those who are sojourning in foreign lands, to set apart and observe the last Thursday of November next, as a day of Thanksgiving and Praise to our beneficent Father who dwelleth in the Heavens. And I recommend to them that while offering up the ascriptions justly due to Him for such singular deliverances and blessings, they do also, with humble penitence for our national perverseness and disobedience, commend to His tender care all those who have become widows, orphans, mourners or sufferers in the lamentable civil strife in which we are unavoidably engaged, and fervently implore the interposition of the Almighty Hand to heal the wounds of the nation and to restore it as soon as may be consistent with the Divine purposes to the full enjoyment of peace, harmony, tranquillity and Union.
In testimony whereof, I have hereunto set my hand and caused the Seal of the United States to be affixed.
Done at the City of Washington, this Third day of October, in the year of our Lord one thousand eight hundred and sixty-three, and of the Independence of the United States the Eighty-eighth.
By the President: Abraham Lincoln
Todd Hopkinson
Pro Tip: Bluetooth Testing On The Cheap

Developing with bluetooth requires a lot of connectivity testing. You should invest in a high quality faraday bag in which you can place your bluetooth device in order to test various disconnect/reconnect states.

You don't always have your costly faraday bags with you, and you might need to run some tests. Say your IoT device needs to talk your app on your iPhone and you want to test how the app handles the device going away or suddenly coming into range... 

Using a microwave will hide your bluetooth device very well (no cooking needed!) Just toss the BT device into the microwave, shut the door -- DO NOT turn it on -- and walk about 10 feet away and your bluetooth connection will be severed.

If you don't have a microwave lying around, but you do have some tinfoil - just wrap that bad boy device in the tinfoil trying to make it watertight. If water can't escape your tinfoil wrapping job then your bluetooth signal probably won't either.

Lesson Learned: When in a pinch pull a MacGyver - a microwave or some tinfoil goes a long way. 

Todd Hopkinson
When You Want to Stop Using Beta OS X

Pro Tip - if you find yourself once having opted in to using a beta version of OS X, and you no longer want to, but you can't seem to convince App Store's Update section of this fact, here is what you do:

1. open terminal and type: sudo softwareupdate --clear-catalog

2. now attempt to update through App Store and you'll no longer see beta versions but the current version of OS X.

Todd Hopkinson
Reading Stack

A book stack worth reading is a book stack worth sharing. Here is the current stack on my desk right now:

Mastery by Robert Greene, Tools of Titans by Tim Ferriss, Think Simple by Ken Segall, Uncertainty in Games by Greg Costikyan, Creativity, Inc. by Ed Catmull, Pre-suasion by Robert Cialdini.

At the top of the stack and in progress right now: INFLUENCE by Robert Cialdini - fascinating book on the science of behavior, with lots of studies, anecdotes, and captivating material.

Todd Hopkinson
Pure Speculation: Suspect News About Apple

My healthy skepticism of "insider" news stories was validated and increased during my time at Nike. While there, I watched writers invent stories that were nothing more than lazy speculation, and I knew it based on my own direct knowledge of the actual matter - the product I worked on (FuelBand) and the people I worked with (FuelBand teams.)

I’ve long suspected and observed the same tendency with news media in general. And especially with Apple-related news stories it seems the amount of bad journalism is astounding.

Take this story from Financial Times today on how the departure from Apple of Yoky Matsuoka is "a blow to Tim Cook." What?! No evident source, even unnamed, substantiates the stupid byline. No substance. Pure clickbait. You don't have to be inside Apple to know what this is when you see it - bad reporting that reeks of speculative desperation. Publications should categorize this stuff under a section called Stupid-Lazy Speculation.

Todd Hopkinson
hello again... macintosh?

No. I don’t think that’s what’s happening. Tomorrow's hello again mystery will be revealed around 10am. The title seems to hint at the  original Macintosh ‘hello' ad from 1984, or perhaps back to 'say hello to iMac’ ad from 1998.

A certainty is the new MacBook Pro will be introduced. Anyone making a living using this tool has been looking forward to this for years. The touch strip is a sure bet. What about processor and battery power?

Many wonder if Apple will update the Mac Pro - that black garbage-can-looking computer. Frankly, this bad boy had two things working against it for me - despite the awesome concept of being a mac made in America. First, its price range was relatively high. Second, it looks just like the garbage can I owned at the same time it was announced.

Is hello again a reintroduction of the iMac. Is the iMac now touch screen and stylus ready? Is there a fancy zero-gravity hinge now? Microsoft has certainly upped their game and obviously aimed (this would have been planned years ago) right at the Pro users - and based on their Surface Studio, it might just work depending on what Apple unveils - or not - tomorrow.

How about machines that the VR hardware folks can target? I blame Facebook's purchase of oculus rift for this more than anything. Boo Facebook. But will Apple deliver on this front - the horsepower to compete with PCs again?

I can’t help but wonder if the 'hello again’ theme is actually much about Apple TV? Will the Apple TV just be renamed to the mac? There is no ‘mac' currently. But this doesn’t sit right for me - the Apple TV is certainly not the macintosh’s spiritual offspring in any sense is it? The only way it could be is if it got a voice, and perhaps some eyes and moved around - sorta like Wall-E. Wall-E was a mac, you know. But the TV isn’t, is it?

But, there does seem to be the possibility that under the shade of the ‘hello again’ umbrella is a full refresh of all the mac machines. All the desktop/table/lap/surfacetop devices - we meet them all again.

I wonder if the Siri Remote will be redesigned?

Will there be a culling of the MacBook air? A refresh of all the laptop lines into a streamlined culled set of simply MacBook and MacBook Pro. Will the pro take on the form factor of the air? Will there be new colors? New materials? Screenshot leaks don’t seem to indicate this - but then again, these could have been planted images to achieve a particular expectation and reaction.

Will any of the macOS machines include touch screen capability and stylus capabilities?

And… how am I going to hasten contextual assistance in Xcode without my escape key?!!! (MacBook Pro leaked images appear to show missing esc)

What is the Hello Again really all about tomorrow? Is Apple just toying around with its heritage for some trivial ad word play. Or is the gravity implied really merited & congruent with the substance of the event to which ‘hello again’ supposedly alludes?

That introduction - that ‘hello' - we all saw in 1984 with the introduction of the Macintosh was only a seed. What’s come from it is worth every ounce of anticipation we have. This is especially true for all those who make a living utilizing these marvelous creative machines - these macs, which many of us look forward to welcoming into our lives yet again.

Todd Hopkinson
See, I Told You So

At times we are compelled to tell off our skeptics after the fact. In this case the fact is a whopper that proves what should have been obvious back in February when Apple was being pressured by the FBI to build a tool to bypass iOS security measures.

In February I said:

Say the tool gets created. The tool is a digital file that will live on a computer system run by the government - the same institution whose agencies are constantly being broken into and plundered. It must be understood that if the tool is created, it will get into the hands of our enemies...

It's only a few months later now and the NSA has been hacked, digital tools stolen, and leaked on the internet:

NSA Hacking Tools Released Online - Washington Post
Who Hacked the NSA? - Popular Mechanics
Snowden docs prove NSA hack is real - Business Insider
Shadow Brokers claim to have hacked the NSA - NPR

The heart of the matter is not whether the NSA was hacked. What matters is that private digital tools have fallen into the wrong hands. Driving the point further home - those hands are now selling to the highest bidder. And because this story is public now, it is worth saying this again:

See, I told you so.

This could have been the iOS hack tool, had it been created as requested by the FBI. The pilfering of hacking tools is inevitable. It's why Tim Cook likened the creation of an iOS bypass tool to cancer. You don’t take chances with cancer. It spreads. 

As equally disturbing to me as the idea of the tool, is the FBI's demand in and of itself. The FBI lacks authority to require what they demanded. And so they engaged in a publicity battle to pressure Apple into behavior that was ultimately irresponsible (because as has been shown by the NSA hack - they wouldn't have been able to contain it) that would ultimately jeopardize the security and real safety of the hundreds of millions of iOS users.

It calls to mind Frederic Bastiat: 

We must remember that law is force, and that, consequently, the proper functions of the law cannot lawfully extend beyond the proper functions of force.
Todd Hopkinson
Apple's Pre-WWDC News

News from Apple leadership out prior to WWDC next week because, according to John Gruber (Daring Fireball), Phil Schiller told him, "We've got a bunch of App Store/developer-related announcements for WWDC next week, but frankly, we've got a busy enough keynote that we decided we're not going to cover those in the keynote."

The news shared so far:

- App Review process overhaul (most apps approved in 24 hours to 48 hours)
- App subscription model being added
- Ads being added to the App Store search results
- Enhanced share and search functionality to the App Store
- macOS is the new name for the operating system formerly known as OS X. (This appears to be an unintentional leak from some text spotted on the apple developer site)

Daring Fireball, LoopInsider, and all the other Apple/Tech community sites

Todd Hopkinson
An Apple Keynote Imagined


"Oh, and one more thing..."

Steve Jobs made this the most anticipated phrase at Apple announcements. This year, let's imagine a one-more-thing moment that has nothing to do with Apple Music - or Drake (parody alert.) Apple's world-wide developer conference is five days away, so, this is how I imagine Apple's next "one more thing" -- Take it away Tim...


The Keynote speaker deliberately walks the stage, focusing intently on Apple's largest ever developer gathering (7000 seats.) The crowd hangs on every carefully crafted word of the closing message.


"...and we've shown you some amazing things we think are really cool. We can't wait to see what you do with them."

"But you know, there is actually more thing. Two years ago we announced the Swift programming language; This year we're thrilled to share with you it's perfect compliment:

 code

 code for macOS - a breakthrough reimagined IDE focusing first on Swift for full-scale software development.

"We think it's really cool, and we can't wait to see what you do with it."

"Oh, and there's one more one more thing..."

 code for iPad

"Develop apps directly from your iPad Pro with professional software tools designed to change the way you write great software at any scale. You've got a screaming processor, a touch-screen with amazing resolution, a great keyboard, outstanding battery-life, and the iPad Pro is a breeze to take wherever you are - just touch, code, and go.

Your project assets and files can be generated both locally and remotely, and are backed up and managed in the cloud and integrated into a continuous deployment solution (via Apple, your own mac server, or through other third parties of your choice.)

You compile and run apps right on the device, as well as remotely.

An integrated touch-based app design and asset production & management app suite affords you enhanced ability to literally conceive, compose, and build your UI/UX from start to finish, right on your iPad. It also supports importing external assets."

"We think  code is really cool, and can't wait to see what you do with it."


...and cut.

WWDC 2016 can't come soon enough. I've been waiting years for the ability to do real development directly on my iPad. Now that the iPad Pro is a real thing (four years after I predicted and mocked it up in 2011) I'm holding out hope for code. Even a tap of the puck in that direction with a Swift Playground App for iPad Pro would be great.