Tech
For many of us peer review is an everyday part of software development, but why do we bother and how can we do it well? In this post I share my top tips for peer reviewing code.
People
After months of hard work, rattling lines of code away, time in meetings, questions, debates, pair programming, banging your head against the wall after hours spent on one elusive bug, new technologies, old technologies, refactoring, testing, polishing and then… the day arrives. Our grad project app is to be released into the wild, used by the very ones who created it.
Tech
I recently spent some time remotely attending JSNation, a hybrid-format JavaScript conference held in Amsterdam alongside sister conference React Summit. In this post, I'll cover some points of interest from around half the talks I chose to attend.
Open Source
I'm excited to share that we are imminently reaching our next milestone as we release our set of test suites against FDC3 2.0. In this post, I explain what the FDC3 Conformance Framework is and how it works, and share our experiences from our contribution journey.
Artificial Intelligence
AI tools are being trialled in many areas including software development, with huge potential to transform ways of working. What might the impact of AI be on software architecture? In this post, I make some predictions and argue that software architecture may become more data-driven, with prototype architectures and architectural diagrams being generated from the actual code itself.
People
Every year at this time, I like to share my thoughts on the continuing relevance of Pride Month. This year, we're going to share insights from the Scott Logic team on what Pride and allyship mean to them, and why they value working in an inclusive environment. I get the ball rolling here.
Artificial Intelligence
Generative AI is moving at an incredible pace, bringing with it a whole new raft of terminology. With articles packed full of terms like prompt injection, embeddings and funky acronyms like LoRA, it can be a little hard to keep pace. For a while now I've been keeping a notebook where I record brief definitions of these new terms as I encounter them. I find it such a useful reference, I thought I'd share it in this blog post.
Tech
Using RabbitMQ as it is in Spring Boot works fine. But sometimes it's not enough. This article will explain how to alter the retry behaviour and consume messages concurrently by multiple consumers in RabbitMQ in your Spring Boot Application.
Tech
Spring Boot makes developer’s life easier through autoconfiguration. Even though it's true most of the time, occasionally we come across situations where autoconfiguration makes it harder to understand what is really happening behind the scenes and ends up wasting hours or may be days of developer time. This article is about one such rare occasion where understanding of RabbitMQ got confused with how Spring Boot implemented it behind the scenes.
Delivery
Product Owner is an oft-misunderstood Agile role that is seen as vital, but very few projects seem to have one. And if one asks different people what the role entails, one gets quite a range of responses.
In this article, I will share a few observations based on my own experience.
Artificial Intelligence
This post offers a proposed architecture for mitigating the risks of deploying Generative AI technologies in complex enterprises, particularly when used in highly regulated environments such as Financial Services. As well as the proposed architecture, I provide a primer on the business risks of Enterprise GenAI along with the technology risks and challenges.
Artificial Intelligence
LangChain has become a tremendously popular toolkit for building a wide range of LLM-powered applications, including chat, Q&A and document search. In this blogpost I re-implement some of the novel LangChain functionality as a learning exercise, looking at the low-level prompts it uses to create these higher level capabilities.
Podcast
In this episode, I'm joined by colleagues Oliver Cronk, Chris Price and James Heward for a lively debate on whether the latest advances in generative AI are going to threaten our jobs – are we going to be made redundant by our own creation?
Artificial Intelligence
It’s been over a year since I last blogged about OpenAI. Whilst DALL-E 2, ChatGPT and GPT4 have grabbed all of the headlines, there were a lot of other interesting things showing up on their blog in the background. This post runs through just over six months of progress from Sept 2021 - March 2022.
Podcast
In this episode – the second of a two-parter – we talk to Denis Mandich, CTO of Qrypt, about the growing threat that Quantum Computers will ultimately render our current cryptographic techniques useless – an event dubbed ‘Y2Q’, in a nod to the Y2K issue we faced over twenty years ago.
Artificial Intelligence
The buzz and excitement around generative AI is continuing to grow as their capabilities rapidly expand. However, their ability to generate content is just the starting point. From my perspective, the emergent reasoning capability, coupled with their intelligent use of tools, is what will make this technology truly transformational, and will mark the start of a new technology epoch.
Testing
A journey of self discovery to see if I'm a Tester or a Checker
Testing
An RxJS unbeliever explores the testing tools built into the library and is pleasantly surprised.
Tech
Xamarin Forms has now been superseded with .NET MAUI. In this blog post, I'm looking at the process of upgrading an existing Xamarin Forms project to MAUI. How much effort is needed and what will still work or needs to be updated.
Podcast
In this episode, we talk about Quantum Computing with Denis Mandich, CTO of Qrypt. As well as discussing quantum physics, we cover the practical aspects of cloud-based Quantum Computers and what can be achieved today through circuit design. Finally, we look to the future to discuss the impact this breakthrough technology is likely to have.