It’s hard to put an exact date on when my Perspectives on Power Platform newsletter was actually launched. In the very first issue, “Start somewhere”, I wrote about my decision to sign up for beehiiv and quickly put in place the foundation on which I could build something.
At that point, in March 2024, I did not yet know what exactly I was going to build. After the health challenges I had just gone through, I knew I needed to stop doing things in a way that kept me from getting better. The 11 years of being in the Microsoft MVP program had taken their toll on my mental wellbeing. Co-founding and promoting a Power Platform consulting company alongside my voluntary community activities turned out to be an unsustainable model.
Not a big surprise, and not anyone else’s fault either. I had chosen this path, now I just needed to find a new path forward. Today, it feels like this is indeed happening.
To write again
After taking a break, I quickly discovered that I still have a burning passion for writing. I just needed the right place and format for it. With Twitter now gone (to s***), I developed a habbit of creating quick posts / hot takes on LinkedIn. Regardless of their algorithm being a similar jerk as any other big social media, I learned to live within the limits imposed there. The higher character limit of a LinkedIn post suited me well, allowing me to express complete thoughts rather than just a couple of sentences.
My audience started to grow. Much faster than what I ever experienced on Twitter. At some point, due to the poor analytics that LinkedIn themselves provide, I chose to pay for a 3rd party tool, Shield Analytics. The most important feature turned out to be the ability to search for my past posts (yes, LinkedIn is terrible with basic content management). As a nice bonus, it draws charts on how the engagement levels are doing compared to previous time periods. You could even simulate what a similar audience reach would cost you if you paid for it via sponsored content campaigns rather than just writing catchy posts.
Social media companies are not your friends, though. They aim to own the content that is created by the users and choose how/when it is presented. More importantly, they want to own your network – so that they can charge money for selling it back to you, should you want to reach them with your message. Connections, followers – those are just numbers shown to keep you hooked on the potential audience.
Newsletters, on the other hand, are about forming the direct connection between the publisher and the subscriber. Algorithms won’t determine who sees what – the humans on both ends get to choose that. I think it’s a much healthier basis for communication, rather than relying on the gamification mechanisms in social networks that can change on a whim.
While the themes that I write about may be the same regardless of the channel, the newsletter offers me a way to think deeper. I’ve developed the habbit of looking at what I personally react to online, what my network is saying, what type of social posts I create – then analyzing it from the different perspectives as part of writing my long form Perspectives into the newsletter.
I feel that it’s started to work pretty well. I’ve allowed myself to take time in exploring new themes around GenAI and cybersecurity, as well as reflecting on the past/present/history of Power Platform. Many of the topics are either the result of talking with new people or they have resulted in new connections being formed. Those are crucial KPIs in the end. 1) Does it feel meaningful to myself? 2) Does it activate others to do something new? And last but not least: 3) does it gain traction from the online audience in general?
I’m not going to disclose the exact stats on how many readers there have been for the newsletter. Let’s just say that I’ve been delighted to see a constant flow of new subscribers that have intentionally said “yes, please, send me more emails like this”. It feels special, every single time.❤️
More recently I’ve had the courage to say “if you want to read this article, please do me a favor and create a free subscriber account”. After all, this ability to stop just any AI bots from scraping your content and using the data for providing answers without zero attribution to the original source was one stated reason why I chose to transition from blogging to writing a newsletter.
The conclusion is: these walls do work. If on a normal day I’d get a beehiiv daily growth recap message with 2-4 new subscribers, requesting a login can make that grow 10x.
Is AI really eating the tech blogging world then? I believe it is happening on some level. This insighful article from MVP Tony Redmond who runs sites like Office365ITPros.com explains the impact that LLM generated answers to tech questions are having on website traffic. If you used to have a business that relied on people discovering your site via “how to” queries on Google, that model is becoming less and less viable every day.
The tools that shape us
Regardless of what we as individuals think about generative AI, it exists. It changes the world around us, whether we use it for a particular task or not. I haven’t yet fallen in love with Microsoft 365 Copilot, but I talk a lot with my ChatGPT every single day. It has become a virtual personal advisor in exploring areas that are less familiar to me in technology, business and life. It would be difficult to live without it. But does it replace online searches, though?
I have already mostly abandoned Google. However. I did not replace it with AI, but rather a search engine that I pay for with money – not with my data and privacy. Kagi has been an awesome experience that not only meets my everyday search needs; they also sent me a beautiful yellow T-shirt! I’ve learned that an ad-free search engine that doesn’t try to actively deceive me into clicking sponsored links is still highly useful in the year 2024.
These shifts in user behavior resulting from advancements in the field of AI will mean more & more people question whether their de facto digital tools they’ve relied on are the right choice anymore. This is happening all around me. Even on this very place where I am now writing this text and you are presumably reading it (unless you are one of the remaining RSS feed fans): WordPress.
I have been a WordPress user for as long as I remember. Well, okay, so I do still remember my initial blogging experiments with Blogger and Drupal. Once I went with WP, though, there was never a true reason to look elsewhere. It did everything I needed, and was able to adapt to whatever new requirements I came up with. Not only did it serve as a personal blog engine, it also powered many professional websites along my journey.
When all you’ve got is a WP hammer, every problem looks like a blog post nail. While being a versatile and broadly used platform means there is a huge community around it to give tips, build plugins and sort of keep all your options open – you are still thinking within that WP box. You keep publishing openly available blog posts as web pages, like you’ve done for 16 years already. You can’t just stop doing what you’ve always done, right?
The big wake up call for WP bloggers came from the mothership. The founder of WordPress has shown that even though the wordpress.org side is operating as a non-profit, the commercial arm of wordpress.com has the ultimate control over the software. The public dispute that Matt Wullenweg started in September by calling WP Engine “a cancer for WordPress” has since escalated into a complete collapse of trust in WP.
Automattic (the creator of WordPress, led by Matt) and WP Engine are both big hosting providers for WP sites. Now, they’re only talking through lawyers, with WP Engine having sued Automattic for “abuse of power, extortion and greed”. In response, Matt and Automattic decided to literally steal a commercial plugin developed by WP Engine and publish it as their own. It’s the craziest thing I’ve seen in the CMS space yet the proof is everywhere in the source code.
With beehiiv, I had already taken the first step to publish content somewhere outside of the WP kingdom. During the past few months, there’s been a steady stream of product updates that make me miss the WP ecosystem less and less. Most importantly, I feel that the mechanism of a newsletter is providing a better connection not just between me & my subscribers – it also makes me want to write more. That’s not exactly a plugin you could just add to a WordPress blog. It’s about a whole different product design approach.
Will I still be maintaining this WP blog then? That’s a good question. Since my regular content posting is on the newsletter site anyway, I technically could get everything I need from a static website. Briefly exploring the world of SSG’s (static site generators), I tried spinning up a Hugo site, running on Netlify. However, I very quickly realized that the Git repo driven content management workflow was not something I would replace my WP site with.
I decided to give this SSG approach a go in a different context, though. When developing an alternative way to visualize the release plans for Power Platform and Dynamics 365 than what Microsoft’s own Release Planner site offers, I ended up publishing releaseplans.net as a Hugo website. Now, that site lives as a GitHub repo for the source code, while I do the content updates in Visual Studio Code.
I have of course already covered this topic in my newsletter:
I’m in the process of creating a “proper” website for my company, Niiranen Advisory Oy. That will also not be a WP site but something different. Stay tuned for an update in the not too distant future.
What’s coming next
The idea behind the domain perspectives.plus was always to make space for something more than just a direct replacement of this blog. Today, that idea has reached the state where Perspectives Plus is a real thing anyone can subscribe to:
There will always be a free version of the newsletter available. In addition, I will keep on sharing as much as humanly possible on social media channels like LinkedIn, Mastodon and Bluesky. Because that’s just who I am and how I work: with extreme transparency.
What the paid version of Perspectives Plus offers is a commitment from me to the subscribers. Rather than merely using these publishing platforms as my own strange form of public therapy, I will now aim to deliver something worth paying for. Right now, it will consist of weekly emails covering recent news and events in our ecosystem (see free example issue). There will also be premium-only articles that dive deeper into the persistent challenges and possibilities in and nearby Microsoft Power Platform. Leveraging my lessons learned and observations made during my 19 years with this ecosystem.
It is again the start of a new phase for me. Previously it wouldn’t have been either possible or sensible for me to launch a paid newsletter. Now it is, so it has to be done. Then, make adjustments along the way as you learn more about what the audience wants and what I can deliver.
This is also the first time ever since I can launch an actual Black Friday offer!🎉 For a limited time, you can get 50% off the annual subscription price of Perspectives Plus. Tell your friends and family that this is the perfect Xmas present for them (if they happen to work with Microsoft technology, that is). Use this offer link.
One final tool related thing. In the last 4 years that I was in charge of creating the everyday visuals for social content of a boutique consulting company, I learned to enjoy Canva. It’s a great example of a citizen tool that allows people with little professional skills yet enough determination to create graphics for whatever purpose. So, to close things off for this blog post, enjoy the promotional video clip I created for spreading the Black Friday offer message in my social feeds:
I have been blogging quite a while in terms of calendar time. One year ago I did some math on how much time has been spent on the blogging activity itself. This data can be found in my post “Is blogging worth it?”
The online world around me has gone through many waves of changes. The most recent one involves the term you see in this post title, which may or may not be familiar to you. I certainly didn’t know about it a year ago. Today, I am making (or at least attempting to make) my first WordPress blog post that goes out into the Fediverse via ActivityPub!
To put things into context and explain what & why I’m doing, let’s look back a bit on the road that lead to the rise of the Fediverse.
Humble beginnings
I started my first blog over on Blogspot sometime in 2007. That blog doesn’t exist anymore, yet recently Google reminded me of the image files they’re still hosting related to that blogging activity. Including this wonderful photo of the actual corner in my bedroom from where it all began:
After I found the Blogspot cloud service too limited, I decided to go on-prem and install a version of Drupal on a hosted server somewhere. That site doesn’t exist anymore either (at least I hope it doesn’t). In 2009 I figured Drupal wasn’t designed for my purposes and moved my personal blogging onto WordPress. That specific blog is still online and this is the first post I found on it:
That post’s content was a surprise for myself. I would not have recalled that I had originally joined Twitter for the same reason as the masses did: to follow what celebrities around the world were sharing about their life (140 characters at a time).
A bit earlier, in 2008, I had already started another WordPress blog called “Surviving CRM” which eventually evolved into the blog you are reading right now (“Thinking Forward” at jukkaniiranen.com). The core WP enginge has remained the same behind the scenes (with countless version updates, of course) and the main contents of all the blog posts is also still available.
Everything else about the blog has changed several times (pages, topics, visual theme, plugins, features, linked services), yet fundamentally it’s the same digital object that was born 15 years ago. With a few domain redirects that I put in place, you could have even started following my blog via its RSS feed back then and still today see this updated that I posted.
If someone would still be using RSS feeds, that is.
Social media boom and bust
My inspiration for starting to write blog posts naturally came from following other bloggers. The method for this was RSS (“real simple syndication”). I started trying out different feed reader software & services (like Netvibes) before Google Reader took over the feed aggregator market.
Then Google did what Google usually does, meaning killing its products. Presumably the monetization model for online media consumption based on open standards like RSS wasn’t lucrative enough compared to other ways Google could turn user data into something to sell to advertisers. When the hugely popular Google Reader was discontinued in 2013, no similar feed aggregator service took its place.
The online masses turned to social media services instead. Blog posts were no longer a dedicated feed, now they were just a part of the updates presented via the social graph of users you followed. The likes of Facebook and Twitter owned this graph and realized how much more profitable it was for them to control it – rather than just showing a chronological feed and allowing users to categorize content. Enter the age of the algorithms deciding what the users were seeing.
Today, the social media as we came to know it in the golden age of Facebook and Twitter is slowly yet surely dying. I had remained an active Twitter user for over a decade, despite of the decline in organic network content and the rise of algorithm pleasing clickbaits and political outrage filling the feed. After seeing the massive damage that Elon Musk managed to create when taking over on October 27th 2022, I decided to stop posting new content on Twitter on November 18th.
I knew that the things which had been broken in the process, primarily user trust and the sense of community, would be unlikely to ever get fixed again. To make it easier for everyone, Musk eventually decided to kill also the Twitter brand and replace it with X. That cross shape is a very fitting symbol for the graveyard where the blue bird was laid to rest.
I’m kind of happy to see this, as it draws a clear line between what Twitter was and what its new owner wants it to be. I wouldn’t want my online identity to be associated with the latter one. No, I haven’t deleted my account nor tweets, because I also don’t believe in changing the world by erasing the past. We can only move forward in this life.
What comes next?
Just like there wasn’t a new Google Reader to take over the service that was killed, I don’t believe there will be a new Twitter to take the place of what is now called X. Sure, many will be attempting to build the exact same thing, including the earlier Twitter CEO, or the established social networks like Instagram and TikTok.
“Insanity is doing the same thing over and over and expecting different results.” So what if some new mobile app comes along and captures the market share for the time that we used to spend on Twitter? The chances of history repeating are high, thanks to the natural life cycle of online platforms that leads to enshittification.
“Here is how platforms die: first, they are good to their users; then they abuse their users to make things better for their business customers; finally, they abuse those business customers to claw back all the value for themselves. Then, they die.”
The early days of blogging did not provide everyone an easy onboarding experience nor an streamlined UX for casual content consumption. Yet there was none of this shit. In exchange for all the convenience and endless dopamine shots that the global, proprietary online platforms give us, they will also serve you an ever growing daily dosage of shit on a golden plate.
At the same time, blogs haven’t technically gone anywhere. No, you’ll never have every TikTok user create their own blog. That is not the goal because there is no one to set the goals but us. If you’re like me, you never even set any goals in life to begin with.
As long as there is a sense of community being established and ideas are exchanged between people who you wish to interact with – that’s a pretty good life to live online.
Yet not everything can be a blog post. We can’t pretend to be professional journalists working for major newspapers, writing formal and polished walls of text as the only means of communicating with the outside world. The idea behind social networks isn’t fundamentally broken – only the business model that leads to their inevitable enshittification. What was once commonly called “microblogging” in the distant past has certainly proved its value in the act of idea exchange and information dissemination through peer networks.
Once I realized that Twitter was over for me, there was a proper incentive to think about what other tools are there for this type of communication. I saw my network exhibit interest in Mastodon and decided to give it a go. I managed to get past the infamous “pick a server” question, created my user account, searched for other interesting accounts to follow and gradually settled in. Today, it feels like a very natural home for one of my many online identities.
Mastodon has around 2.1 million monthly active users. As such it won’t be a threat to any of the networks run by publicly listed tech giants. Also many VC funded startups in this market may well be able to burn cash for user acquisition in ways that Mastodon will have no possibility to match – by design.
In the end, it’s a decentralized social media platform that no single deranged billionaire can acquire. It’s just a bunch of regular folks running a few servers that facilitate the federation of user feed content between them. There are no ads to be found in Mastodon feeds because the whole concept does not exist in that technology. Content isn’t shown to users based on any algorithms because again, that’s not a thing in Mastodon. In both good and bad, what you follow is what you get.
Hello ActivityPub
RSS is a protocol. Twitter at some stage talked about their ambition of becoming a protocol for the internet, but quite obviously they didn’t move into that direction. Now, ActivityPub that powers Mastodon and much of the Fediverse is an official web protocol with a W3C stamp on it. It has also gained interest from commercial players like Meta and WordPress.
Protocols are cool because they are not dependent on any single organization. You can send email from your Microsoft 365 Outlook to a Gmail address and all of the core message content will be similar in both services. The UI, the features and the email experience in general can be different (especially with both MS and Google “reimagining” office applications with their own flavor of generative AI). You can innovate on product development and also the commercial model while still preserving interoperability with other services that use the same protocols.
So, if ActivityPub is the thing that allows you to both read and publish content on a social network like Mastodon, how does it relate to blogging? Is it just like Twitter you still had to tweet out the links to your new blog posts and make them visible to the followers of your Twitter profile? Well, it’s a bit different – and it’s also still very much work in progress.
In March this year the ActivityPub WordPress plugin was acquired by Automattic, the folks behind WordPress.com (and also Tumblr). Presumably the experience will become much more integrated with WordPress in the future, but we can already deploy the ActivityPub plugin on our self-hosted WP instances. Here’s what the settings look like on the admin side for my blog:
"People can follow you by using the username Jukka@jukkaniiranen.com or the URL https://jukkaniiranen.com/author/jukka/"
What’s that all about? It means that when using a service like Mastodon, people can find this blog by searching for “Jukka@jukkaniiranen.com”. As an example, when using the Elk web client for Mastodon and logging in with my @jukkan@mstdn.social account, I can perform this search in the app and land on a profile that represents my blog. It’s an independent thing on the Fediverse that users can follow, even if they don’t care about the rants I post on my “main” profile and just want the long-form content like this blog post.
It’s kinda cool and confusing at the same time. Which is a lot like setting up a blog was 15 years ago, or what Twitter was in 2009 when I signed up for it. That’s part of the reason why I’m excited about the recent rise of federated online services. You don’t have to be a geek to start using them, but it definitely helps.
Is ActivityPub the replacement for RSS then? I don’t quite see it that way today. However, for the majority of the current online population who have never subscribed to an RSS feed to begin with, I see a lot of potential in this new protocol to revitalize the social web. To take back control from the mega platforms that are doomed to follow the path of enshittification. To spark up new innovation in both the established web players (WordPress, Mozilla, Medium etc.) as well as make room for new projects to find an audience outside the walled gardens of X, Facebook and the likes.
Things won’t magically become better with decentralization. Sustainable business models or consumer grade UX aren’t easy to come by with no direct ad revenue. If the popularity of a decentralized service grows, many problems like content moderation or infrastructure scaling will certainly be as hard as on the centralized side. From Twitter to Mastodon, from Instagram to Pixelfed, from Reddit to Lemmy, from YouTube to PeerTube – if the same people move from one technical platform to another then so will the problems caused by people.
We should not stop moving, though. We should not accept that the one party who holds the most data (generated by the users) gets to decide on the rules. We may not be able to avoid using many closed systems with ad revenue based business models. Yet we must ensure that our content is not captive inside only such systems.
Evolution is all about competition, about having a choice. For us users of the web to have that choice, we must A) use the power of owning our content, and B) put in the effort to learn and support new tools.
The best time to start a personal blog was 15 years ago. The next best time is now. The best time to join Mastodon was before the Bird died. Today is another fine day for it. Learn about it from Fedi.tips and follow me (@jukkan@mstdn.social) and this blog (@jukka@jukkaniiranen.com) if you get there!
This text was written by a human being, not AI – even if some of the images are AI generated.
Adding such a disclaimer would have sounded ridiculous only a few months ago. Today, many of us are starting to be rightfully sceptical towards online content we come across that touches upon any current hot topic. Is it organic or at least partially machine produced?
LLMs, large language models, struck earth like a meteorite in the end of 2022 and made some of us question what we really understand about the current capabilities of computers. If you’ve logged in to ChatGPT or signed up for the New Bing version now running on top of OpenAI’s GPT-4 model, you will have certainly experienced a “WTF?!?” moment or a few when seeing the kind of answers they can come up with.
In this blog post I’ll reflect on the experiences I’ve had with this latest wave of AI capabilities and how I think they potentially will change the business I operate in. Meaning low-code application platforms (LCAP) and in my case the Microsoft stack of tools.
Why didn’t we see this coming?
When discussing the AI phenomenon over a pint of craft beer with a colleague of mine a couple of weeks ago, he asked a great question: “why didn’t anyone see this recent AI wave coming?” Indeed, how can people in the tech industry be so surprised about what took place in 2022 on the AI front? Where’s the catch? Is this real or just momentarily hype that will fade away once the next hot topic comes along and takes over our LinkedIn feeds – in the same vein as web3, crypto, metaverse etc.?
One of my all time favorite phrases is “first gradually, then suddenly”. It applies to pretty much any disruptive change that the world of technology and business encounters. Things like AI don’t just emerge one day and immediately start wrecking havoc. Instead they remain in the “bubbling under” stage for quite some time, then they suddenly erupt.
ChatGPT has been called the iPhone moment of AI. If we think about the technology that Apple put together to create the original iPhone as a product, key elements like touch screens or downloadable apps were all introduced many years before by the biggest player in the phone business (Nokia). It was not the existence of these technical capabilities that created the perfect storm. It was the way in which they were delivered to the market as a product that made people think: “wow!”
Creating a web service like chat.openai.com and just casually making it available to the whole world on one day was completely different from having the GPT family of LLM published via the traditional APIs and researcher/developer focused forums. Unlike the iPhone as a physical product, no one needed to purchase anything or make a switch/commitment to experience the potential of generative AI. That’s how you grab the attention of the world in these always-on always-connected days.
Even alpha geeks like Bill Gates didn’t believe it was going to happen this fast. Tech giants like Google had been sitting on much of the technology needed for building what became ChatGPT, yet they lacked the financial incentive to proceed with it. As a result, in 2023 I’m now using “just Bing it” in a non-ironic way. One year ago I would have given a below 0.1% chance for this being the year of Bing – and today it already clearly is such. Google has access to all the necessary tech to grab the lead, yet the dynamics of their business model (targeting search based ads) is a force very similar to that which took Nokia under once phones became computers. Google, like probably also Nokia, became a victim of their delusions of excellence.
So, about the original question. No one saw this coming because that’s how disruption always happens. Which leads us to the next topic:
OMG, they’re coming after us now!
In the IT consulting business we’re accustomed to the endless talk about change. Everyone wants to change the way how people use technology, and many are surely fantasizing about being able to disrupt existing business models. Very rarely, if ever, do us tech people see ourselves as the target of such disruption. Until now, that is.
What the recently discovered capabilities of LLM based AI systems have shown already is that a very, very significant share of what us knowledge workers spend our days doing while at work can be handled by computers. It should be a wake-up call to all of us: we have been wasting our wetware brain cycles for reading and writing things that generative AI should be processing instead.
Shouldn’t we be happy about AI coming and promising to handle the mundane parts of the consulting business that we didn’t really enjoy all that much anyway? While everyone sort of cheers for the virtual assistant that can process our emails, summarize data, generate reports, (very shortly) do basic interactions with CRUD based systems – some might notice that this also sounds like an existential threat. Even Bing knows it:
Ah. AI skills and bioweapons nicely coexisting in one answer from a service that used to be just a dumb internet search engine a few months ago. Nothing to see here, folks! Move along!
When I first started to explore this recent leap in AI’s capabilities, I was introduced to Moravec’s paradox. It states that high-level reasoning requires very little computation, while low-level sensorimotor skills require enormous computational resources. In short what this means is: replacing the driver in a car will require a huge amount of computing resources, whereas replacing the office worker sitting next to a computer all day is almost trivial in comparison.
This is not what most of us have been taught about how technical advancements replace human workers with digital tools. Yet it makes perfect sense when you think about it. The natural selection of evolution has had billions of years to develop the skills we use for observing and operating inside a physical space. Email has existed for only 54 years. We are all really just helpless babies when it comes to processing data, yet we are quite advanced in our abilities needed when diving through the busy streets of a city full of physical objects / actors.
The arrival of year 2022 level AI skills in the form of LLM was the first time many of us ever needed to take a look in the mirror and say:
We used to be the ones disrupting the working life of others. Now we are gradually joining the ranks of disruptees. No, I still don’t regret one bit that I chose to pursue a career in the cross section of business and IT. This is a much better position to be in when thinking about what lies ahead and who’s got the possibilities of participating in building something new and exciting.
Things have always evolved and we’ve seen technological leaps before. I just can’t help thinking that the world in which I grew up to understand what IT is about will now seem incomprehensible to the new generations who’ve yet to discover it.
Backward never
As a child, the first time I got the chance to physically interact with a computer was the ABC 80 that my dad bought. Serious computers seemed very complex to use, yet at that time I was young enough to entertain myself simply by typing on the keyboard and pretending to use the computer. Fake it till you make it, right?
Photo by Frédéric BISSON: Pacman on Atari 800XL at RetroGaming Days IV
When I got my first personal computer for myself, the Atari 800XL, it supported loading games from a cartridge that you just plugged in. That was the “instant gratification path” of using a computer. I did also start reading the magazines of the time and even typed in a few of the Basic games, transforming the code that was printed on the paper into bits that I typed in via the keyboard. It was interesting, yet it always felt too hard to achieve some tangible results. Code didn’t provide me a way to express myself. It wasn’t until I started creating music on the early PC tracker software that I saw computers as a tool for creativity.
My kid is now 3 years old. As he’s getting exposed to how technology is used in our daily lives, I’m pretty sure he’ll never see computers as “hard to use”. Now as the natural language interaction pattern will presumably quickly take over most casual usage of smart devices, the concepts of programming or code may remain very distant to him. He’s already happily giving Google Assistant voice commands via a smart speaker in our living room. Why wouldn’t it work for everything by the time he’s old enough to start creating things with computers on his own?
It goes far beyond the difference between punching keys vs. shouting commands. As of today, Google Assistant is a complete moron compared to ChatGPT. It won’t be that way for long, though. The idea of a computer that understands what you want to achieve without it having been programmed to fulfill that specific request is a shift so profound that such AI capabilities will be infused in every possible smart device. Because otherwise calling them “smart” with the 2021 level of skills would just get the vendors laughed out of our homes and businesses.
Soon, no one will be given the opportunity to claim that they don’t know how to use computers. There may not be a single visible computer around, but everything around you will be processing data and adjusting itself to the sensors inputs. That’s likely the world in which our children will grow up in, regardless of what we as parents would do. Life without ubiquitous AI may soon be like trying to live without electricity.
And now to Power Platform.
Everyone as a developer
The idea of how the low-code Power tools could eventually democratize the creation of applications is something very close to my heart. The products were introduced roughly a decade ago now. At around 2018 I started talking about the crazy idea of how in the future creating apps would be as commonplace as creating documents already was. I used it as a way to get my point across when talking with colleagues, claiming “every PowerPoint should really be a PowerApp”. I wanted to challenge their traditional idea about apps being something big and expensive created by professionals, insisting that they could also be small, disposable things created by anyone with a computer.
MS has of course been talking about infusing AI into their product portfolio for a long time already. We’ve seen some neat little demos and product features introduced with what NLP (natural language processing) has been able to do, but in reality it hasn’t had almost any impact on the everyday life of the app/flow/report makers. Sure, AI Builder as a citizen friendly entry point into the world of Azure Cognitive Services has seen some real-life usage, yet it has hardly been a mainstream tool for citizen developers.
The more powerful next generation AI features have first landed on the pro-code side, under the GitHub Copilot product. These stats from the announcement of the latest GPT-4 based Copilot X version give some indication about the adoption rate. It doesn’t sound like just a marketing gimmick anymore. A fair share of developers out there are probably at least considering taking it into everyday use for the process through which they produce their work output.
Those of us who come from outside the world of programming and spend our days working with something other than raw programming code could soon be facing the same question: should I let AI do a part of the work for me? As anyone with more extensive experience on Power Platform probably agrees, low-code does not mean low complexity. Working with data, business logic and UI can present quite a cognitive load, even if you are “just point’n’clicking” or writing Power Fx formulas instead of JavaScript or C#.
If anything, no-code/low-code should become the area in which safe usage of AI generated components would go mainstream a lot faster than in code generated without any productized guardrails around it. In the end it’s still all made of code and it all runs in the Microsoft cloud already (in the case of Power Platform). Training dedicated AI models to serve this well defined playground should be a very doable task for the platform provider. Of course the UX of how app makers interact with the generated results needs to be thought out, as direct manipulation of the generated code wouldn’t be quite ideal.
If business users will learn to leverage Microsoft 365 Copilot to generate documents for them, how far can we be from the stage where they are also comfortable generating apps and automations in the same way? I believe were are definitely moving into the direction where questioning the abilities of non-programmers to design and develop their own tools isn’t a valid generalization to make anymore. I honestly did not believe we’d get so close to the state of “hey Copilot, turn this PowerPoint into an interactive Power App” being a possible reality this soon.
This, in turn, will lead us to the question to think about: is this what the world really needs?
The NoApps future
In the end, people don’t need apps. In the same way as the record industry was formed around the concept of producing, promoting and selling physical items containing a representation of music created by the artists, our current business applications consulting industry is also focusing on the intermediate output. The actual value delivery is something we must never lose sight of. Else you may find yourself selling plastic discs when the world has decided to jump into streaming audio instead.
Quicker creation of apps will initially have plenty of demand I’m sure. Besides, it really is a cool demo that you could draw a form design with pen & paper and then have AI generate a digital app’lified version of it (both Microsoft and OpenAI have used this scenario). Yet it’s still just a static data capture form. How many forms can employees or consumers navigate through during their days before getting exhausted with the “there’s an app for everything” experience?
These UIs for standardized data capture and processing have been needed because our technology couldn’t previously work with anything more fuzzy. Well, we’ve now seen through ChatGPT that it most certainly could. Not only can the AI figure out what us humans mean, regardless of what language we type our text in. It can also figure things out from what anyone else out there in the world has written.
There’s an interesting demo / research preview of “just some guy” applying GPT-4 to instruct the web browser on what to do. Not just writing out the instructions but actually performing the steps. In the example provided in this TaxyAI project, while on the GitHub website, giving a prompt “protect the main branch” will trigger the AI to do research on what that means, where it should be clicking, and then completing the steps as an RPA style bot:
I’m not saying this is a tool that would go mainstream. Rather it serves in giving ideas on what the tech giants out there will be creating with their 1000x budgets. The Copilots of tomorrow will not just return a box filled with text that they generated. They’ll probably do the actual work for you, rather than just providing instructions.
Think about all the process documentation and ad-hoc instructions that has been created inside a medium size enterprise. It will never be realistic to turn each of them into dedicated apps and automations. Yet if we get an AI service that can read these instructions created in human language, turn that into actions for the computer, and then complete the chain of activities to move from the original process input to the final process output – that would be something.
The concept of “working out loud” by proactively sharing our observations of the world and our accumulated knowledge with the community of colleagues meeting on a digital platform has been a great productivity booster and a source of professional & personal growth for me. Today with ChatGPT or Bing we can gain further benefits by “thinking out loud” with the machine, providing it a sequence of dialogue like prompts. The natural evolution from this could lead towards a world that actually supports “working by thinking”:
“Hey Copilot, I spent €50 on a cab ride.”
“I can see that you’re in a city where you had previously agreed to visit for a customer project. I’ve grabbed the Uber receipt from your email, filled all the details into our corporate systems and the reimbursement has been deposited back to your bank account.”
Instead of this sounding like a scene from some flashy “World of Tomorrow” video created by IT companies to sell us boring & expensive tech of today by using a fictious scenario from the year 2060 or something – it doesn’t sound too far off anymore. An AI assistant that understands what we say we want & what others say we should do in order to get it is in theory here today already, in the form of LLM based chatbots.
We just need to plug it in.
Endless problems
Cue the soundtrack from The Terminator. This is exactly how you create Skynet, isn’t it?
“Defence network computers. New… powerful… hooked into everything, trusted to run it all. They say it got smart, a new order of intelligence”. “Skynet saw all humans as a threat; not just the ones on the other side” and “decided our fate in a microsecond: extermination”.
Michael Biehn as Kyle Reese in The Terminator (1984)
AI will introduce brand new problems for humanity. Some will be existential (“is there a place for us in the world after AGI arrives?”), others much more mundane. What I’m somewhat worried about is that we’ll be faced with them pretty much all at once in the greater scheme of things. Without the ability to identify what is a serious issue for the whole world, what is merely a speedbump on the road to innovation and business productivity, we’ll be mighty confused.
The number of things we could be worrying about when it comes to AI is overwhelming already today. Use this list as an example and pick one item if your bag of worries is looking empty:
Copyright issues of imitating/borrowing content from original makers without permission.
Tech monopolies growing even bigger and stronger than they are today.
LLM hallucinations making it impossible for us to know what’s right & wrong.
The internet & every media getting flooded with machine generated content.
Biased data in the training sets inflicting harm on how minorities get treated.
Next generation surveillance society á la Minority Report.
The challenge I see ahead is that AI may be unlike anything we have ever encountered before. Sci-fi literature and movies have attempted to provide at least some context to the phenomenon, enabling us regular human beings to talk about what’s happening around us by using references from popular culture. Yet where are the AI consultants that will help organizations of all shapes and sizes make sense of this? (I know: just open LinkedIn and everyone is an AI expert there these days. But anyway.)
The range of reactions to AI that we can expect to encounter when starting to talk about it as just regular technology consultants is probably going to be all over the place. Many organizations will have legitimate legal and compliance concerns that will cause them to choose the “better safe than sorry” approach and put things on hold. Elsewhere, the gains from initial experiments with LLM powered information systems may turn out to be so compelling that AI becomes the next Digital Transformation that must be sprinkled on top of everything the company does.
I suspect the divide between individuals will be even greater. Just like the low-code tools have enabled the new breed of app makers to stand out from the ranks of ordinary business people and create something few of their colleagues could have ever imagines, the same thing can happen with adoption of AI tools. One’s formal education nor professional background may not be the best criteria to identify those who’ll be able to apply this new technology into solving real life problems.
If anything, I suspect it will be even more likely that the domain experts, the citizens, will be able to set aside all those “this AI generated code is garbage compared to what a true professional developer could write” complaints and just focus on the end results from using that code instead.
Good enough is close enough
We’ve been taught to believe that the world of computing is very binary by nature: it’s either 0 or 1. Computers either behave in a logical, repeatable manner and deliver the exact result they have been instructed to – or they deliver nothing but an error. People trust the computer to be right just as long as someone programmed it the right way.
LLM’s have flipped these roles around. Now the computer is the creative one, generating an endless list of ideas and content variations, based on the simple prompts given to it by humans. Not instructions like code, as there’s no way to guarantee that the neural network would produce the same output the next time you provide the exact same input. This new generative AI is whimsy and unpredictable, which makes it so much closer to behaving like us humans do.
If you work in a profession where any part of your output can be presented as text, there’s a high probability you’ve given ChatGPT a go and tested how it performs in producing similar outputs. It’s equally likely that you’ve seen the answers given by the machine to contain plenty of factual errors. “Hah! Nice try, AI, but no matter how much data they feed you, you’re still just a stochastic parrot“.
We should of course take pride in our craft. Many of us work in an environment where the professionals who can provide the most detailed answers to questions presented to them get the highest amount of respect. We gain trust from others, we build up our own confidence, we “level up” by being knowledgeable in our field and delivering high quality work outputs.
Are you always right, though? Of course not, we’re all only human.
Can you apply your expertise to any areas of business? Heck no, the deeper we go on topic Z the less time we have for studying topics A…Y.
Can you work 24/7/365? Not possible, you know that.
Communicate in any language? Why are you even asking these th…
WILL YOU WORK FOR FREE?!?!? Okay, I prefer not to continue this discussion anymore.
AI doesn’t have to be perfectly accurate to be of extremely high business value to companies. It only needs to be close enough, so that the superpowers it does possess over us living and breathing human beings can be put into use. Yes, it will very often need supervision and intervention from humans at some stage of the process. Yet the biggest financial gains will be achieved wherever the share of human work can be brought down to a minimum. Which means people will be very creative in finding ways to harness the creativity of AI in novel ways.
AI can always be there for you when needed, whereas a human professional cannot. In my line of business, today the customers are googling for answers and following videos & blog posts to manually repeat the steps on a computer to get their job done. When it gets too tricky or they don’t even know what to search for, Power Platform Advisors can step in and ensure the desired results are achieved. Customers can rely on us, but they need to sacrifice both their time (adjusting to whenever we are available) and money (sorry, we also have to make a living).
If you can take away all these nasty human constraints, AI will be a sweet enough deal to consider as an option for pretty much anything. People will try it because the barrier is almost non-existent. The tools for creating business solutions will have the Copilot capabilities baked into them, thus promoting them as the first resort. You’d be crazy not to use them.
What about the possible damages, though? Let’s say that generative AI is right 90% of the time and a human professional gets to 99% accuracy. When your AI built business solution causes big problems for the first time, won’t everyone go back to the good ol’ professionals?
There will undoubtedly be business models emerging that work a bit like insurance does. Since we can’t be sure that LLM based answers are correct, and we also can’t sue the AI for providing us wrong advise, someone needs to step in and become that middleman. Yes, accidents will happen and someone needs to cover the damages. Now, if your AI based service costs €20/month instead of €200/h and you’ve got a policy that promises to fix whatever issues were caused by unsupervised AI-driven decisions – it can be quite a lucrative model for both parties.
Bicycle evolved
Steve Jobs called the computer “a bicycle for the mind.” It is a beautiful, powerful metaphor. In the early 80s, the democratization of computing through the rise of a personal computer that was available for work and personal tasks was presented as a huge leap in the capabilities of an individual. Just like hopping on a bicycle improves man’s efficiency on energy use per kilometer travelled beyond that of any animal in the world, our possibilities for cognitive work rose onto a new level as computers became an everyday tool within our reach.
AI could lead to something of similar magnitude eventually. Is it just a faster bicycle, though? Did our computers become more powerful or did the tools change in a way that requires a new metaphor? When talking about LLM based tools like ChatGPT specifically, I quite like the analogy of “calculator for words”. It underlines the way in which these new tools of 2023 need to be approached as not the all knowing sources of truth but rather the wizards of words. They are extremely powerful in delivering combinations of words to represent most things us humans use text for (be it communication or code). However, assuming that they understand the world in the way that humans do is a mistake to be avoided when making use of their wizard skills.
If the electronic calculator was brought into an office where everyone had previously been crunching the numbers with only pen and paper, what would be its impact? A thought exercise like this might help us in understanding why there will be both enthusiasm and scepticism expected as AI capabilities begin to appear in the applications and platforms used in organizations today. And just like what happened to the physical calculator devices, eventually we’ll get a next generation of machines where the ability to perform calculations is just one app among many.
Two years ago I wrote one blog post that became fairly popular – possibly because the idea explored in it was still a bit like science fiction. At that time we were only 6 months into COVID pandemic and most people were still scrambling to adjust to their new working lives, now spent largely inside digital tools like Microsoft Teams rather than physical workplaces.
Microsoft Teams as a platform was not the first thing that organizations were looking for back then. Yet the huge spike in Teams usage and similarly in the amount of money Microsoft started allocating to the product made it seem like a logical future state. In my blog post I even predicted that Teams could become the next Windows – an OS level fabric that brings Microsoft back into the game now dominated by Android and iOS.
Has science fiction turned into reality since then? Are we now living in the future with cars driving themselves and apps running inside of Teams? Not just yet. Although I bet we’re closer to the latter vision becoming mainstream than the former one. In this post I’ll round up some of Microsoft’s announcements from the past few months and combine them with my personal observations on where we are today in regards to the Teams as a platform vision.
Innovation delayed
My general thoughts on the direction where things are headed with Teams haven’t changed. Yet it has become obvious that the pace of change will not be as dramatic as the sudden shift to remote work might have lead us to believe. This isn’t necessarily a bad thing for any of the parties involved.
Not only are the software end users often overwhelmed with how product features change and how capabilities tend to shift from one tool to another. The simple question of “where do I go to find this information” has an incredible number of possible answers in the Microsoft cloud. Yesterday your file was in Windows Explorer, today it is in SharePoint, tomorrow you’ll use it via Teams, and the day after your file will be gone and transformed into a Loop. Oh, and that Office thing doesn’t exist anymore, it’s now Microsoft 365.
Umm, what?😦 Imagine taking a longer break, such as parental leave, then returning back to work to discover all the core tools and vocabulary of the information processing tools have changed.
Then there is the product development side. Microsoft isn’t just building a single mega product called Teams, rather they are assembling several existing capabilities to serve as the foundation for modern work. These will usually take a few years. Just like Power Apps wasn’t born to work together with Dataverse (the 2015-2018 era), Teams wasn’t designed to host all your Power Platform apps initially.
It has easily taken 3-4 years from the announcement of Power Platform for the technology to actually start working like a unified platform from app development perspective (and you still run into 10+ years old legacy Dynamics CRM areas inside it on a daily basis). Trying to squeeze all of it to work within the frame given by Teams while this unification is going on… – well, the metaphor of replacing parts of an airplane mid-air comes to mind.
Dataverse for Teams
The idea of allowing Microsoft Teams users to independently provision Dataverse environments within the teams they manage was radical 2 years ago – and it still is. Today in every organization to where I’ve deployed the CoE Starter Kit to start analyzing the platform usage, the number of Teams based environments created has been high.
Whether the citizen developers have actually done more than install the sample apps or do quick tests with Power Apps – that’s a different question. What I do know is that at our company (Forward Forever) we’ve built several apps on Dataverse for Teams for our customers when a broad use / light touch scenario hasn’t warranted a premium license for all uses. I’ve been preaching the Dataverse for Teams gospel in many occasions (like Teams Nation 2022), to help raise awareness for all the cool things you can do with just a Teams license.
I gotta admit: it hasn’t been easy. The tools available for solution management in Dataverse for Teams are quite frankly unfit for purpose. What we have available today are more like a combination of temporary workarounds. It’s now 2 years since Dataverse for Teams GA launch and we don’t really have any formal ALM story around how to manage apps and environments on this platform. Which leads me to believe the investments nor ownership for Dataverse fo Teams at MS simply aren’t there today. Not at the level compared to 2 years ago, at least.
The co-existence of full Dataverse and the lite version in Dataverse for Teams has been a struggle also for the Power CAT team at Microsoft who develop and maintain the Power Platform CoE Starter Kit. A Dataverse for Teams edition was launched in April 2021, containing most of the features from the full Kit. This was to date the best demonstration of how complex solutions you could technically run inside Teams, while making them accessible to anyone with just a Teams license. In September 2022 it was announced that the team could no longer justify making the required investments in maintaining the Dataverse for Teams version:
A sad day for Dataverse for Teams platform story: #CoEStarterKit in DV4T is "deprecated".🪦 From now on, there's a premium price tag for any Maker that should view or update compliance data for their #PowerPlatform solutions. PAYG needs to be evaluated as an alternative. pic.twitter.com/Rs0xbbIPzK
In addition to the data platform side, there are plenty of quirks in the Power Apps studio experience, too. The product team has been aiming to unify the Maker experiences of these different studios for quite some time already. I get the feeling that there’s just so much unification efforts going around, ranging from things like Fluent UI support to the general “Run One UI” initiative (from 3 years ago already). It’s turning into one of those “in the fullness of time” episodes where we need to draw our own conclusions on what are the reasonable choices to make in the present moment.
Still, there is certain beauty to how Dataverse for Teams has been constructed from only the modern elements of the stack. Leaving away all those old layers that depend on the legacy web client infrastructure and who knows what ancient XRM bits the full Dataverse environments contain – that’s a brave goal to pursue. Shutting off direct access to the Dataverse APIs (used in every XrmToolBox plugin, for example) is surely necessary if the feature set of a “free” Dataverse for Teams edition needs to be restricted to differentiate it from the premium edition.
In theory these design choices make sense, yet what we see as the practical outcome from them as the “Power Apps in Teams” product today is… incomplete, for the lack of a better word.
Your business data accessible via Teams
Let’s move on from the app maker scenario in Teams and explore how existing business applications from Microsoft align with Teams today. In Summer 2021 there was a big statement made by Satya Nadella himself that Teams customers would receive access to Dynamics 365 data at no extra cost. I blogged quite extensively about the possible means through which such a capability might be implemented in practice.
So far, it all remains speculation only. It’s been over a year now and these capabilities have not materialized as product features that would support the licensing or security model required to make things real. Microsoft has been actively promoting the collaborative apps theme, though, and we’ve seen some demos of how Teams could better expose business data within the context of conversations.
After you see the high level product vision in a demo video, it’s always a good idea to search for the product release plans for any matching items to answer what exactly might be arriving into which product and when. Recently I noticed that in the latest release plans for Dynamics 365 pretty much all the Teams and Outlook related new features under Sales had been removed from the plan. It was later clarified by a MS employee that these were in fact moving under the Microsoft Viva Sales app:
These features will ship within the context of Viva Sales, and we're actively working on them. 👍That said, I agree this was a confusing message… apologies. @jukkan would love to find some time to sync and get your feedback on Viva Sales (I'm leading the PM team).
Microsoft Viva of course is a huge topic of its own. In a way, it is all about bringing apps within the context of Teams. Yet all those Viva apps will be built by Microsoft. It is therefore not a similar platform story nor an opportunity as what Power Platform represents to customers or partners.
There’s a lot of resemblance between the Dynamics 365 and Viva brands, in the sense that they are 1st party apps designed in Redmond. A few years ago we saw the Dynamics 365 product family rapidly grow with new apps being announced every few months (remember all those “AI for X” products?). A lot of them seemed quite experimental in nature. I suspect we’re about to see the same phenomenon within Microsoft Teams as new Viva apps will be arriving for various business processes. These will demonstrate how MS themselves are using Teams as the platform for their products.
Viva Sales
The first Viva product with a business application focus to reach GA status is Viva Sales. It is marketed as “the app that removes the burden from your sales people to work with your big, clunky CRM system directly”. The notion here is that CRM tends to evolve into a tool for sales management and customer master data integration across other big systems, which can be at odds with what the persons doing the real interaction with customers would need to get their jobs done.
The three main areas where the Viva Sales app manifests itself are 1) Outlook side pane for emails, 2) Teams chat/channel messages and 3) Teams meetings. The app itself doesn’t store customer data, rather it connects with either Salesforce or Dynamics 365 to pull this information.
If you’re a Salesforce customer, than the purpose of Viva Sales today is pretty clear: helping your sales people to use CRM data across Microsoft’s Teams and Outlook apps. If you’re using Dynamics products, then this will sound pretty familiar and obvious to you. You might be wondering: “isn’t that something we can already do today?” To a large extent, yes. Much of what Viva Sales represents to existing MS customers is the promise of a better tomorrow with future integrations and experiences that may deliver new value.
This leads us to the commercial positioning question. Salesforce customers will need to pay $40/user/month to access Viva Sales features. Dynamics 365 Sales Enterprise or Premium users will get it bundled into their existing subscription. For everyone else, Viva Sales is not relevant / available today. Maybe in the future we’ll see more CRM systems supported, who knows. I think it will depend a lot on whether the Salesforce audience buys into this or not.
So, how would Dynamics 365 Sales professionals users get access to Viva Sales? By upgrading from their $65 subscription to the $95 Enterprise version. What about users of other Dynamics 365 CE apps like Customer Service Enterprise? By paying $20 more to add Sales Enterprise into their plan. OK, then what if you’ve built a custom business app on top of Dataverse? It’s not supported today by Viva Sales, although Charles Lamanna suggested it was in the works. We’ll see.
For everyone working with business data in Dataverse, the existing Dynamics 365 App for Outlook remains an option. It’s one of those “hidden gems” of Power Apps that MS avoids bringing up too much, yet the Outlook integration is fully supported and working with a Power Apps license. As for the Teams integration part, we have the Dynamics 365 app that hasn’t seen much love recently but also hasn’t yet been announced as deprecated.
Microsoft has said they are working on bringing more Viva apps to support customers’ business processes. It’s likely that we’ll see a customer service focused app at least. While these targeted experiences sound sensible from a single user persona perspective, it’s unclear to me what the targeted state for collaboration scenarios across departments should look like. Will a sales rep share an account in a Teams channel via the Viva Sales app and then for the customer service rep this somehow switches to be the “Viva Service” app data instead? Multiply this with all the other departments plus custom business apps on top of Power Platform and we’re going to need bigger navigation bars to accommodate all the different app icons…
The Viva Sales price point of $40 is something I personally see as a tough sale. For perspective, back when Dynamics CRM Online was launched globally, the whole CRM cloud suite covering sales, service and marketing cost less than that. It also included the XRM platform, which has since then been split into a dedicated SKU called Power Apps Per User – at $20. Comparison of empty platforms vs. readymade apps isn’t that fruitful, though. Perhaps the sticker price is set intentionally the way it is, to then allow MS account managers to negotiate sweet deals with customers running Salesforce today and get them more deeply hooked into the Teams platform story, instead of Slack.
Teams infrastructure for applications
The more people do their work inside Teams, the more demands there are for it to work like an operating system rather than just a meeting app. The current framework we have in Teams right now, based on Electron, is a known resource hog and a performance bottleneck that doesn’t scale into the future vision of the Teams platform. There is also great challenges in enabling cross-organization collaboration today, given how painful the tenant switching process is for accessing resources as a guest user in a team.
— Jukka Niiranen mstdn.social/@jukkan (@jukkan) October 10, 2022
We’ve heard Microsoft say that Teams 2.0 will eventually arrive, built on Edge WebView2, yet the timeline remains unknown. The next Teams version might be tightly integrated with Windows 11. At least the Teams Linux client was recently retired and users are instructed to move to the Progressive Web App (PWA) version once available. This all points to MS being quite serious about turning Teams into something that isn’t merely a Zoom alternative for meetings but more like an extension of the OS. If that means the best experience is available only via modern Windows devices, maybe it’s not such a bad trade-off with the current market share of Teams.
Performance isn’t the only infrastructure issue that may stand in the way of Teams becoming more of a platform. If a growing number of applications and services are consumed via Teams rather than via a native app or the browser, this inevitably turns the eyes of IT professionals into the security implications of such a shift. A recent study has revealed that the app model used by Slack and Teams is potentially “six years behind that of iOS and Android”. Once organizations wake up to the possibilities of how individual Teams users can authorize third party apps to run code from external servers and potentially impersonate them for phishing purposes, for example, Microsoft will be forced to spend a lot more energy on platform security topics.
One might think that while allowing 3rd party applications with custom code running in external services could be problematic, allowing the low-code apps built on Microsoft’s own services inside Teams would be an easy choice to make. Yet it’s in fact the opposite. External apps from third parties have been in the app store for many years now, while the publishing of Power Apps into Teams store has been explicitly forbidden. Distributing low-code collaborative apps across organizations has therefore been a bit of a dead end. Presumably the Power Apps based solutions wouldn’t have met the Microsoft Teams store validation guidelines.
A few months ago the wording in the documentation was changed and now it says: “If you’re interested in publishing your power apps in the Teams store for users across all organizations, please fill out this form.” It seems the product team is now gathering data on which scenarios to prioritize for the app store publishing route. Getting the road open for partners to distribute Power Platform solutions via the Teams apps store may still take some time.
The final topic which I want to touch upon before closing this “state of the Teams platform” analysis is technically not about Teams, yet in practice I think it’s very much intertwined with it. I’m talking about Loop components.
It’s a bit over a year now since Microsoft announced Loop at Ignite 2021. One year later, at Ignite 2022, the Microsoft Loop app was again announced – as private preview. I bet not many people outside the MS geeks ecosystem have interacted with a Loop component (at least intentionally). While the product documentation tries really hard to get you excited, claiming“the possibilities for collaboration are endless”, in fact you reach the end of possibilities with Loops today quite quickly. You might create a quick list in a Teams chat, then that component gets pushed into history as new stuff arrives – and you never see it again.
I think this has not been the optimal way to build up authentic excitement towards the technology. What MS could have been putting more emphasis on is showing how data can be pulled from an existing source, like CRM or other systems of record, and then shared as dynamic cards in the context of a discussion. These scenarios have of course also been included in Microsoft’s product vision videos for a long time already, with Context IQ linking you to any business record via a simple at-mention. Yet the problem is: it’s been a while and all we still can do with Loop is type text into lists and tables.
Coming from the low-code side, I was pretty excited the first time I saw the feature that has now been given the name Cards for Power Apps. Technically it isn’t anything revolutionary, rather it is a citizen developer friendly way to utilize the concept more familiar to pro-devs: Adaptive Cards. It’s not a flashy real-time co-editing experience of data like Loop aims to be, yet it is something that’s much easier to find real business use cases for. Interactive notifications that allow you to complete a quick data entry task without opening any other apps – the world is full of scenarios where these could replace the daunting of system generated emails.
The idea of sharing a live Loop instead of a link to a document or an app in the cloud is something most information workers probably wouldn’t explore on their own. It will take many consecutive and consistent nudges from MS to get people to change their ways – which is why Teams probably plays a more important role in this shift than the dedicated Microsoft Loop app itself.
Cards for Power Apps today are a very rough preview still, yet I think these might be the middle ground that can actually push the idea of Teams as an application platform forward. We’ve seen Microsoft promote the concept of Adaptive Card-based Loop components for partners like SAP, Zoho, Smartsheets to bring their business data inside the context of a Teams chat. No, it’s not built on the futuristic co-authoring experience of Microsoft’s Fluid Framework – and that’s just fine.
For that future to eventually arrive, I believe we should first get a working intermediate version of the technology out there into the hands of the Makers. I really hope Microsoft could find a way to promote the makers of Power Apps to become “first-class citizens” inside the Teams world. Unlike the commercial ISV solutions from keynote demos that merely integrate with Teams, the citizen developer solutions could be born inside it – if only it didn’t require extra effort and compromises like it does today.
Recently I was invited to the Demystifying Enterprise Innovation podcast run by AgilePoint. The podcast host Sharjeel Sohaib is interviewing experts from the field of digital process automation technologies and low-code platforms.
Our topics covered not only the Microsoft specific technology in Power Platform but also the broader market around low-code/no-code platforms. How are they impacting the lives of citizen developers? What should organizations do to drive the low-code tools adoption? Where is the technology underneath these platforms heading towards?
This turned out to be quite a comprehensive “state of Power Platform in 2022” type of a discussion. I guess that’s just what tends to happen when someone asks me a question about it. Below is the mind map of what I planned to cover in the podcast episode (click for a bigger image):
You can listen to the end result on your favorite podcast service – assuming it is either Spotify or Apple. The detailed show notes with a few quotes from me are available on the Transistor.fm page for the Demystifying Enterprise Innovation podcast.
Notes and thoughts
In the podcast episode we start by discussing my own journey as a citizen developer from 20 years ago, learning about CRM / marketing automation processes at a large B2C company (Nokia). This path then lead me to different Dynamics CRM consulting roles, and most recently going all-in with Power Platform in 2020.
Being on the citizen side from day one instead of starting my career in formal IT projects has been undoubtedly one of the key reasons why I’ve found the low-code movement to be so close to heart. To me, the ability to democratize code is a much more worthy goal than just trying to get sales people to enter more information into the CRM database.
Sure, such business apps may be the “what” but citizen development is the “why”. The way Microsoft has managed to infiltrate the existing toolkits of these citizens by bundling Power Apps and Power Automate into Office 365 is the prime reason why things have moved along so fast in this space. Merging PowerApps with XRM 4 years ago is what allows them to still keep moving fast today, even as more complex enterprise IT requirements now need to be met when the apps originally built by citizen devs are becoming more & more business critical.
Despite of this move towards enterprise processes, bottom-up innovation is still what excites me the most. Grandiose digital transformation programs with their top-down agendas may have the big funding behind them, yet I believe the net impact from small apps built by citizens motivated to fix practical issues in their daily working lives is going to be greater in total. Teams as a platform is a story that may cause problems for us more experienced MS BizApps practitioners, and still this kind of simplification is definitely needed when you really want to scale low-code in practice.
Power Platform governance topics are where I spend the majority of my working days on right now. When delivering our Power Platform governance advisory services, I’ve seen how difficult it can be for the IT organization to get a handle on citizen driven apps and automations – at least if no one was there to educate them on how Power Apps & Power Automate administration works in practice.
This is not so much a challenge of the technology not being available. Rather it is the new roles and alignment of IT alongside the citizen developers that poses the biggest barrier for companies to feel safe enough to fully embrace what this corner of the MS cloud can offer them. The same gradual increase in maturity that has happened with Office 365, Azure, and also Power BI from the “power family” – all of it seems inevitable for Microsoft’s low-code products, too.
This is why we’re now seeing less new maker focused features right now and a bigger push for admin & governance capabilities in Power Platform. The next big target for MS is in formalizing the fusion development story for low-code, to get the professional developers on board this new way how customer organizations address the growing demand for digital solutions that can’t all be met with custom code alone.
The ISV opportunity in Power Platform has not yet been a true focus area for Microsoft. Their emphasis has been on the internal transformation of organizations via citizen developer solutions. Yet many MS partners are naturally interested in the huge opportunity of the low-code movement. They’d love to become a part of this new ecosystem where the number of low-code developers is growing by 40% every year. However, there’s a lot of work ahead before the mainstream wave of ISVs could be onboarded to Power Platform, both from commercial and technical perspective.
We can’t just take the good ol’ Dynamics business model and apply it to Power Apps since the platform is designed to empower bottom-up innovation distributed all across the organization (who’s gonna do the top-down purchase decision on your project?). Neither can we make the Office style assumption that all these tools would be common to all information workers (justifying the premium licenses requires stepping outside the generic productivity story and quantifying the value from business specific processes). Experience from the other MS clouds is definitely a major advantage from an ecosystem insights perspective. At the same time, if you just sprinkle a bit of Power Platform technologies on top of your existing business model and projects, you can’t expect to see any radical growth or shift in how your customers are engaging with you.
At Forward Forever we’ve been lucky to get the chance to educate several MS partner companies on the practicalities of developing apps for Power Platform in 1:1 coaching sessions over the past two years. It has affirmed our belief that this low-code movement is an infinite game where we aren’t competing against other players. There’s no sense in trying to be the winners once the final whistle blows. Rather we should do our best to keep the game going, helping the whole league around us to grow and build an audience (even a fan base) who wants to see us succeed.
There are no winners or losers in an infinite game; there is only ahead and behind.
Simon Sinek
In addition to advising customers and partners on how to succeed with Power Platform, we’ve also invested resources into building products on top of it. Our offering in this field has recently reached a point where our Sustainability Action Pack is now listed on Microsoft AppSource for everyone to see. It’s a solution template that provides tools to drive environmental actions, make progress transparent and help organizations reach their social, environmental and climate targets (see SECAP).
Power Pages, Power Apps, Power Automate, Power BI – the whole MS low-code stack is being used when we’ve delivered the solution to municipalities in Finland. The big difference compared to Azure based applications, for example, is that the end product truly runs on the customer’s platform. Modifying and extending our Sustainability Action Pack functionality can be done by business users – as long as they’ve got the willingness to learn how Power Platform works.
This might have been just marketing talk a decade ago. Today the reality is that the persons who are willing and able to use these low-code tools to shape your business applications are likely to be among your most valuable employees. They probably haven’t been hired for this exact role, yet the organization should acknowledge the positive impact that they’re able to achieve by adopting Power Platform tools and thus adapting your tools to deliver better business outcomes. Otherwise they may quickly find a new place to work where such evangelism is appreciated.
From the outside, as a consultant/advisor, we can only show you the direction to take. The real adoption journey for low-code relies on empowering internal personnel to build new things that create business value. Ownership of your own tools is the biggest difference in mindset when it comes to the traditional Dynamics business applications versus the new breed of Power Platform solutions. This is the revolution in low-code – the technology part is just evolution.
For more of my thoughts on Microsoft Power Platform evolution / low-code revolution, go and check out the podcast episode:
Throughout my whole professional career, I’ve worked with technology that caters to information workers. Sometimes I’ve been the power user of these tools myself, then a manager responsible for defining the details how these systems should work. For the past decade I’ve been the guy who actually puts the technology pieces together to deliver that system.
I have never written code in traditional programming languages for a customer project. Sure, I’ve done plenty of work that isn’t accomplished via point & click GUIs, but none of it resembles what the Wikipedia definition of computer programming says. In short: I don’t code.
Every year it feels like I’m sinking deeper and deeper into the technology domain of Microsoft business applications, and at the same time it’s less & less likely that I’d start writing code for a living. The rise of low-code development platforms (LCDP / LCAP) like the Microsoft Power Platform means that there are more & more people like me out there. Citizen developers are taking over many application development tasks but they don’t do what traditional programmers used to do.
The impact from this paradigm shift is potentially massive. Computer programming isn’t going away nor decreasing as a professional activity. However, application development as a task is being separated from the domain of programming. The output of what “code” used to create is therefore being democratized:
Democratization of technology refers to the process by which access to technology rapidly continues to become more accessible to more people.
In this article I want to write down a few observations and thoughts on this topic, which I’ll hopefully get to drill deeper into in future writings.
From code-first to low-code
Things have moved along surprisingly fast. Just three years ago there was a small debate in the Dynamics 365 community on whether all functional consultants should know how to write code. Neil Benson’s excellent article called “Three forbidden words: I don’t code” popped up in my Timehop stream a while ago to remind me about this. (I must stress that despite of the title, Neil actually argues against the need for every consultant in the project team to write code.)
Today in 2021, this whole question on whether every IT worker should invest time and effort in learning a “real” programming language felt to me like it must have been from a decade ago. To put things into perspective, we have to keep in mind that this original debate took place in 2018 , at a time when the fusion of Microsoft Dynamics 365 and PowerApps (the “no space” era) had just been announced. MS had only just begun the process of throwing BizApps consultants and citizen developers into the same pool of technology. It was a very different world still.
Fast forward to 2021. If you look at what the Power Platform community has been debating about recently, I’ve seen a lot of concern from people with software development background & skills. “Isn’t Microsoft valuing coders anymore?” is a question that can rightfully be asked when looking at the common theme of marketing messaging coming from Redmond. It’s a stark difference to just 3 years ago for sure.
Already earlier, many customers who have previously been burned by problematic CRM implementations full of custom code have begun expressing their preferences in subsequent projects. “Avoid code based extensions and leverage OoB configuration options wherever possible” has not been an uncommon requirement to hear from them.
Now when Microsoft is advertising how powerful the low-code options can be, it’s going to be even harder to suggest code-first solutions to customers. At least you need a clear justification for why custom code is necessary. This can have unfortunate side effects, too, where the avoidance of coding leads to an even harder to maintain maze of configuration spaghetti. Different cooks, same dish.
I’m not so sure that it’s wise for MS to go out and shout to the world at this point that “Power Fx is the world’s most used programming language”. Also, I wouldn’t personally say that my Excel skills have gotten me that far in creating formulas for Power Apps Canvas apps. It takes a lot of tutorials and browsing through the formula reference to get into grips with Power Fx.
Yet there are unquestionable benefits from using the “Think Excel” mantra as the backbone for developing this new programming language for the low-code era. Not just for sharing the same function names, but rather for ensuring the focus of Power Fx remains squarely on the power users that can make Excel sing. Not those wannabe programmers who eventually want to move from the safe sandbox of Power Fx into something without the training wheels. Of course one still might need to have the programmer’s mental model for producing complex apps with Power Fx regardless:
The biggest problem with Excel is that it presents itself as a programmer’s tool, with a programmer’s value system. Programmers can make Excel sing, while normal humans can just muddle through. The solution does not lie in programmer mental models. 24
We need to keep in mind that Power Fx is not aimed at the audience who writes code for a living. Microsoft is not expecting that developers with skills in other programming languages would switch over to Power Fx. Rather the purpose of (eventually) open sourcing the details of the language implementation would appear to be in enabling other parties outside Microsoft to adopt Power Fx for their products.
Despite the ubiquitous role of Excel in the business world, we should not assume this spreadsheet software to be the only place where future app developer generations will gain their experience from. Gaming platforms like Minecraft or Roblox with their big focus on user generated content could be considered equally important sources from where the inspiration to become a digital maker is first put into the mind of an individual.
After all, being a guru in Excel formulas isn’t perhaps the strongest indicator of being a potential business app maker. The no-code generation is less likely to dive deep on a single tool, rather they are fearless in combining new services together on the fly to reach the outcome that they need. Separating this ability to grasp new technical tools from the ability to write algorithms in traditional software code is perhaps where the true democratization will take place.
Professionals vs. Citizens
The terms we use for grouping people into different teams in the current articles that cover the phenomena of low-code and business applications are somewhat problematic. On one side we have the “classic” developers under the banner that says Professional Developers, while the other crowd represents the “modern” way of creating apps and has been given the Citizen Developers banner.
“And now, ladies & gentlemen, LET’S GET READY TO RUMBLE!!!!”
That is exactly how we should NOT depict the situation. There are no winners and losers in this game. We haven’t invented a silver bullet that solves all business problems. There’s no eternal glory to be found from being “all code” or “no code” in everything you build. Yet it’s obvious that we’re not talking about a homogeneous group of developers here. Some of the platforms and tools used may be shared across, but the roles remain distinct.
The amount of low-code business applications that organizations of all sizes in every industry will soon have in their hands means that we’ll see a growing number of employees working 100% on these. If low-code becomes your full-time job, you’re not just a citizen or a hobbyist. You’re a professional working with advanced technologies and complex processes. The only thing that separates you from the “classic” definition of a Professional Developer is that you don’t write much code (aside from things like Power Fx).
Microsoft seems to have already reduced their use of the Citizen Developer term. This doesn’t necessarily mean that it would not continue to exist in the discussion, as the idea of anyone being empowered to create apps still is a powerful way to get the message across. It’s more likely that the terms used to describe the different roles within the “fusion teams” that deliver Power Platform based solutions will need to be adjusted.
When a business professional starts handling more and more technical tasks in the app delivery process, I don’t think this makes him/her a Pro Dev nor a Citizen Dev. It is the area in which I personally operate and yet I can put a label on it. Luckily it doesn’t make my work any less valuable. I’ve always lived as the secret agent between business & IT, so I can easily remain to be that mysterious Agent X. As the army of these agents grows, though, they’ll become a lot less secret with their presence within organizations.
Are they simply “Makers”? Time will tell.
Where democratization may lead us
I think what’s happening today with software resembles something that has previously happened with media. Two decades ago we saw the Web 2.0 phenomenon that moved the online world forward from a static web towards a social web. The elements and the actors aren’t all that different from what the move from code-first to low-code apps is dealing with.
Content creation exploded when the ordinary people (citizens) were given tools and channels to shift from just being content consumers to the new role of content creators and publishers. That was a huge transfer of power. For me personally, my decision to start this blog back in 2008 and to become an active participant in the Twitter community around Microsoft business solutions have been far more powerful decisions than anything I’ve ever had the chance to make at my actual day job.
If the traditional media was run by Professional Journalists then what emerged from the social web & social media revolution might as well be called Citizen Journalists. No longer was there any formal training nor editorial processes required for getting your content out there. It had a profound impact on our society as a whole, in both good and bad. The forming of new citizen driven communities around topics like business apps is a very mild example on that scale, but it’s where I’ve been able to observe the phenomenon in the closest possible detail.
What happened with human communication in the Social Web revolution could very well happen with human-to-computer communication in the next uprising. On a high level, I can’t actually see that many differences between what WordPress did to words and what Power Platform aims to do to apps. Different context yet the same underlying dynamics of how the traditional top-down model is replaced with a bottom-up approach.
One specific insight that could be drawn from this analogy between the social web and low-code movement is the ratio between different user roles in each. Even if anyone could technically start a blog these days, relatively few people have done it (and even fewer have managed to stick to it over the years). Most are merely content consumers, and some are active in commenting or sharing content.
It’s very likely that we’ll see a similar distribution when it comes to low-code apps in the business world. Only a small share of those with access to the tools will ever become consistent app makers – and that’s perfectly fine. It’ll still be big enough figures to disrupt the traditional usage of code.
Opportunities and threats of low-code
Just like the rise of Facebook or Twitter didn’t solve every problem related to media, we aren’t going to reach the promised land of digital transformation merely through low-code application platforms. Many of the arguments heard from Professional Developers on why the actions of Citizen Developers will create a flood of new problems are in fact well founded concerns.
Change management and version control don’t suddenly become a non-issue. Application lifecycle management (ALM) isn’t automatically taken care of. Architecture design and documentation can’t be skipped. Just by moving certain parts of the software development lifecycle from code based tools to graphical configuration tools and formulas like Power Fx we’re not magically making all the other parts irrelevant.
Some of the problems encountered with traditional business application delivery will only be amplified by the low-code model. As the volume of apps grows, as we have more parties involved in their development process, as the backgrounds of these individuals will be more varied – we’ll run into scalability challenges for sure.
This just highlights the need for new innovation. Reaching into the existing ProDev toolbox isn’t likely to be the answer – just like you couldn’t adopt the practices from a traditional media newsroom and apply those into social media platforms.
Be it the creation of content or apps, any model of manual governance and control that relies on A) the creators to follow specific rules and policies, and B) human editors/gatekeepers to enforce them, isn’t going to scale very far. Algorithms must be put into use. AI needs to be given the opportunity to help us in everything that goes into developing and maintaining great business apps.
Can’t put the genie back in the bottle
It’s time to accept the fact that this thing won’t go away. What low-code represents is not any specific service or tool that today allows you to do A, B and C – but not yet D, let alone E. It’s all about the journey – how to move closer and closer to Z, one step at a time.
Success is not defined by whether you would ever reach Z without writing a line of code. What low-code platforms aim to do instead is to keep grabbing the low hanging fruits of app development, one by one. Focusing solely on the “what’s missing compared to code-first” aspect is therefore not very beneficial in understanding the actual value that has been derived from different generations of low-code solutions, be it RAD tools or application platforms like XRM.
Sure, there aren’t many new apps being built on top of MS Access or Lotus Notes anymore (hopefully). Does that prove it was a bad idea to build any of them in the first place? Of course it doesn’t. These tools may have only been good at A or B back in their days, yet there was significant business value to be gained for getting the crude apps out there to the users who needed to manage digital information via them. Besides, even if you built a “proper” app via custom code in the golden era of Access or Notes, you would have likely needed to re-build that solution a few times anyway to stay relevant with modern client technology and new business requirements.
The evolution of software keeps pushing us towards higher levels of abstraction. It would be strange to think that the direction could ever turn and we’d see a large scale return to artisan software being carefully crafted by coding every line by hand, reducing the use of libraries and APIs that offer shortcuts to those soulless programmers that just want to meet customer requirements quick & easy.
Early days still
I’ve had a great opportunity to dive deeper into the concept of low-code during the past year, ever since we founded a company that focuses 100% on Microsoft Power Platform based solutions. One key insights from all my investigation work has been that we’re not yet very close in finding common ground on what low-code actually means. Neither the vendors, tech media, consultants nor customers seem to have a clear understanding on where to position low-code in the greater IT scheme.
Academic research on topics like end-user development (EUD) / end-user programming (EUP) seems to have mostly stopped almost 10 years ago already – before the invention of the term “low-code”. One study from December 2019 specifically calls out the lack of recent research activity “There are very few publications related to low-code aspects and they are from the last two years, demonstrating its emerging trend.”
Since it currently appears to be mostly the vendors like Microsoft, OutSystems or Mendix who are pushing forward their agenda, with help from analysts like Forrester in building up the hype, it’s hard to know what percentage of the low-code and citizen developer stories out there are based on facts. Sure, projections like these make it sound like it’s already an amazing success story:
Gartner forecasts worldwide low-code development technologies market to grow 23% in 2021.
Forrester analysts estimate 75% of all enterprise software will be built with low-code technology this coming year 2021.
It must be great for anyone investing in low-code to be able to present such growth percentages, to prove they’re betting on a winning horse. Still, I feel like we’re only starting to write the greater story behind all this exciting technology. Democratizing the tools through which our digital world is built one app or one automation at a time – that’s gonna be a bigger deal than just the amount of VC money being pumped into no-code/low-code startups.
At the end, it’s not even about which tools and platforms will win. Looking at both the investments as well as progress made by Microsoft into/with Power Platform, I have very little doubt that they will be taking low-code into mainstream for real. What’s the truly interesting part is thinking about all the ways in which this may change the business user behaviour, the role of IT departments, the market dynamics for professional services – basically everything around the low-code platforms.
If that’s something you’re also interested in talking about in more detail, perhaps you’d want to reach out to us at Forward Forever. Or if you feel like there’s something I’m missing in the above thoughts around the democratization of code, I’d sure appreaciate any comments in the box below.
On the topic of Dynamics 365 and PowerApps licensing changes coming in October 2019, I earlier wrote about the biggest change in how Microsoft is separating the first party applications and the underlying platform in the new Per App pricing model. There’s another aspect in the coming licensing updates that has also caused a lot of concern among partners and customers: the API call limits. While the existence of limits on how much load one can place on the online service are not an entirely new construct, it’s the first time that the amount of API calls available is directly tied to the type of licenses bought.
“A single, integrated approach for daily capacity limits will be implemented to help maintain a consistent quality of service for customers with PowerApps and Flow plans. These capacity limits should not impact standard or reasonable usage of PowerApps or Flow. Organizations that require additional capacity for heavy usage scenarios will be able to purchase add-on capacity and assign it to specific users or processes.”
Updates to Microsoft 365, Dynamics 365, PowerApps and Flow Licensing
The finer details of the new model are outlined in the PowerApps and Microsoft Flow licensing FAQs for October 2019 as well as the Requests limits and allocations pages over on docs.microsoft.com. You should keep an eye on these documentation pages, since further information will be made available, based on the incoming questions from customers. There have already been a lot of blog posts around this topic and I’m not expecting the debate to die out anytime soon. Rather than speculating about what the exact policies will be, I will instead try to set this new consumption based licensing into context with what’s happening in the Microsoft Cloud.
Users aren’t the only thing that matters
USL, user subscription license, has been the dominant model for pricing applications from Microsoft in the online services era. Of course they’ve been a key component ever since the personal computing revolution started with PCs running DOS, then Windows and many productivity applications like those found in the Office suite. The networked computing era extended the pricing models to server software that wasn’t always purely a per-user play, as the complexity and robustness of your back-end services determined how expensive that side was. In the initial wave of SaaS business applications, we saw a return to the simplicity of just paying a fixed fee like $50 per user and getting all of that server stuff covered for you. Oh bliss! Isn’t this exactly the way the cloud should be sold?
Those first SaaS services also were in themselves quite simple. A replica of the server software you could have either in your own closet or the data center run by companies like Amazon and MS. You just offloaded the complexity involved in managing hardware redundancy, backups, storage etc. and instead payed for all that in the USL. This is all fine and dandy as long as the value from the applications can be closely linked to the number of licensed users accessing it. Using CRM as a simple tool to improve sales person productivity might map into this type of cost-value structure. But how about when you take a step further on the digital transformation path and start to actually replace those tasks carried out by human employees with something that is almost fully automated? Hmm, perhaps the PC business model isn’t optimal for a future that looks like this.
Let’s look at some of the new services in the Dynamics 365 cloud. The commercial launch of Dynamics 365 for Marketing in Spring 2018 was a bit of a shock for anyone who always though these applications are licensed per user. Instead, Microsoft chose the model that HubSpot any many other vendors in the marketing automation space apply, by setting the pricing per contact. Yes, initially they were way off with this thinking by applying the pricing logic to the entire contents of the CRM database, but based on market feedback the model was adjusted to now count only for marketing contacts actually used by the specific application (i.e. where business value should be generated). Also, you actually don’t need any Dynamics 365 user license for those marketing people who build the customer journeys and analyze the results, since free user licenses are available to unlock the door into the system. Licensing is done on the environment level, after all.
Dynamics 365 Customer Insights is a CDP (Customer Data Platform, for those not keeping up with the latest acronyms) that allows customers to bring in customer related data from various different sources and unify them into a “customer 360” profile that links all those activity entries into a single view of the customer. You can then leverage big data processing features of a CDP to generate target segments like customers most likely to churn, select them to be a target group in Dynamics 365 for Marketing customer journeys and preserve your revenue streams by holding on to these customers identified by the intelligent machine in the cloud. How is this service priced? Per number of profiles: starting at 100k profiles for $1.5k, so 1.5 cents USD per profile. Any user in the tenant can be simply authorized to access the application, since the dedicated UI doesn’t have any dependency to the USL construct found on the Model-driven application side.
Forms Pro is a professional version of the personal/team productivity app found in the Office 365 suite, storing its data into CDS entities for process automation and data analysis. Do you need a USL for the Pro features? Nope. The pricing is based on the number of responses to surveys, at $100 per 2k, making it $0.05 per response. If you want to listen to your customers and improve business outcomes as a result of that, it’s not about how many people you have looking at the data but rather how smart and how automated your feedback management processes are.
AI Builder will go GA in October 2019. Guess how that’s going to be priced? That’s right: not per user. You buy a capacity license at $500/month for 1M “service credits”. When it comes to machine learning models as a service, with no pre-packaged Dynamics 365 app on top of them, there isn’t even any concept like contact or survey response that would tie the pricing to the physical world. You literally extract value directly from the data you put in there, with the help of apps and automation that builds on top of and integrates with your unique business processes.
The consumption pricing model is already here. Future products in the Business Applications portfolio are more likely to gravitate towards that, rather than finding a user to attach a price tag on.
Sandcastles in the sky and how to draw the lines
In the cloud era, Microsoft can see everything. No, they don’t have employees looking at any customer’s private data or anything like that. What I mean is they have telemetry data on everything that happens on the service, because they are hosting all the moving parts involved. This gives them the opportunity to be very data driven in analyzing how products are adopted, what people actually do with them. It is essentially their own implementation of the digital feedback loop that you see James Phillips preaching to Microsoft’s customers and partners in every keynote he does. There’s the “transform products” part that is all about aligning product features to meet customer needs, but you can be sure MSFT also want to “optimize operations” when it comes to the logistics of delivering the cloud services and how to price them appropriately.
Dynamics 365 is claimed to be the biggest service running on Azure today. Now, even though at Microsoft they both fall under the Cloud & AI that Scott Guthrie runs, there’s not a single bucket where all the costs would be thrown. The more Business Applications products are built that consume data storage and compute capacity, the higher the bill from Azure will be. The term COGS (cost of goods sold) is being used frequently when talking about the resources needed to keep cloud services up and running on these platforms like Azure. Power Platform is a platform on top of another, and while it often uses higher levels of abstraction that its raw Azure counterpart, API calls from the citizen developer PowerApps do turn into API calls against Azure services. Whatever product is generating this consumption must also front the bill.
The vast majority of Dynamics 365 business today is still done based on user licenses, regardless of what our AI & big data driven future may look like. These are sold as SaaS apps you can just sign up and start using, rather than a complex solution that needs a technical architect to build the blueprint for. As such, the message Microsoft wants to get out there (but isn’t always so good in phrasing) is that the app user license should cover all normal usage for real human beings interacting with Dynamics 365 CE. Yes, anytime a user opens a contact form on a Model-driven app there are around 10 API calls made, which count against the quota for that particular user account. All CRUD operations theoretically count, but for an end user you shouldn’t need to count them. This is not the intention of MS.
What is the idea behind setting the API call limits then? Well, the situation is this: the platform has evolved from the early days of being a simple CRM database for sales user productivity improvement into something that can connect OoB to a vast number of external (non-CDS) data sources and run complex automation on this data without anyone sitting in front of their PC and opening those contact record forms. When sold as Power Platform, there will be a massive amount of this non-CRM style consumption of computing resources running on the platform (unless MS completely fails with capturing this new business potential). Building all of this abstraction on top of the underlying Azure services and then giving it a way with essentially a per-identity flat monthly fee just wouldn’t be a sensible business model.
It’s now roughly one year since Microsoft launched the concept of Power Platform. It’s been extremely interesting in the past 12 months to watch how this new platform strategy starts to play out in the world outside Redmond, as the pieces of this grand puzzle begin to become visible here and there. Having worked in the MS ecosystem on customer & partner side for 14 years now and coming from the Dynamics CRM side originally, this is the biggest single shift I have witnessed in their product strategy to date.
Putting all the puzzle pieces together is surely not easy for anyone who isn’t devoting a sizable share of their time on consuming information from the various events, announcements, blog posts and documentation released by Microsoft. The thing that really makes it tricky is that this Power Platform thing isn’t confined inside a single bucket. It’s not Dynamics 365, it’s not Office 365, it’s not Azure. It’s all of them and yet none of them. Every MS partner and every customer decision maker will increasingly run into the product messaging, but they’ll hear it presented in a different way – and most likely interpret it uniquely based on what their background is.
The only reason Microsoft would be investing so heavily in building and promoting the Power Platform is that they see a massive new business opportunity in it. As Steven Guggenheimer wrote in his recent blog post:
“The Business Applications Total Addressable Market (TAM) is predicted to be at $125B by 2022, and 57 percent of this will be driven by ISVs. Dynamics 365 and the Power Platform are an important area of investment for the company, and represent a significant growth opportunity for partners in this market.”
Accelerating opportunities for ISVs with new programs and technology – Steven Guggenheimer
Big numbers, but that’s what they always are in these grandiose statements about global market potential. What I need to understand when talking with customers, partners and internal stakeholders at our company about the strategic direction of Power Platform is from where specifically might this growth come from? To help these discussions I ended up drawing the following diagram about the four different dimensions where I see this Microsoft application platform strategy creating new business:
The way I see it, the growth will happen both A) inside Microsoft’s product offering and B) the outside world of customers and partners, within 1) the traditional business process management scenarios as well as 2) those processes that you wouldn’t have tried solving with any CRM style application/platform in the past. Let’s dive into each of these areas and I’ll explain what the impact of Power Platform might be in generating new business to run on top of this new Microsoft aPaaS (Application Platform as a Service) foundation.
1. Dynamics products
Let’s start from the most familiar ground. The place where the most concrete changes resulting from the Power Platform strategy have been felt during the past year must be Dynamics 365, and the Customer Engagement apps specifically. The platform formerly known as XRM is in the process of being replaced by what is sometimes referred to as “PowerApps platform”, although that may not be any official term that would stick. Regardless of the marketing lingo, the customizers and developers of Dynamics 365 CE solutions are right now facing a lot of pressure to adopt brand new concepts and tools that will replace those ~10 year old building blocks that XRM solutions were made out of. Compared to the earlier transition from on-premises to Online products, that may well have been a much easier shift to adjust to than this new Power Platform whirlwind that’s moving everything around on its path, from licensing to UI to SDK.
From the perspective of the internal Microsoft world, the Dynamics product teams have previously been somewhat captive of the CRM legacy that came along with the XRM platform. As a commercial software product, it wasn’t originally built to be a pure platform, rather the design choices and customer requirements drove it more towards being an extendable CRM application first and platform second. In the process of migrating Dynamics 365 CE Online to run on Azure services, the platform and the applications were separated from one another. To balance things off, there’s also been a huge unification process initiated with the client side technologies, where the target is to remove the barriers between Model-driven and Canvas apps, to Run One UI. The platform tools like PowerApps Component Framework (PCF) now give also the internal product teams a far more agile path forward in deciding what kind of features and experiences the specific apps like Sales or Customer Service should contain. What this means is that the stagnation period where everyone had to just wait for the new platform capabilities to become available may be coming to an end and in the next release waves we can expect a significant growth in new app functionality being shipped to Dynamics 365 customers. In other words, a growth in application depth.
Alongside this internal platform development, another huge benefit that Dynamics 365 as a business has gotten from the new direction at Microsoft is the closer connection with the Azure teams. A few years ago there was still the MBS silo to keep up the walls between CRM & ERP business and the mainstream MS product business, which explained a lot why we didn’t see so much of the Azure innovation trickling down to the business applications built by the same corporation. Now the tables have truly turned as we’ve witnessed all of the new applications like Dynamics 365 for Marketing betting heavily on the very latest Azure services. AI is getting infused into every product at Microsoft, but it also gives birth to brand new products like Sales Insights or Virtual Agent for Customer Service. To link all this with the Power Platform story, it’s important to understand that this platform side is what eventually allows customers and partners to customize these new apps and services to meet their real life business requirements. The growth potential in this Dynamics products segment is being amplified by the fact that PowerApps, Flow, Power BI and CDS give it the extension points needed for going beyond packaged SaaS apps. The growth in Dynamics 365 app portfolio width is therefore driven by the Power Platform connectivity with Azure.
2. Other Microsoft products
While the merger of Dynamics 365 CE and PowerApps platforms is a great boost for the Dynamics products, that’s not the only area within Microsoft that is touched by the Power Platform strategy. Office 365 has of course been the biggest product display window for PowerApps and Flow, due to how services like SharePoint and OneDrive have been deeply integrated with these tools. There is a Microsoft 365 Business Applications partner program that interestingly enough doesn’t seem to align with the “actual” Microsoft Business Applications group’s activities at this moment, as it sits within a different organizational box, the Modern Workplace solution area. When you think about the origins of how the previous generation apps for information workers were often built on top of the ubiquitous SharePoint Server, this arrangement does make sense, but I wouldn’t expect these separate boxes to remain forever in place. After all, what’s been happening to PowerApps recently in terms of commercial success is “like SharePoint all over again” (according to Charles Lamanna), so all roads here lead to the Power Platform being the growth engine for Office 365 and Microsoft 365 to reach further into the customers’ information management needs.
Have you looked at the MBAS Gallery yet? Microsoft Business Applications Summit 2019 was last week and already the majority of sessions have been published online for also non-attendees to enjoy. Even if you attended the conference in Atlanta, there’s a chance that you may have missed a few sessions, with there being 200+ of them in 2+1 days.
Live recordings of sessions are nice – if you have ~200 hours to sit through them, that is. As is the case with podcasts, I rarely come across a moment in my life where there would be empty space just waiting to be filled with a 1h chunk of audio/video of people talking about something that might or might not be valuable to me. On the other hand, I’m very comfortable with skimming through endless amounts of text & pictures, in search of something that warrants my real attention and further processing. That’s where PowerPoint slides are just awesome. Bullets, tables, charts, diagrams, screenshots, OH YES!
Last week I started going through the MBAS session catalog and downloading the slide decks for interesting sessions. (I’m not the only one who hoards PPTXs from MS events, check out MVP Jussi Roine’s blog for his tips on learning quick as a consultant.) Now I’ve got a folder with 115 PowerPoint files weighing in at 4.5 Gigabytes. Hmm, looks like some further prioritization is still needed to narrow these down. Well, one thing’s for sure: I know where I want to start diving into the content. The future of business apps awaits in this session:
Run One UI – the future of canvas, model-driven, and Unified Interface in PowerApps (BRK2073)
For those with Dynamics 365 Customer Engagement background, the topic of user interface unification might lead your thoughts to Unified Interface. Originally announced 2 years ago, this new client infrastructure aims to do away with the earlier divide between web client, phone, tablet and Outlook. More importantly, it’s a foundation for unbundling the application specific UI controls from the platform and opening up the road for everyone to build the kinds of controls that Sales, Service, Marketing and all the other 1st party apps contain. That story is called PCF and it’s a big deal for sure, but something even bigger is on its way.
This “One UI” does not simply look at the Dynamics side of the house, rather it encompasses the whole app story in Power Platform. Ever since XRM merged with PowerApps, we’ve had this somewhat awkward divide between Canvas apps and Model-driven apps. These terms don’t mean much anything to customers when explaining them the platform capabilities. For the Dynamics professionals the concept of a “Model-driven PowerApp” sounds artificial. While on the back end the CDS, admin and developer story is coming together quite nicely, on the front end we see two experiences with not too much in common – today.
We’ve already heard Charles Lamanna make a statement that Microsoft has no intentions of keeping the app types in PowerApps separate:
“Artificial limitations in app features will be removed, so that choosing [File – New App] will give you model or canvas experiences and everything will work across both.”
Power 365 Show: Power Platform Changes and Answering Community Questions with Charles Lamanna
Sounds cool! But how exactly are they going to pull off this merging of the two client frameworks with a very different history? On the platform side it was fairly simple as XRM probably offered a lot of what CDS v1 was capable of and turning it into CDS v2 was not a big issue due to low adoption rate of the less mature technology of the two. PowerApps Canvas apps on the other hand have a huge momentum going on and the number of apps in production is exploding. Dynamics 365 CE ain’t doing too bad either when it comes to growth figures in the cloud, so messing too much with it sound very risky. After all, we’re still waiting for many existing customers to even move from the classic web client to Unified Interface, so do we really need more confusion in this space?
In the Run One UI session at MBAS we heard Clay Wesener present the master plan of how the two different app types will gradually turn into one PowerApp. Here it is:
This is really just mashing together the start and end state from Clay’s presentation, so this time you really should reserve an hour of your time and watch the recording, to understand the finer details. And grab the slides for reference, naturally.
A key part of the plan is that this won’t happen in a big bang. There won’t be an “Even MORE Unified Interface” launched at some grandiose marketing event, rather Microsoft will introduce capabilities from one app type to the other in a gradual fashion. PCF just arrived on Model-driven Apps as a public preview, soon it will start showing up on the Canvas side, too. Canvas Components are bringing the more structured way to define the UI into the previously blank canvas where each pixel used to run free, making it more like the grown up version familiar from enterprise business applications. These new parts are all about blurring the lines between Canvas and Model.
In the past I’ve written about the History of Microsoft CRM from it’s first 10 years. I’ve also explored how the platform evolution up until Dynamics CRM 2013 had changed the product and how we worked with it. This time I want to focus on specifically the Microsoft Cloud era.
I started to think about the different focus areas that we’ve seen on the journey that’s taken us from the early CRM Online days into what the current roadmap for Dynamics 365 and the greater Power Platform look like. In my mind these “snap” into four logical stages that describe what the main ambition at any given time seems to have been for Microsoft’s product team:
Why bother looking back? Well, I could insert a “those who cannot learn from history” quote here, but really it’s more about putting the present into perspective. There are still plenty of customers who’ve either stayed with Dynamics CRM on-premises (now 365 CE by name, too) or who are still viewing the online service as just a “CRM in the cloud”. Hopefully this post will help in understanding the magnitude of change that has taken place in the greater Microsoft cloud during the past few years and why it would be better for them to embrace it rather than just observe it.
1. Parity
The very first versions of Dynamics CRM Online in 2008 wasn’t exactly the same product that you could get by installing it on your own application servers. The limitations on features and customizability meant this was a “CRM lite” that saved you the effort of infrastructure investments and server management, but there were a lot of trade-offs. You gotta start somewhere, but obviously this wasn’t exactly up to the vision that Microsoft saw as what the cloud services should offer to their customers.
Upon the global launch of Online we received the updated CRM 2011 version and most importantly the solution framework that after several iterations now powers the ALM story behind Power Platform. Closing down the gaps between Online and on-prem was the primary goal for product development, with the “Power of Choice” being a key selling point against server-only or cloud-only competition.
While the customization capabilities in CRM Online were surprisingly powerful already in 2011, the gaps in actually managing the environments you had no direct access to took a longer time to close. For the enterprise customers to consider moving from fully controlled servers and databases to the MS hosted cloud, a lot of investment was needed in building self-service features for instance management – not to mention ensuring the cloud apps were reliably available and updated in a controlled manner.
Today the flexibility of spinning up new instances, copying them for test & dev, taking backups, syncing data to Azure SQL for reporting, and many other self-service features available for admins make the cloud environment quite attractive. In exchange of giving up full control over your servers and databases, you have the luxury of not having to think about them at all. There are no servers to patch up and keep running. As for the updates, it’s now a continuous delivery of new & improved features that puts an end to the concept of an upgrade project altogether. Sure, you’ll still need to do your part to ensure customer specific customizations and integrations keep working – that’s just another service that needs a continuous delivery mindset.
2. Integration
Once the cloud version was sufficiently close to the on-premises Dynamics CRM server, the next stage was all about making it better than on-prem. This was the era in which Office 365 was really taking over the business productivity market, so you could say the low-hanging fruit was in tapping into these existing services in the MS Cloud and making Dynamics CRM a more attractive application through those.
Sure, we had heard the “better together” story for Dynamics + Office already in the on-prem days, but this wasn’t exactly the way we today expect cloud apps to just work with one another. Complex server configuration tasks were surely a nice source of revenue for the IT consulting companies, since very few customers were able to know all the ins & outs of how to properly deploy an Internet Facing Deployment of your Dynamics CRM server and make it talk with other MS server products. From Microsoft’s perspective, having useful product features available for everyone in theory doesn’t scale into real world customer success if there simply isn’t enough skill out there to deploy everything the way MS engineers do it in their labs. Well, when it’s all run by MS from beginning to end, this made it a solvable problem.
Making common online services like Exchange and SharePoint available for Dynamics CRM admins to click & configure on their own was one key part of this journey. What this Cloud + Cloud combo also meant was that new features from the latest versions of each service could be rolled out at a much faster pace than the server bits could ever follow. Oh, and since all the services were by default available via the public Internet, mobile clients became an everyday tool for accessing your CRM information.