Blog

Our thoughts on technology and design

Tech
I've been authoring the WebAssembly Weekly newsletter for just over two years now. As we near the end of 2019 I want to take the opportunity to share some of my favourite articles from the year.
Tech
We're told that we need to commit early and often. But what does this mean...? What is the right frequency? When should branches be used? When do they work well, and when should they be avoided?
Tech
This is a post about doing performance right when building large and complex web applications. Much advice is available about optimising for every last ounce of performance on the web, but that won't help much if we don't already have 'good' to begin with.
Tech
Regular expressions are very powerful, but something that many developers are wary of using—they have a reputation of being difficult to understand. If you appreciate their underlying principles, you can understand them better, and if your code takes advantage of this, you may be able to refactor them into a more readable form.
Open Source
In partnership with FINOS, we held the first event of the Edinburgh Open Source Fintech Meetup on 4 December, with great talks by Colin Eberhardt, Calum Miller and Reg Wilkinson – you can watch videos of the talks here.
Cloud · Video
In this webinar, James provides a balanced and clear-eyed view of the pros and cons of migrating to the cloud in relation to four key factors - agility, cost, security, and vendor lock-in.
Tech
We are taught how to write good code, but we're not taught how to use source control properly. Why is the history of our code any less important than the code itself?
Tech
This is the first of a series of blog posts exploring SwiftUI, the new UI framework for native Apple development. This post will focus on my initial impressions, having gone through the first part of Apple's SwiftUI tutorials.
Tech
An introduction to ArchUnit; an open-source, extensible Java unit testing library for enforcing your architectural and coding rules.
Tech
Prettier, or code formatting in general can polarise developers - everyone has an opinion on braces. There are changes we can make and tricks we can apply to streamline all of this. Or: How I Learnt to Stop Worrying and Love Automated Code Formatting
Tech
The switch statement in Swift is a powerful and expressive way of performing flow control. It pairs very nicely with a few other language features: enumerations, extensions and type inference.
Tech
Protecting your data by generating visual reports for your users in an optimal way without exposing the raw data using serverside generation.
Tech
An overview of the methods we used to create and deliver digests (emails containing information on a topic that users are subscribed to) using Elasticsearch and serverless architecture on AWS.
Tech
Drawing and shading an area around a line is a useful feature for any charting library. In this post we will be exploring the approach we took to implementing this functionality for the D3FC library using WebGL.
Tech
WebAssembly, despite the name, is a universal runtime that is finding traction on a number of platforms beyond the web. In this blog post I explore just one example, the use of WebAssembly as a smart contract engine on the blockchain. This post looks at the creation of a simple meetup-style event with ticket allocation governed by a smart contract written in JavaScript.
Tech
Earlier this year React released hooks, shaking the codebase of developers all over the world and changing the way we write React web applications. Functional components with hooks have largely replaced class components and now Redux has followed.
Tech
The second part of a practical series on building Microservices with Spring Boot and Spring Cloud. In this post we expand on our previous online store project, scaling out while introducing the concept of client-side load-balancing using Netflix Ribbon and Feign. We also implement fault and latency tolerance with Netflix Hystrix.
Testing
As a tester in a cross disciplined agile team I frequently talk to and teach developers what Exploratory Testing is and how to do it. This account shows what I've been talking about and explains why it's beneficial for other testers to do the same.
Tech
Connecting points on a chart with a line is one of the most basic uses of a charting library. When drawing that line in WebGL, however, it's not as straightforward as you might think.
Delivery
When a project goes off the rails, the question becomes how to get delivery back on track, or even whether to cancel the project entirely. Here at Scott Logic, we have many years of experience helping businesses to recover projects and I wanted to share some insights from that experience.

Authors