Part 2: Design Norms
In Part 1, I described a new brain game app I wrote for my wife, Pam. Named LogiSketch, it is a nonogram puzzle app. I used that experience as a springboard to talk about engineering design, focusing on design decisions. Engineering design always involves making decisions to choose between alternative approaches. Valid alternatives all correctly solve the problem, but in different ways. To choose between the alternatives we must apply further decision criteria, and those criteria represent our values. Making those decisions explicit makes for a better product. It also provides an opportunity to talk about values arising from our Christian faith in a way that can be more authentic and less “in your face” for non-believers.
For Part 2, let’s expand our ideas about design criteria beyond the standard textbook list of factors such as cost, time to market, safety, etc. Based on the work originally done by the authors of <i>Responsible Technology</i> (https://www.google.com/books/edition/Responsible_Technology/8cLuAAAAIAAJ?hl=en), we will also consider the design norms. You can also find a more recent treatment in the book that I co-authored with Brue and Schuurman, A Christian Field Guide to Technology for Engineers and Designers. For this article, I’ll apply four of the norms to my latest design work on the LogiSketch app.
Design Norms Applied to LogiSketch
Justice
The design norm of justice puts weight on the fairness of the design to all stakeholders. (By stakeholders, I mean everyone affected by the product, which is a larger set of concerns than the product purchaser alone.) One of the ways I satisfied the norm of justice relates to the images I use for puzzles. When a puzzle is solved, the image is displayed. If the image is not my own, I have confirmed it could be used commercially under a license such as the Creative Commons Attribution license. I then ensure that the attribution is provided immediately below the image. This respects the rights of the image owner.
Another way I satisfy the norm of justice relates to how I price the app. The app itself is free. It comes with a starter collection of puzzles (that I call a “gallery” following the museum theme). Other galleries are available for purchase. I made sure the starter gallery had plenty of puzzles so that users had a fair chance to evaluate the app and decide if they wanted to pay for other galleries. I also tried to price the galleries reasonably. Those are only a few ways we can honor justice directly in our designs. Next up, clarity.
Clarity
The design norm of clarity (also called “Open Communication”) puts weight on honesty and transparency of the design to all stakeholders. One of the ways I satisfied the norm of clarity was accuracy in how I describe the app in marketing literature. I clearly indicate that while the starter gallery is free, additional galleries are in-app purchases. The number of puzzles is indicated for each gallery so that the buyer knows what they are getting for their dollar.
I also provide clarity through a version description list that indicates what changed or was added in each version. This list is not just “spin” on the good stuff, but also transparently discusses any bugs that were fixed.
Another nod to the norm of clarity was designing configuration items to be self-explanatory, so that one could understand the settings without needing to refer to the help page.
Often I think a design is clear only to see a user struggle. The norm of clarity probably requires some user studies or focus groups to know if you really hit it well (or not). Next up, harmony.
Harmony
The design norm of harmony puts weight on the integrity and aesthetics of the design. Form should follow function. I aimed to satisfy this norm by keeping the visual User Interface (UI) focused on solving puzzles. I added a consistent visual and text theme built around the idea of the puzzles being artwork that needed to be restored.
The solved puzzles themselves also provide an aesthetic aspect as they exhibit natural beauty, such as the Tree of Life gallery. They also exhibit constructed beauty, such as the Clothing gallery or Architecture gallery.
The norm of harmony honors beauty, but particularly beauty that is more than skin deep. For engineering designs, that means more than cosmetic features. Thoughtful designs have a beauty integral to their function, rather than a facade hiding their fundamental structure. Next up, last example norm: caring.
Caring
The design norm of caring puts weight on a design that shows kindness to all stakeholders. One way I hoped to show caring through my app was by enabling Family Sharing on in-app purchases. This allows family members to share purchased puzzle galleries.
Another means of care came to mind when generating puzzles of living creatures. I realized my wife would likely not want to see certain living creatures, so I created a Creepy Crawlers gallery to clearly signal the contents — for those that dare look!
I also kept an eye on accessibility. Some of this is provided by Apple inherently, such as the ability to enlarge fonts (for those with poor eyesight) and control audio volume (for those with poor hearing). It doesn’t come completely “out of the box” to the developer however. For example, I had to ensure I did not unintentionally prevent larger fonts in my app view (which I did in a few cases until I tested specifically for this). Further improvements included an intentional design choice to consistently pair visual and audio feedback, so that hopefully one or the other was noticed. For those with poor dexterity, I included an option to make the puzzle grid cells larger.
While I was implementing a feature to help those playing color puzzles, I realized this could also help those who are color blind. Although I purposely encode pictures to include some visual distance between the puzzle colors, these can still be a bit difficult to differentiate. I thus added a feature to allow customizable colors. Once I had done that, a little research revealed that someone had looked at this problem of distinct colors. Alexandr (Sasha) Trubetskoy was working on displaying subway maps and wanted to give each line a distinct color that most people could easily distinguish from the others. He developed a handy list of 20 colors (https://sashamaps.net/docs/resources/20-colors/) The 20 colors are carefully sequenced so that you can take any number of colors from 2 to 20. As long as you start from the beginning of the list, the colors will be maximally distant in perceived color.
He further did the world a service by looking at the population with color blindness. His list of 20 colors covers 95% of the population. A filtered list that works for 99% of the world’s population reduces the list to 16 colors. Further filtering for 99.99% reduces it to 7 colors. I used this data to provide a “maximal distance” color list that can be used as a custom option for the nonogram color puzzles in the app. A design that provides color schemes that work for those that are color-blind is a design honoring the norm of caring.
These examples for four of the design norms demonstrate how faith principles can influence technical design decisions. This engineering with integrity honors God. Furthermore, I think engineering itself is not only pleasing to the engineer, but pleasing to God.
The Pleasure of Engineering
The 1960s and 1970s saw a flourish of anti-technology writing, from the likes of Jacque Ellul, Lewis Mumford, and others. Samuel C. Florman, an engineer by trade, wrote a famous counterpoint to this position in his 1976 book <i>The Existential Pleasures of Engineering</i>. While I recognize the dangers of technology and appreciate the warnings from Ellul and others, I also resonate with Florman’s point. Engineering is an essentially human activity involving creativity, aesthetics, and human values (as we saw in the previous section).
In the movie <i>Chariots of Fire</i>, the character Eric Liddell is a devout Scottish Christian who is competing in the Olympics. He says: “I believe God made me for a purpose, but He also made me fast. And when I run, I feel His pleasure.” Those of us called to engineering are also made by God for a purpose. He made us creative and gave us strong math and science abilities. He made us problem solvers. And when we engineer well, we should feel His pleasure.
While developing LogiSketch, I brought those typical engineering skills to bear. What surprised me was that many further skills were marshaled as well. As I wrote about in another blog (TBD: link), I have become an amateur biologist using the iNaturalist app. The pictures I took of hundreds of unique species became images in my Tree of Life gallery of monogram puzzles. My lifelong interest in architecture was sparked anew as I created an Architecture gallery, so that I needed to brush up on the different architectural styles. I reviewed to make sure I didn’t mix up Art Deco and Art Nouveau, to make sure I placed Early and High Gothic examples correctly. It was gratifying to find that my interest in photography and in travel paid off with quite a few photos that turned into puzzles in the Architecture gallery. I got much better using Gimp (an open source photo editing tool). I also was able to exercise my love of music, composing some short pieces as background music for some of my YouTube Shorts to use for marketing. I enjoyed this mismash of different skills necessary, and more importantly, I think this work glorified God.
Do You Please God in Your Engineering?
How do you make your faith real in your work? In the actual output? In the work of your hands, not just the words of your mouth? Are you using your employment and career as a means of witnessing? Good. Are you also using your career to glorify God through the actual engineering design work? God is pleased when his children cultivate and develop the creation as good stewards. He is pleased when an artist completes a gorgeous painting, when a musician composes a beautiful score, and when an engineer designs a beautiful, effective product.
Are you noticing the decisions you make during design and development of your product, or are you just doing what comes to mind first? How does that impact your responsibility and accountability?
Sidebar: Tools I Used
In case you are interested, here is a list of tools I used during development of the LogiSketch app. It is not quite exhaustive, but I think I have captured most of the key ones.
Music and sounds
Garageband
Piano (yes, the physical musical instrument)
AutoPiano
Apple QuickTime
Visuals
SF Symbols
LibreOffice
Photo editing
GIMP
ImageMagick
sips
Apple Preview
Apple background remove
iMovie
Photo sources
My own photos on iNaturalist
Photos with suitable licenses from Wikimedia Commons
Themes, titles, descriptions, gallery categorizations
Gemini
ChatGPT
Perplexity
Software Development
Xcode
pytest
ruff
pyright
swiftlint
Visual Studio Code
Claude
git
xcbeautify


No comments:
Post a Comment