Skip to main content


Showing posts from 2020

The Swift Dojo - my newest venture

    I have embarked on a new venture,... writing about my journey of learning Swift, the iOS platform and the Apple Ecosystem. Part of this new venture is working with an old friend and colleague Lancer Kind - a Sci-Fi writer, developer of TDD code, and fun guy to hang out with.  He's refreshing my rusty skills as a Test-First Enthustictic Code Designer... and keeping me honest about the TDD practice.  He is the founder of TDD.Academy and has a Twitch.TV  (and a YouTube channel ) stream. We are broadcasting our Baseball Scorecard iOS App development on Fridays 5:30 CT.  You can read more about it on  (we don't have a cool logo yet). Last Friday (Nov 20th) we had a good show... got the first few tests with ViewInspector working and understood.  ViewInspector is a library tool for testing the SwiftUI views quickly without having to spin up a simulator and navigate the UI into the code under test.  Instead of the UI navigation you implement the Inspection protoco

The Umpire - Baseball's Final Answer

It ain't nothing - until I call it. - The Umpire  My brother was an intramural league referee at App State (that's Appalachian State in NC); that's the most important lesson they taught beginners. So if you were going to start to program a baseball game - where would you start?  At some point, you are going to come to the conclusion that on any given play... anything could happen... that is until the Ump calls the play.  So is this key person part of the object model? In November Lance Kind & I are going to start on a venture to program a baseball game - in Swift on the iOS Apple platform.  We are going to start with Test Driven Development - Red, Green, Refactor.  The end goal - to have an App to launch in the Apple Store. I'm not real sure what that App might do... but I trust it will emerge and we will learn quite a lot about the app as we build it.  We have set some other objectives:  to practice TDD, to learn Swift 5+, to use SwiftUI (a declarative GUI), to

The Last Hominide Standing...

    We are the last Hominidae  standing...  Well, at this moment in time / history / as far as we can predict into a reasonable future (but Planet of the Apes starts in 2011 and the original story is set in 3978!)  By that time apes have started bipedal movement.  And are standing quite well.  I say this to point out that it is far too early (in evolutionary terms) to say H. sapiens is the last of the Hominidae (all apes - who knows why the gibbons were separated out?).  And our future is very questionable - given our terrible politics of division - our count down clock to nuclear ( doomsday clock -  100 seconds to midnight! ) annihilation,  our refusal to deal with human climate destabilization, and our inability to curb our desires.  Each of those species on the tree of life is at the pinnacle of evolution!  We H. sapiens are just one, and just happen to hold the cat-bird seat in the food pyramid.  That could change quite quickly - it did for the dino's back in the day ( KT-day )

Collaboration is the KEY to your Survival

  What do you think of this statement? Is it too bold, completely wrong, or just off the mark? The group behavior of collaboration beyond local group boundaries has allowed Homo Sapiens (Latin: wise man) to be the last of it's kind - by being the "fittest" survivor in the  Hominidae family  (order Primates) . So just to set the record straight - we have outperformed - in the fitness for purpose regarding our cousins:  extinct species H. habilis, H. erectus, and H. heidelbergensis as well as the Neanderthals. Some would believe that the "survival of the fittest" refers to strength and physical ability - which I'm told the Neanderthals far outperformed H. sapiens; it does not refer to physical fitness (a common misconception). And in this adaption to purpose our ancestors' collaborative skills made them one heck of a star performer. Take a contrived example - you're with a band of travelers and Thag the fire bearer has fallen off a cliff into a ra

The Recursive Dictionary Lookup

 ... no shit, here I am... taking a break from the redundantly recursive link sifting that is iOS development in the 21st Century.  I can not count the stack pushes I've had since about 11 AM and it's only 6:37 PM still time for a beer and a pondering session... A great story allways starts... no shit, there we were... So at my Day Job <euphemism for what I get PAID to do... but I'm unemployeed> I'm writing a little easy App for a colleague - it's a learning chance for me... and it might provide some value.  I'm busily rewiring my brain (there is some question to its inherent plasticity) at my age - so ONE valuable technique is to get drunk enough not to care so damn much and bang out some crap one night - then in the morning come back and fix the hell out of it.  There may be other valuable techniques... Well, last night I decided that the easy array data structure was just going to have to go... that was simple at first and went a long way - but I'd

Is your office culture creating a "Double Bind"?

Have you heard this term in your office " double bind "?  I bet you haven't - do you even have a clue as to it's meaning?  Since the majority of my readers are male - I can safely bet that the overwhelming number has no clue.  I've never heard it, I confess. After reading about the term and a study at BYU on why women don't speak up in groups... well I have a sense of the double bind.  An observational sense - not a first-hand experience of the double bind. Our industry - software development - has a problem.  The Agile movement with it's lofty goal of improving the work life for developers could have addressed this problem.  Over the last 19 years ( Agile Manifesto c. 2001 ) I've seen little movement in the needle of women in SW Dev (STEM Stats - 15 %).  Could the alliance moved that needle.... it is one of their initiatives . One in 18 Trillion I use to have a goal, no objective, no a rule...  to have at least one female on each team.  After r

User Data Security in Financial App is Lax

What is the state of user data security in the Apple App Store?  I was shocked to find that it is not up to 2020 snuff.  I've been evaluating lots of stock market trading and portfolio tracking apps and web sites over the past weeks.  And now I've discovered I need to add a data security probe to the criteria for each app. I had assumed that an app in the Apple store would need to pass some (unknown to me) form of data security to be allowed in the App Store.  I wonder if I'm just naive and there is no requirement and no review.  Perhaps if I lived in the EU I would have the GDPR to rely upon.  But not here in the good ol' USA. I installed the Stocks Tracker Real-Time Stocks app by Dajax LLC on my iPhone.  I entered several of my stock transactions and tested some of its features.  One feature I'm particularly interested in is the ability to plot my personal buy/sell transactions on the stock's price graph. It seems to me that this feature of plottin

Anyone up for a Game of Life?

John Conway I just read a nice tribute article for John Conway - it set me pondering the ways humans think.  The photograph makes me think John could be Logan's (Wolverine) father. John Conway Solved Mathematical Problems With His Bare Hands I wonder if Conway had a unique thinking process - it appears so.  Yet he was able to explain many problems and solutions quite elegantly.  The article details a few of his elegant solutions. The Game of Life You have most likely heard of his Game of Life . The game of life came up recently in another article I was reading about Physics - Stephen Wolfram describes (for the layperson) a system that may have an ability to describe the fundamental theory of physics many have been searching for.  I question if we will actually know it - when and if - we actually see it. Finally We May Have a Path to the Fundamental Theory of Physics…  and It’s Beautiful So ignore all this background noise for a moment and ponder this ...  ridd

Which Catastrophe are you focused upon?

I live in Texas, it comes with a unique flavor of people - my neighbors.  I was walking Malibu (my golden retriever) and stopped to chat with a neighbor mowing his yard.  I asked about his mower - an 80volt Kobalt electric push mower .  He liked it a lot, was glad he didn't have to store dangerous liquids in his home (gas & oil) and enjoyed the exercise.  I commented that the pollution from small engines was a significant source and that the internal combustion engine used in these tools was still based upon 19th Century technology.  I knew that he was a tech guy with a very large database company.  I was proud of his choice.  Like a true Texican, he remarked that was not his concern - that moving to electric was just moving the source of pollution from one place to another (his lawn to the power plant).  I suggested that that was true AND that the power plant was designed to deal with the pollution.  He ignored that info, I assume he was thinking that our Cheeto In Chief had r

Dialogue on Retooling the Group Collaboration at a Safe Distance

Chatting with an old colleague about the issues we both face with facilitating group learning environments in the post COVID era we decided to broaden the discussion to learn more from other colleagues in similar predicaments. Event RSVP   -  Friday 2020/Apr/17 @ 2pm CT via Zoom Tom Perry described the proposed event as: In the pandemic era is the agile age of face-to-face communication over? Are post-it notes a thing of the past? How will we re-tool for this brave new world? Or perhaps we should just wait it out and get back to our task boards? Join us for this lively Lean Coffee and tell us where you stand! We are thinking it will start as a Lean Coffee event. .. and what it leads to... we are prepared to be surprised! Join us! David's pre-event Notes & Thoughts Tom Wujec:  Got a wicked problem?  First, tell me how to make Toast.  TED Talk Discusses the need for collaboration in resolving "wicked problems" and the need for decomposition a

NovoResume Review: Will the Real Resume Please Step Forward

Do you despise updating your resume as much as I do? Are you still waiting for an XML Resume standard such that you can publish the data of your job history and allow all the recruiters to format the data however they wish?  Right - a bot could do that job. Yeah, me too.  I've wondered why the old 19th Century technique of writing a resume still persists.  I've only ONCE applied for a job that did NOT allow a resume upload.  It wanted a LinkedIn URL and a few other bits of data.  I double-checked... nope, no place to upload a 19th C. letter stating all my wonderful qualities.  That's one out of a couple of thousand applications.  One company that had made it to the 21st Century. Since I've been searching for my next team ...  I've updated my tired ol' 19th Century paper resume to an online modern tool... it's sexy and cool.  All the kids are doing it.  Come along with me and let's try out NovoResume . This is a really nice and enjoyable user exp

#12 of 100 Agile Transition Guide Delights

"That went very well."  Said in reference to today's sprint planning session, and an inferred commentary upon the previous planning session which was a tornado disaster zone of a trailer park. Few people like to attend a disaster waiting to happen.  But I've found that there are times when it's the best thing that can happen for a team.  And while I don't cheer for the tornado, I don't mind its visit to the sprint planning meeting once in a while. I'm typically heard explaining why the tornado hit our little trailer park... it's because we didn't do any (or enough) backlog refinement .  And then people want to know what backlog refinement is - what should happen in these "meetings"? If you search the old books and articles on Scrum you might not find this meeting mentioned.  But that's just because refining the backlog was something that most teams understood needed to happen and did what needed to be done.  Somewhere alon

#11 of 100 Agile Transition Guide Delights

There are many ways to decompose a large task into smaller portions.  When agilist start doing this there are a few general ways to do such a thing.  Let's start by distinguishing between a story split and a story slice. Splitting != Slicing If you've spent some time with an ax and a pile of wood then you understand that many logs have a naturally easier way to split along with the grain direction.  It requires much less energy to split a log than it does to slice the log. If you've spent some time baking cakes you know that people like to slice cake.  You never hear of a person wanting a split of the cake.  Many cakes have multiple layers, sometimes with different flavors in each layer. What does this have to do with software development stories?  Well many software systems have layers, and it turns out that it is easy to split the layers apart.  For example: the UI layer is easy to separate from the Persistence layer.  Many organizations separate their teams along

#10 of 100 Agile Transition Guide Delights

I am working with a team that is in transition.  They have been told that they will practice Scrum.  I don't bother to question this directive from above.  I figure that the people above the team don't know why either...  oh, yes they were at the company all-hands meeting where IT was handed down, there were the typical platitude reasons for the change, faster time to market, being able to respond to new influences in the greater marketplace (e.g. AI, Serverless Environments, etc.) all sounded great at the town hall.  But when asked why this particular team that will never see those technologies in their arena would need to practice Scrum - the best reason is - because we said so.  So that is the CHANGE - it has been forced upon these 7 people.  I am acting upon the transition they are going through.  The current transition is in writing stories.  All have said they are use to working with stories, so we dive right in... but they are not very good - it is almost like English i

#9 of 100 Agile Transition Guide Delights

Have you had that conversation with the struggling team that wants to switch to Kanban?  They don't really know why - but they've heard that Kanban will be easier.  So why don't they switch processes? We are failing at Scrum, so let's switch to Kanban! Does that sentence make sense in your world?  I hear it quite a lot.  Well not stated that emphatically.  In fact, most teams don't know that they are failing at Scrum - but they are... it is such an easy process to follow - how could you fail? More Prescriptive -to- More Adaptive Cutting to the gist of the problem - a team that cannot complete stories in a sprint.... well they are failing.  You could ask why they cannot complete stories in the sprint.  There may be several legitimate reasons, typically it is an impediment beyond their control.  Something like getting "sign-off" from some stakeholders that the feature desired works as expected and doesn't break anything else.  When you see this

#8 of 100 Agile Transition Guide Delights

I've seen way too many teams working with just a big list of stories (they call it a backlog - but it's not).  Many of these organizations can find someone to play the role of the (proxy) Product Owner, and that unlucky bloke will do the best they can at prioritizing the list... but it's still not a Product Backlog. What is really amazing is when you hand that unlucky PO a list of SIZED stories and they can see the cost of those wee little things that seemed like a big deal because we've all been living with that crap since forever.  But now with the addition of a story size, those little nuisances become a top priority.  The team's value goes up in the eyes of the stakeholders and users because the apps are visibly being improved. "But sizing all those stories will take forever and a day." That is what my product owner said a few years ago at a client known for its storage products.  And being great organizers of storage, they put those skills to t

#7 of 100 Agile Transition Guide Delights

The product owner calls everyone together and explains the "crazy" direction we are headed and why. Team morale does an immediate 180-degree turnaround and sky-rockets. Product Owner has a Sprint Goal This little tidbit of Sprint Planning often goes unnoticed, is frequently forgotten or never mentioned. But when you see the difference it makes for a bunch of devs that thought we were building the wrong thing and then realize how crafty your product owner is... well you will not forget to insist on the reasons - the goal of sprints you and the team are running. Years ago, in a rainy distant land far from sunny Texas, I worked for a SpeakEasy. The company was a hot-shot in ISD land (Internet Service Delivery in the days of modems). They had this crazy idea to build a Voice-Over-IP telephone product and hired out the tree-hugging hippies from a little consultancy company across the lake. These hippies said they had a new collaborative way to build products that work