
Technology Tussles
Managing complexity in an ever changing world
Updating AWS S3 get object Lambda function to Node 22
One of the annoying things about software engineering is that working code doesn’t necessarily stay working. About eight years ago I wrote an Amazon Web Services Lambda Function using Node JS (I think version 10). Five years ago when the node version was end of life I updated it to Node 12 with no changes […] (more)
Building an Audio Player in Flutter with Just Audio
I recently needed to create a reusable Audio Player for a Flutter App I was working on. After a bit of research I decided to use the Just Audio plugin. As is often the case I found that the documentation was useful for standalone implementations, but not entirely helpful for reusability. The first step is […] (more)
Styling Tab Bar in Flutter
Recently I decided to add a default tab bar to my app in flutter. This is relatively straightforward to achieve using the following And this yields a tab bar with two pages which looks like this: Following on from my posts about using Themes in Flutter, we can now start to style the tab bar […] (more)
Building a ListView which scrolls neatly by item
Recently I wanted to horizontally scrolling ListView to display a number of panels. This is relatively easy to achieve, but there were two things that I did not like about it. As it turns out both of these issues are also very easy to fix. First up, calculating the panel dimensions can be done by […] (more)
Using Provider to Share State Between Widgets
Today I needed to share a timer between two widgets. A quick search revealed that the way to go was to use Provider. So, as usual I looked for a good example of how to go about it. I didn’t actually find one, so instead I took a look at the official documentation (https://pub.dev/packages/provider). Unfortunately, […] (more)
Contents of UICollectionView hidden by keyboard (in Swift)
As I am sure I have said before, one of the frustrations of modern software engineering is that some things you think will be complex turn out to be very simple because the language does it for you with little or no work at all, and other things that you think will be easy (or […] (more)
Why Software Projects Overrun
Last week saw the launch of Squbes onto the Google Play store. Something to celebrate – but it was nearly a month overdue – and the iOS release was a week later. So what went wrong and why do software projects overrun? Underestimating complexity When estimating how long a software project will take to deliver, […] (more)
Creating lightweight web sites with PHP
Back to basics So I’ve had a couple of months of using WordPress now, and I have to say for blogging, site which are going to grow rapidly or for multi-editor sites, I would definitely recommend it. I still believe, however, it is overkill for many uses cases. HTML is very good at what it […] (more)
Updating CocoaPods to run Flutter Apps on iOS
Having successfully run a couple of Flutter Apps on Android devices and the iOS Simulator (from AndroidStudio), I was not expecting there to be much of a problem getting my App running on iOS. Unfortunately as soon as I tried to run my code from XCode I hit an error A quick search revealed a […] (more)
Styling PopupMenuItem with Flutter themes
In my previous post I looked at creating a reusable popup menu in flutter and applying a flexible theme from ThemeData. After a bit of testing I’ve uncovered two minor wrinkles. The first is that the icons in my PopupMenuItem don’t take their style from iconTheme as I had anticipated. Instead, for some unknown reason […] (more)
Previous Posts
- April 2025 (2)
- March 2025 (1)
- December 2024 (2)
- November 2024 (1)
- July 2024 (2)
- June 2024 (4)
- May 2024 (6)
- April 2024 (3)
Categories
- Amazon Web Services (1)
- Big Systems (2)
- Flutter (12)
- Node JS (1)
- PHP (3)
- Swift (1)
- WordPress (4)