Devoxx UK 2024 - Day 3
Mocks vs Testcontainers: Navigating Modern Testing Dilemmas
Was expecting more Testcontainers but was focused on Mocks. Points to note:
- Developers like Testcontainers but it isn’t the be all and end all.
- Testcontainers Cloud
- ££
- Needs good internet
- Redis (for example) has mocks in Python/Node/Java
- Use mocks when testing Redis itself fails
- Can’t do that with Testcontainer
Get old, go slow, write code!
Good to know that as aging developer and there is an import place workforce.
But must remember the go slow bit. Take care of myself so I still enjoy what I’m doing and add value to the teams I’m working with.
This talk made use of Mentimeter for live polling. Worked really well engaging the audience even though I couldn’t participate (bad signal), but many did and there was a tech glitch par way through.
Winning at Continuous Development with the Expand/Contract Pattern (Live Demo)
Nice explanation of the problem, got one like this on our current backlog (although we aren’t doing CD) so related to the scenario easily.
- Deployment != Delivery
- Code for example/dev: safe-contract-changes-demo-java
Discussed how it can be applied to different scenarios
- Front End / Back End
- Queues
- DB
- Document DB
Different approaches for Document DB:
- Expand and never contract
- Update documents on access
- Leave old code
- Chain updated, v1, v2, v3 …
- Do both
- Roll forward for n changes, v1, v2, .. v10,
- Then contract by re-indexing.
How to save millions over years using KEDA?
Although there is £££ associated with KEDA this was not a sales plug. Also the use case was quite interesting.
K8S Horizontal Pod Autoscaling has some limitations on the metrics that can be used to trigger scale up/down.
KEDA extends this with event driven scale up/down, for example on a Prometheus trigger. Full list of Scalers.
Automate your workstation installation!
The only lunch talk I made it too. Was the presenters first talk in English, better than I’ve done.
Had an interest in this as I’ve very recently implemented chezmoi for managing my dotfiles. I’d previously tried this following Installing your dotfiles onto a new system (or migrate to this setup) and not got on/stuck with it.
chezmoi is much more intuitive.
The talk didn’t break any new ground for me regarding dotfiles but it did remind me that there is the application installation aspect. I’m well versed with ansible. Maybe I need to think about this again?
Maybe do it in a different order:
- Install chezmoi
- Sync dotfiles, etc. including ansible playbook, etc.
- Run ansible to install packages
Maybe look at Sylvain’s approach
But isn’t the package problem solved see the Codespaces, Gitpod, Devpod … what cloud and container-based IDEs can do for you from Day 2, etc.
Continuous Integration - That’s not what they meant
Disappointing to realise how far I am from working in a CI environment but now know what to be aiming for.
Closing Keynote: The AI Elections: How Technology Could Shape Public Sentiment
Glad I hung around. Was entertaining and worth it for the live demo, deep faking the presenter in real time.