Details
-
About🚚⛅️🚔 Official Cloud Pusher (DevOps)
-
SkillsYou write it, I deploy it, test it, manage it, secure it...
-
LocationNorth Carolina, USA
-
Website
-
Github
Joined devRant on 4/10/2016
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
Whenever I hear "this <person> is going to work on <project>" I edit my "bus factor of 1" wiki page.
Teams work on projects. People work on teams.5 -
Maslow's Hierarchy breaks down five human needs. You need to meet the lower numbers in order to feel fulfilled in higher levels (i.e. You likely don't feel like you belong to a community when you're struggling to find food & water.) :
1. Physiological (Foods, Water, Clothes, Sleep)
2. Safety & Security
3. Love & Belonging
4. Esteem
5. Self Actualization
The company I'm at is struggling financially so nobody received raises. There were no promotions to celebrate this year. There was diminishing pride in working here. Multiple re-organizations shatter my view that I belong to a team. Multiple rounds of layoffs shattered my feeling of job security. Multiple meetings start with my co-workers buying time to brush their teeth, scarfing down what food they can eat quickly, brewing another cup of coffee.
I firmly believe it's a manager's job to watch out for the culture and build up their employees through this process, but the managers are watching out for their own backs, and probably struggling with the same things we are as individual contributors.
Hey corporate management, while you were off at your executive off-site, your employees are failing to meet some basic needs. You wonder why we bitch about 4-day work weeks and needing less meetings. You think we're entitled when we ask for food and snacks delivered to our door.
We're not entitled. We're broken.
We're not lazy. We're burnt out.
You say we get unlimited time off, but you frequently comment about how much time we're taking off in public forums.
You say you pay us competitively, but that was last year, and shit costs 60% more now.
You say we're responsible for the success of the company, but you're responsible for the morale of the company.1 -
I want to take my Certified Kubernetes Admin exam, but need to brush up on the exam material. Other than the Linux Foundation, what's the best place to learn this material from?1
-
Send me your best git-fuckit scripts! I’m compiling the best ones. The winner needs to be versatile enough to handle both simple and upstream/forked repos.2
-
Hey! It wouldn’t hurt if you were plugged into this meeting. Oh, and also this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, and this one, oh this one too, and maybe that one and this one, and this one, and this one, and this one.
Oh, cancel the one I sent you, need you here instead.
Tomorrow: why aren’t your projects done?4 -
My bash history today:
man column
🤦♂️ I suppose if the wife is curious about what I do all day, she’s likely not going to search my terminal history 😂4 -
Just built out my first app using Cloudflare Workers, Typescript, and DurableObjects. Holy shit, this is nice stuff.
It's taken little to no time to build out:
* JSON API written in Typescript
* JWT verification against my OAuth backend (SAML support too)
* CI Automated Deployments including unit tests
* DurableObject support
* 3rd party HTTP calls + caching (built in to the framework!) to reduce network latency and hiccups.
* Cron-like tasks on each stored object so they can awaken the app on a schedule and update themselves as necessary
* Rapid deployment to new environments
The local testing with coordinated "miniflare" is dreamy too. -
Ran a DecSecOps consultant business for many years. Used it as supplemental income because it never made enough to be a main gig. It was a great tax write off2
-
Recruiter: I have an open position for lead DevSecOps role.
Me: Tell me more
Recruiter: It’s an AI company , where the AI is making clinical medical decisions. It’s really cool. They need somebody to help them pass government audits and you’d be solely responsible for the systems security, AWS accounts, and also all of DevOps, which they’ve never heard of before but I told them they needed and they though it was cool.
Also, they use AWS but not sure what services inside AWS, they think it’s AWS storage and AWS servers or something like that .
Me: That’s a big hell no. 👎 Got any other positions though ?9 -
To provide excellent customer service and provide extra services, we collect your personal information.
Bullshit. You're not using my personal information for customer service, otherwise your call center wouldn't suck so badly.3 -
Today's shit list, compiled from multiple random apps:
* Your subscription renews without an email in advance (no time to cancel)
* Your chat bot asks me twenty questions about why I want to cancel my membership, then sends me to a live agent, who asks me the same damn questions.
* Your app emails me my password in plain text
* Meeting agenda squashed by execs:
"We don't talk about _____, but we're committed to transparency." -
We can’t do that, because the Athena project is going away. Sometime, maybe tomorrow. Maybe next year. Probably never. Let’s create a new thing to use and support since the two line fix isn’t supported anymore and we can’t make PRs to the Athena project.
Two weeks later: Awesome, add this PR to the Athena project to make our project live. 🤦♂️ -
When you find a bug in the AWS console, and the internal AWS team can finally reproduce it after weeks of going back and forth. 💪 🧠
-
Hey, we need a service to resize some images. Oh, it’ll also need a globally diverse cache, with cache purging capabilities, only cache certain images in the United States, support auto scaling, handle half a petabyte of data , but we don’t know when it’ll be needed, so just plan on all of it being needed at once. It has to support a robust security profile using only basic HTTP auth, be written in Java, hosted on-prem, and be fully protected from ddos attacks. It must be backwards compatible with the previous API we use, but that’s poorly documented, you’ll figure it out. Also, it must support being rolled out 20% of the way so we can test it, and forget about it, and leave two copies of our app in production.
You can re-use the code we already have for image thumbnails even though it’s written in Python, caches nothing and is hosted in the cloud. It should be easy. This guy can show you how it all works.2 -
"Unexpectedly found nil while unwrapping an Optional value"
What dev thought this would be a good idea in Swift? Sometimes I hear the compiler's thoughts as it comes across this:
1. The dev explicitly told me this value would be optional.
2. I have a record from the database, and I see a 'nil' in the column for this value.
3. That's not "None" , Oh my god, I need there to be an explicit "None<CustomType>".
4. Shit shit shit shit. Oh my god.
5. PANIC!4 -
MySQL 5.5 end of life’d in 2010. In 2021 my company started an upgrade to 5.6. The outdated dependencies meant we needed 25 engineers for 2 months full-time to make the upgrade as invisible to users as possible. We still took about 90 minutes of downtime on cutover day. Not upgrading MySQL on time meant we paid way more in terms of engineering hours. The reason we call it debt, is because you pay interest when you don’t tKe care of it right away.4
-
No. No. And Absolutely No.
The Three Laws of Robotics MUST not be broken.
https://cnn.com/2022/11/...21 -
A personal memo to all developers on devRant:
* Assume every external line of code, (including every service you consume) is an unreliable crock of flaming shit. These services can and will fail in the most glorious ways. Write your code to be resilient, and ASSUME FAILURE of dependencies. Even if it's your own team writing the other service.
Heard in a meeting today: "Your team's service outage is going to cause my service to corrupt the database!"
Response I wanted to give: "No, you asshat, my service outage is a normal part of living with microservices. Your app should have been smart enough to recognize the failure."9 -
Every once in a while I come across a challenge that's actually challenging. Most recently ... "Develop Regex for validating and extracting a recipe's ingredient's quantity"
Regex should properly identify the numbers in each of the following lines:
1 cup of ingredient
Diced 1/2 cup of ingredient
.5 tsp of ingredient
1 1/2 packed cup of ingredient
1.5 cup of Heavy whipping cream
My answer is the first comment in case you want to solve it yourself. I'd love to know what others come up with.5 -
I spent hours trying to figure out why a specific library couldn't be found on my system. I finally tore apart the ./configure script to no avail. I did a full text search of the source code and found a `config.log` file mentioning it was having trouble with a sub-dependency. I had failed to install OpenSSL.
-
What I need to do today:
* terraform init
* terraform plan
* terraform apply
What I'm doing today:
* Rebuilding a docker container, because our outdated version of Terraform doesn't run on M1 Macs natively.
* Fighting with corporate IT man-in-the-middle SSL certs, because those aren't trusted inside the Docker container. These are now applied to all internet traffic, not just traffic destined to the VPN. Terraform doesn't like it, so it won't download any modules.
* Waiting for a blazing fast 1.5 Mbps connection rate when connected to the VPN.
* Learning I can no longer turn off the VPN, as it's a forced policy on my laptop.
Not sure if I'd be more productive today fighting these issues, or just waiting around for days (weeks?) for IT to mail me an Intel mac.6 -
A custom script that makes a Jira ticket, assigns it to me, marks it as in progress, check out a git branch, set the commit title and the Jira title to my command line argument…. Push, open a PR, and fuck it, merge that shit too.
I checked all the corporate boxes and you got the typo fixed. -
What did I do while down for the count with Covid?
* Setup a static React site
* Hosted the site at Cloudflare Pages
* Protected the page through CF access
* Extracted the JWT
* Setup a Rails API to validate the token
Now I have static React UIs with a nice rich API backend.2