A few weeks ago I wrote an article on how investing in structured, semantic data can help move tools like ChatGPT from the “Trough of disillusionment” to the “plateau of productivity” and create intelligent agents that are actually intelligent. The core was that standardizing on REST Level 1 (or better) and beginning to layer in JSON-LD could provide a more meaningful and factual foundation for generative AI like GPT3 to deliver revolutionary value to organizations.
Less that three weeks later, Tony Seale, a Knowledge graph engineer, posted a brief demo video of these ideas in action.
I spend a lot of time these days thinking about how to turn data into information, and information into knowledge. I work as an independent consultant and help my clients with knowledge management and the architecture and implementation of knowledge systems. I do a lot of R&D in the knowledge graph space and I’ve long dreamt of applying these ideas at personal scale to manage my own knowledge portfolio that allows me to not only capture what I learn, but find it again when I need it.
It turns out, the idea isn’t exactly new, and available technology today makes the dreams of the visionaries who first imagined what technology could do for human cognition are now ready for us to adopt. Applying these to my life and workflow has been transformational! Let me share the tools and techniques I’m currently using.
Since ChatGPT became publicly available last November there has been an explosion of interest, articles, blogs, videos, arguments for-and-against; it can be difficult to separate out the hype from the reality. If you haven’t yet played with the public beta, it’s worth taking a look; first impressions are often downright startling.
One of the most impressive capabilities might be ChatGPT’s ability to seemingly answer questions asked in a casual, conversational manner and many hailed this as “the future of search” with Microsoft and Google both scrambling to integrate these capabilities into their search engines. A mind-bogglingly complex language model trained on a web-sized corpus of text boasts stunning capabilities although it doesn’t take long to discover that beneath ChatGPT’s impressive grasp of language there is a serious lack of knowledge. Google’s parent company, Alphabet, recently lost 8% of its market cap–roughly $100b USD–after their live-stream conference demonstrated Bard, their language model, returning incorrect answers.
The Mastodon post above summarizes my–and so many other’s–experience. Never in my 20+ years in the industry have I seen a technology move from the “Peak of Inflated Expectations” to the “Trough of Disillusionment” so quickly (see Gartner Hype Cycle). There is something powerful here, especially if it can be integrated with actual knowledge. Forward-thinking organizations are adopting the existing standards and architecture that just might be the key to unlocking the dream that GPT-hype represents. The first step may be as simple as evolving your API strategy.
The 2022 mid-term election was less than a week ago, the dust is still settling and which party controls the chambers of congress remains uncertain. Beyond doing the requisite research necessary to fully complete and submit my ballot, I’ve tried not to follow the day-to-day drama too closely. It’s just not worth my mental health and well-being.
Regardless of the outcome, I’m grateful that election day is now in our societal rear-view-mirror (Except you, Georgia… sorry). The onslaught of political ads has slowed to a trickle as have the heated arguments, the fundraising emails, and the apathetic broadcasting their indifference in quips and memes. I’ve started to reflect on these memes and I am beginning to believe they communicate a deeper truth, and it’s probably not what the poster was intending…
In Part I of this series we discussed the case for reconsidering the humble monolith (with some structural improvements), now we get to the work of actually implementing this architecture pattern in a .Net Core (.Net 6) Web API project. The final base solution will be published on GitHub
Ask most developers these days “Which is better: Monolith or Microservices?” you will likely receive a prompt and definitive “Microservices. Hands down.” The term monolith has become a pejorative; a four-letter word in software architecture circles. The folk-wisdom criticisms are not entirely undeserved, after all there are a lot of bad monoliths out there; unmaintainable, untestable, brittle to the point of personifying a Jenga tower of code. Many (perhaps most) non-trivial monoliths in the wild today could be classified as a Big Ball of Mud. I submit that most criticisms of monolithic software architecture would be more accurately targeted at Ball of Mud architectures. A monolithic deployment granularity doesn’t necessarily presage a Ball of Mud and furthermore, adopting a distributed architecture (such as microservices) does not automatically inoculate a system against evolving into a Ball of Mud.
This is a talk that I have been privileged to see some early drafts of its development. I’ve been eagerly awaiting the finished product. Nimisha Asthagiri joins Scott Davis to lay out the vision of Solid and Pods. It is a delightfully protopian vision, and one that is eminently in reach.
In this talk, Nimisha and Scott explore Tim Berners-Lee’s new vision for the Web – Solid and Pods – where user data is “at the beck and call of the users themselves… a future in which [web] programs work for you”. This is an alternative path where privacy and resiliency are at the heart of our system architectures. A path where the web’s pendulum swings back to decentralization. A path that leads to a fundamentally user-centric tech ecosystem.
This question, it would seem, has been answered countless times on countless blogs, articles, conference talks, papers, etc. yet here I am, joining the throng to tilt at this windmill.
My understanding of REST has been evolving continuously over the past 15+ years. I continue to find new nuances, new applications, new patterns, and rediscover concepts that I once completely misunderstood. I have brilliant friends and mentors, but I’m an autodidact at heart and more often than not, they merely illuminate the path. As I’ve sought to navigate this life and the information space we call the web, I have learned being self-taught is fraught with peril.