Lots of our people have lots of opinions. Here are just a few of them
ThoughtWorks embraces the individuality of the people in the organization and hence the opinions expressed in the blogs may contradict each other and also may not represent the opinions of ThoughtWorks.
Recipe for a healthy QA/test relationship with the rest of the org (TOAD!)
First, you need a shared test environment to work in. I recommend beginning with a persistent test environment intended to model your production environment as closely as possible. While you may eventually evolve the ability to share a test environment with commonly-configured VMs or containers, having a persistent shared test environment at the beginning gives everyone the experience of keeping something running that looks a lot like the production system. (TOAD! DevOps!) For that matter, proper use of feature flags and such could make production itself a perfectly fine…
How to Get Color Prompts on your MacOS Terminal
- Which folder im currently in
- Which git branch my local workspace is in
- What terminal commands I have issued
Gist link: https://gist.github.com/gten/a6d261d32cea97e9a52b82f48989c07f
A high-throughput team in Git is going to commit & push often, and teammates are going to need to code review as changes come in. Well, they do if they want to prevent the accumulation of tech debt, latent defects, standards avoidance, etc. When at ThoughtWorks I was placed at Google in the Test Mercenaries team up to the start of 2009, so I’ve some perspectives that are ten years out of date now, but I’ll give it a go of trying to detail the experience differences. Google’s setup was a couple of years established internally before GitHub launched with…
Some Thoughts On Toggles
Kent Beck was asking about “Feature Flags” on Twitter recently and their life cycle. Former colleague, Pete Hodgson linked back to an article he’d written to for Martin Fowler a couple of years ago, and added context.
I don’t think this article fits in that Tweet series, so it’s a standalone blog entry - much of which I’ve shared before.
Some toggles shape what is built - things are included or excluded from binaries (JARs, DLLs, EXEs, APKs, etc)
Also known as “build-flags” and they have a multi-decade history.
Boot or run-time toggles
Some toggles go with the…
Using Git In Business And Government
Synopsis: Git is the best we have right now for a “History-retaining Merkle tree” (when force-push is turned off), and stands to be utilized more outside of software development - in business at least.
A £200m “Garden Bridge” project was canceled when it had accrued £50m in costs and before construction started. It is difficult to pick it apart. See this Tortoise Media article and Reddit discussion.
It is not clear whether governments or corporate shareholders would be first to require “minutes” and proceedings to be better stored for posterity (and audit), but both will in time. I’m 100%…
Ubuntu file limits 18.04
Can Pull Requests Talk? Effective Communication Within Developers - An Idea
Majorly, I still love writing code. Do you know why? Because code expresses your intelligence in words that can be processed. And also, it helps others understand what you are trying to communicate in a better way. I believe that writing code is a way of communication and it enables developers understand better than just talking about the concepts or logic in plain english words.
This is the thought process that leads to my today's post.
I came across a situation recently when a Pull Request represented an idea but not an actual implementation. The idea was expressed not in…
Tutorials vs Reference Docs vs Examples
If you’re trying to promote/sell some software thing it’s best to have examples inside the “5-second rule” experience. The 5-second rule iis where people land on your article/page, scroll up and down quickly, see no examples and then hit the back button.
Some/many will do that because they’re example-orientated. That as opposed to tutorial, api-doc, or buying ideas from rant-style text. The more experienced developers get, the more likely they are to leave tutorial and api-doc as a way of gaining knowledge of a thing, and more toward examples.
And even if they shift towards ‘examples’ as a way…
Mistakes we made adopting event sourcing (and how we recovered)
Over the last year or so we have been building a new system that has an event-sourced architecture. Event-sourcing is a good fit for our needs because the organisation wants to preserve an accurate history of information managed by the system and analyse it for (among other things) fraud detection. When we started, however, none of us had built a system with an event-sourced architecture before. Despite reading plenty of advice on what to do and what to avoid, and experience reports from other projects, we made some significant mistakes in our design. This article describes where we went wrong…