The problem we hit is knowledge: while Terraform is not a huge knowledge hurdle to mount … it is still apparently enough. While good engineers will have no problem picking TF up, … more mediocre ones seem to struggle with it¹.
We don't have a "reference", as things are still changing sufficiently that it isn't clear what a reference would be. (I know sometimes people have base VMs or similar, and write TF about that; we run on k8s, so the various teams essentially don't have to worry about the host VM at all — or at least, much.)
It all comes back to engineering quality, I fear.
¹with knowledge acquisition itself; TF is not particularly unique here. In fact, I'd argue skills in knowledge acquisition is what separates good engineers from not.
That sounds just like one of our problems too. Some engineers arent really to keen on learning it either.
But my platform team spends some time on going on 1-1 sessions where we develop new things together with them (mob programming), which gives us possibility to teach and get insights. That mitigates this problem somewhat.
If you think about this is primarily an issue of software engineering quality. The fact that today we are forcing the developer to go their devops team to request these permissions creates an organizational workflow that increases quality. That's why most of the teams I worked at requires code reviews.
I believe the right approach is to enable devops teams to put up boundaries and rules that will get enforced downstream (build => deployment => production). This will allow both developers and devops teams to be be more independent but still be in control.
Curious what people think about winglang's compiler plugin system as a way to help streamline these boundaries (https://www.winglang.io/docs/tools/compiler-plugins).
They also have broad permissions in their own, isolated AWS account.
There are some tradeoffs, but one pro is that they don't need to request permissions from a devops teams.
(on top of Raycast being a better Alfred/Spotlight anyway)
And $8/mo is only if you pre-pay one year, or else it's $10/mo.
On most setups, I find myself lucky if _something_ doesn't go wrong when connecting my displays with a mix of USB-C and HDMI. And of course I cannot place my second screen to the right, it has to go to the left (in XFCE).
In Windows this just works, and I believe Mac is better as well.
Now I just use fish + starship and don't mess around with packages
fisher install PatrickF1/fzf.fish fisher install urbainvaes/fzf-marks
# These two to get sdkman and nvm to work in fish, IIRC fisher install reitzig/sdkman-for-fish@v1.4.0 fisher install jorgebucaran/nvm.fish
They had no indication as to which door they were supposed to go through or how to get through it. There was nobody in sight at the facility. After trudging up a few flights of stairs and back down again, they elected to ask some students passing by where they could find a hotel. Fortunately they were able to find a place that had a vacancy.
Then they had to fight the OTA for a refund. Fortunately they are retired and had nothing better to do all day long than call them until they finally gave a refund.
I've had a couple of really obnoxious problems with OTAs involving event tickets. In one case I bought the wrong type of Disneyland tickets. I had to purchase different tickets once I got to the park. Then trying to get a refund from the OTA was a living nightmare. After about a week of daily calls I finally reverse-engineered enough of their process of moving money between them and the park and what not to convince them to refund me for the wrong (and unused) tickets. Another time an OTA with a customer service stand at a hotel in Hawaii had worked with me for 20 minutes to book tickets for an event, and then at the very end they said, "The booking fee is $250. But we'll waive that if you attend a 1-hour sales pitch!"
My strategy these days is to use an online travel agency to learn about hotels with vacancies and events in the area and then to go directly to the hotel or event web sites to purchase. If there's no way to book except through the OTA, I'm not going to have anything to do with said hotel or event.
I booking with Gotogate.com, but the flight was canceled. Then when trying to get a refund Gotogate systematically try to stall time as much as possible. You have to call support, and are answered by people with very thick Indian accent which is impossible to understand.
Luckily I had paid with Paypal, so I could request a refund through there.
Unfortunately, when booking flights that needs connections, you have to use an OTA. If one flight is cancelled, the others should be too, which an OTA fixes.
So the CI pipeline would only call the build tool, like "./build containers push-to-registry release:1.0.0 run-tests"
Those scripts can be tested and debugged everywhere. Also migrating to a different CI platform would be really easy.
may be an alternative. You can run it in GitHub actions somehow as well.