No-code product development

Anyone familiar with product development should recognise the image below. It’s a schematic for a start-up idea I was working on several years ago – for an employee engagement, reward and recognition app. It was the result of a number of workshops with a digital agency covering problem statements, user scenarios, workflow solutions, personas, UX/UI design and back-end architecture frameworks.

At the time, the cost quoted to build the MVP was easily 5-6 figures – and even to get to that point still required a load of work on story boards, wire frames and clickable prototypes….

Now, I would expect the developers to use something like a combination of open-source and low-cost software applications to manage the middle-ware functions, dial-up a basic cloud server to host the database and connect to external APIs, and commission a web designer to build a dedicated front-end. (I’m not a developer, programmer or coder, so apologies for any glaring errors in my assumptions…)

The growth in self-serve SaaS platforms, public APIs and low-cost hosting solutions (plus the plethora of design marketplaces) should mean that a developer can build an MVP for a tenth of the cost we were quoted.

Hence the interest in “low-code/no-code” product development, and the use of modular components or stack to build a range of repetitive, automated and small scale applications. (For a dev’s perspective check out Martin Slaney’s article, and for a list of useful resources see Ellen Merryweather’s post from earlier this year.)

There are obvious limitations to this approach: anything too complex, too custom, or which needs to scale quickly may break the model. Equally, stringing together a set of black boxes/off-the-shelf solutions might not work, if there are unforeseen incompatibilities or programming conflicts – especially if one component is upgraded, and there are unknown inter-dependencies that impact the other links in the chain. Which means the product development process will need to ensure a layer of code audits and test environments before deploying into production.

I was reflecting on the benefits and challenges of hermetically sealed operating systems and software programs over the weekend. In trying to downgrade my operating system (so that I could run some legacy third-party applications that no longer work thanks to some recent systems and software “upgrades”), I encountered various challenges, and it took several attempts and a couple of workarounds. The biggest problem was the lack of anything to guide me in advance – that by making certain changes to the system settings, or configuring the software a certain way, either this app or that function wouldn’t work. Also, because each component (the operating system, the software program and the third party applications) wants to defend its own turf within my device, they don’t always play nicely together in a way that the end user wants to deploy them in a single environment.

App interoperability is something that continues to frustrate when it comes to so-called systems or software upgrades. It feels like there needs to be a specialist area of product development that can better identify, mitigate and resolve potential tech debt, as well as navigate the product development maintenance schedule in anticipation of future upgrades and their likely impact, or understand the opportunities for retrofitting and keeping legacy apps current. I see too many app developers abandoning their projects because it’s just too hard to reconfigure for the latest system changes.

Next week: Telstar!




I got nothing

After nearly six weeks in Melbourne’s current lock-down (#6 if anyone is keeping count…), I have nothing to blog about this week.

The lack of external stimulus has finally beaten me, and I have nothing much to say. The muse is gone, the well is dry, and there’s only so much you can say about being confined to quarters.

One benefit of this enforced inactivity has been the opportunity to catch up on recent movies, that I either missed at the cinema, or which were not widely distributed upon release.

A few of these films seem perfectly suited to these times – mainly because nothing much happens. These particular stories are more concerned with slow observation and self-reflection.

In “The Truffle Hunters”, there is a stillness bordering on stagnation, as a group of elderly men respond in different ways to the changes being foisted upon their cottage industry. It’s not just the fact that their traditional way of life is coming to an end – it’s the nagging inevitability of their situation, and the growing realisation that there’s probably nothing they could have done to avoid this happening.

Stagnation of a different kind informs the main characters in “Another Round”. They see their lives as being stuck in a rut (although outwardly, they have a comfortable existence), and they feel relatively helpless. Until, that is, they stumble upon the idea of a social experiment, which involves maintaining a consistent blood-alcohol level. They embark on the project to see if they can enliven their mundane existence, with vastly different results.

A similar sense of helplessness pervades “Brad’s Status”. Similarly dissatisfied with his life, and with a growing awareness that perhaps he has misread key social relationships, a middle-aged father uses a trip with his son to re-assess his friends, reflect on his values, and re-connect with what sustains him. He also finds contentment in his achievements, and achieves a sense of acceptance about what he can and can’t change or control.

Finally, a journey of self-realisation also befalls the protagonist in “People Places Things”. When his marriage collapses (and he didn’t see it coming…), our hero finds a way to use his work to explore and resolve this apparent failure to read the situation. In the process, he learns how to communicate his feelings, and more importantly, he gets comfortable with who he is.

Next week: No-code product development



To be or NFT?

If there’s one consistent lesson to be learned from Blockchain and crypto is that the enabling technology often outpaces our understanding of the viable use case, commercial application or sustainable business model. For example, smart contracts have only recently proven their value with the rise of decentralized finance (DeFi). Even then, they are not perfect and if not well-coded can result in hacks, losses or other damage. Plus, until scaling (transaction throughput) and gas fees (transaction costs) are properly resolved, mass adoption is still some way off.

CryptoPunk #7523 (Image sourced from Reuters)

The latest crypto phenomenon is the market for NFTs (non-fungible tokens). Artworks in the form of digital files are being created, auctioned and traded for serious (or very silly?) amounts of money – just Google EtherRock, Beeple, CryptoPunk or Rare Pepe for recent examples.

NFTs are not just confined to digital art – animation, video, music and text are all being created in the form of NFTs. In addition, NFTs are being minted to represent ownership or other IP rights for physical artworks, real estate assets, collectibles and luxury goods.

Why would anyone pay the best part of US$12m for the original digital file of CryptoPunk #7523, a copy of which I have displayed above?

Perhaps we need to consider the following:

First, the image above is simply a low-res web image, easily reproduced via copy and paste – it’s not the “real” image as represented by the code or digital file embedded in the NFT. The original file is owned by the NFT buyer, and if it is an edition of one, then that is the only authentic version. Scarcity (as well as kudos) is a key market driver in NFTs – but only if someone else attaches financial value to the work (just as in any art market).

Second, owning the NFT does not necessarily mean you own the copyright or other rights associated with the art work. (I may own a Picasso painting, but I don’t own the image contained in the work.) So, apart from holding an NFT in your digital wallet or displaying it in a virtual art gallery, the only right you have is to re-sell the work. This means you can’t commercialise the image for t-shirts, on-line redistribution or reproduction (unless the owner has agreed to grant such rights within the NFT). (My use of the image here would be covered by the “fair use” principle, for the purposes of illustration and/or critical analysis.)

Third, unless you are able to export the NFT from the marketplace or platform that sold it, the NFT may “vanish” if the platform goes offline for any reason. (Doubtless, platforms need to enable token transfers to other market places and to users’ own digital wallets, otherwise there could be a lot of stranded and/or worthless NFTs in years to come.)

Fourth, the creator of the original work may be entitled to a % of the resale value of the NFT. This is obviously an important consideration for artists and other content creators, and I see this as a positive development. By extension, musicians, authors, film-makers and designers can more easily track and control the downstream revenue generated by the use and licensing of their works by third-party marketplaces, streaming platforms or 3D printing and fabrication services.

Fifth, NFTs support improved authentication, provenance and chain of ownership, as well as bringing more transparency to the world of art auctions – valuations, bidding and prices could all be hashed on the Blockchains that track the NFTs.

Finally, if NFTs are seen as a form of bearer bond (linking ownership to whomever controls the token), they could also be used to package up a portfolio of different crypto or digital assets, and auctioned as a single lot. The buyer could then unlock the disparate assets, and combine them into subsequent bundles – bringing a new dimension to block trades and the transfer of large bundles of stocks.

Next week: I got nothing


Same, same – but different?

At the time of writing, Melbourne and the rest of Victoria are waiting to know when (if?) the current lock-down will be lifted.

Just to recap: Melbourne is presently in its sixth shut down since March of last year, and the fourth so far of 2021. All combined, Melbourne has now clocked up more than 200 days under lock-down. The present measures were introduced on August 5, originally scheduled to last one week, and came barely a week after the previous lock-down ended. Lock-down #6 was soon extended by another week, and then by another two weeks, and will now extend beyond September 2. This is not counting the “stay at home” directive that was in place for most of 2020, along with the various limits and restrictions on social interaction, workplace capacity, public gatherings, hospitality, events, sport, gyms, retail, schools, funerals and weddings. We also have a night-time curfew for good measure.

The following two pictures convey similar human sentiments, but they also represent very different responses to the situation we are living under. One is an example of the numerous messages of hope and encouragement that I see around my neighbourhood on my statutory daily walks. The other is a discarded placard seen a few days after an anti-lock-down protest.

The first reflects a “let’s grin and bear it” attitude – nobody likes being in lock-down, but we are all in this together, and if we can just remain positive, we will come through it OK.

The second is more reactive, and emotionally charged – the enforced isolation brought on by the lock-down is having an enormous effect on peoples’ mental health.

It’s hard to argue with either message….

I thought I would be able to cope better with each successive lock-down. Building a daily routine, maintaining some physical discipline (courtesy of the permitted daily exercise), managing at least 2-3 AFDs per week, treating myself to a nice restaurant-prepared meal now and then, catching up on films that I didn’t get to see at the cinema. But despite the recurring groundhog scenario, this lock-down seems different, and much harder to manage mentally.

First, the uncertainty of when it will end creates a sense of dread that we could be like this for 100 days or more (like lock-down #2). Second, the daily drip feed of data and the endless press conferences only reinforce the sense that we are not being given the full picture. Third, the sense of helplessness that for all our individual sacrifices of the past 18 months, we don’t seem to be any further ahead (if anything, we have gone backwards on so many counts). Fourth, State politicians seem to view this public health scare as a war of attrition between themselves and the voters (and their interstate and Federal counterparts). Gone is any sense that we are all in this together.

Quite apart from the cracks in Federation that the pandemic and its response has exposed, entire sections of the community are being driven apart and/or pitted against one another. Despite the so-called “National Plan” that the Commonwealth, State and Territory governments have all signed-up for, it’s clear that individual Premiers each reserve the right to interpret it differently, and will continue to impose internal border closures if they see fit. So, while Victoria and New South Wales seem aligned on this National Plan, Western Australia and Queensland in particular are more circumspect. Then there is the “race” to vaccinate their respective populations (or, as has been said a few times already, “our State citizens”, rather than “our Commonwealth citizens”).

At what point will the 70% and 80% vaccination levels be achieved to herald the promised social and economic freedoms? Is it the % of total population, or only the adult population, or only the eligible population, or only those between certain ages? Is it going to be calculated Federally, or at the State/Territory and/or LGA level? What about mandatory vaccinations for essential and front line workers, and those that have face-to-face dealings with the public? What about employers who require their staff to be fully vaccinated, but face resistance from unions?

Continued lock-down risks becoming a blunt instrument, and a tool of first (rather than last) resort. As such, it also risks alienating the majority of the population who are doing the right thing, in observing the public health directions and getting vaccinated (like, where’s the benefit?). And a prolonged lock-down risks undermining the efficacy of the vaccine, so we’ll need booster shots before we know it!

It seems that Covid19 is challenging our notions of the social contract between the government and the governed, and even testing the social license to operate we grant to big business (especially monopolies and cozy duopolies). The pandemic is also demonstrating the limits of individual responsibility and accountability, and potentially undermining the duty of care we owe to one another. If I knowingly, recklessly or carelessly (and as a result of breaching public health orders or OH&S measures) infect my family, my neighbour, my colleague or my customer, am I culpable? Does that mean I forfeit certain of my rights, especially if infection leads to death?

Just on the data, another reason the current lock-down seems different is because the information is being presented is not the same. Last year, everything was about the R0 number, flattening the curve, and “double-donut days”. There was also confusion over agreed terminology for “clusters”, “unknown cases”, “hot spots”, “red zones”, “complex cases” and “linked cases”. Politicians and bureaucrats talked about “settings”, “circuit breakers”, and “gold standards” for contact tracing. This year, it’s all about the “number of days infected”, “chains of transmission”, “mystery cases”, as well as the number of tests and vaccinations – much less analysis, it seems, on the number of confirmed cases per 1,000 tests or per 1,000 of the population, recovery rates or deaths as a percentage of cases.

From what I can glean, the stubborn levels of “mystery” cases can only be explained by the following:

  • more asymptomatic cases (are people building natural immunity?);
  • legacy cases shedding (a result of long Covid?);
  • longer incubation (and reporting) periods (less obvious initial symptoms?);
  • novel forms of transmission (or the virus is lingering longer on outdoor surfaces?);
  • QR codes and contact tracing not working (or the data is not usable?);
  • confusion over domestic/social/workplace/health/retail settings (e.g., extended families and multi-generational households?);
  • people being unclear about their movements (for fear of being victimised?).

Finally, I’m also not sure if lessons are being learned from elsewhere. We are still applying 14 day quarantine/isolation periods (albeit now with a day 17 test), yet in Hong Kong, for example, quarantine was extended to 21 days some time ago.

Next week: To be or NFT?