As developers and designers, we are creating new things every day. I like to say that we are really good at making the impossible possible. In fact, some of us are so good at it, that we actually do it unintentionally. These unintentional outcomes that occur when we are creating code are called “impossible states.”
The global COVID-19 pandemic has plunged the world into an unprecedented time of turmoil, in which finding efficient solutions to never-before-seen problems can save lives. Grio has been able to work with collaborators to increase global efficiencies for front line responders. In this blog , I will talk about my recent work with the COVID Staffing Project, redesigning a website that provides resources for emergency personnel.
Last Christmas, I had a minor family tech crisis (we’ve all had those, right)? I was visiting my parents, and my mom asked me to AirDrop some photos from my iPhone to hers. I’ve AirDropped photos probably a hundred times, but this time, for some reason, it didn’t work. My phone showed the photos as “sent”, but they weren’t appearing on my mom’s phone.
If you’ve worked on a web design or development project, you can probably appreciate the benefits of reusing design elements across multiple website pages or app screens. Whether it’s a big, obvious chunk — a head or footer, say — or something much smaller, like an image or an icon, a design approach that allows for mixing and matching building blocks can save you a ton of time over one that’s constantly reinventing the wheel.
In recent years I have noticed mobile and web apps starting to include motion design in their user experiences. One example of this is Facebook reactions. Instead of the reactions instantly appearing on hover, they gradually appear to the user’s eye and animate to help the user further understand and choose their reaction. If the user hovers over a certain reaction it becomes larger to help signify to the user that that reaction will be the one they choose if the click or tap on it. The motion being used here keeps the user engaged in the app and is included in a meaningful and playful way.
It has been observed that the acceleration of Moore’s Law has left tech culture with a tendency to discount the past, which leads to issues when building for the long-term. If everything we do is going to be circular filed in a few years anyhow, why bother? I think we’re starting to see some of the limits of ahistorical strategies, especially because building for internet scale means that systems can affect higher-order aspects of society and culture in unexpected ways. This is why I want to talk a little bit about cybernetics.
If you work in the tech industry, coding bootcamps are something you have probably heard of, possibly attended, or know someone that graduated from one. For those of you who are unfamiliar with the term, the industry of coding bootcamps is fairly new, with the first ones starting around 2011-2012. In the short time they have been around, these alternative education programs have gained significant popularity, making their presence known in the tech world.
Overstuffed View Controllers: a problem that is universally despised by iOS developers the world over. Who hasn’t had their eyes glaze over while staring down debugging a 3000 line VC? View Controllers can control so much information, and Apple seems to have very few opinions on where specific logic should go. They give us the decision making power. How can we prevent against this annoying problem and modularize our apps better? Model–View–View Model (MVVM) can certainly help with this, but ultimately leaves routing to View Controllers, which doesn’t make the most sense. This is where a Coordinator comes in.
Grio has adapted the Agile methodology to our consulting business; and one of our most valued “ceremonies” is the retrospective. We keep these meetings open to all, and the notes from these meetings are in a shared folder for everyone at Grio to read.
Despite having access, I found them “gathering dust” so to speak, and decided to dig through the entire folder to track Grio’s ability to implement the changes proposed and avoid the pitfalls of previous projects. We’re genuinely asking ourselves, “Are we serious about learning from mistakes?”
I’ve explored the overall process of my research here, and have presented the findings in depth to our entire team. There’s some good news, and some work to do; but we’re happy to see that our efforts have created tangible benefits to our team, our clients, and our bottom line.
We’re asking ourselves:
“Are we serious about learning from mistakes?”