Through my consulting business, I equip technology organizations with the latest and greatest in DevOps tooling to increase the velocity of their development teams.
Part of this means abandoning outdated workflows like “GitFlow” and replacing them with more streamlined processes — Trunk Based Development and Continuous Deployment.
We’ll get more into “Trunk Based Development” soon — but it’s important for this conversation to define what “trunk” is, as I’ve seen this misused as well.
The “trunk” is the
master branch of your repository. Trunk is a constant. In trunk based development, you either commit to the trunk branch…
Last year I wrote a five part series of articles that built a React boilerplate using Parcel. It demonstrated how to use streaming server side rendering, automatically enforce code quality, achieve 100% code coverage, explored using Docker for development, and covered multi-stage Dockerfiles for production.
Unfortunately, as time has passed, the boilerplate has begun to get stale. Some of the libraries I chose have changed their APIs, and as a result people following the tutorials as written have encountered some errors as they are getting later versions when following along and typing
It’s come time to update this…
Thanks for all the support I’ve gotten on Medium over the years!
1600 followers, 100’s of thousands of views, literally over a year of time spent reading my articles about DevOps, Microservices, Full Stack Engineering, and Entrepreneurship.
And this year, voted HackerNoon’s Contributing Writer of the Year!?
I’ve really enjoyed making content, and helping engineers like you succeed.
Now, I’m taking that to the next level.
I want you to not only be a Cloud Native Engineer, but I also want to help you become a Cloud Native Entrepreneur.
Which is why I’m excited to…
If you’re starting a new business, launching a new idea, or doing anything at all really, you’re going to be getting a lot of feedback. People are going to tell you if they love it. And you’re inevitably going to hear some verison of:
“That’s not a good idea.”
The fact is, you’re probably going to hear that one a lot, and from a lot of different people. Some of them perfectly well-meaning.
So, how do we determine which feedback matters the most? When we’re overwhelmed with messages about our ideas being too risky or not good enough, how do…
The topic of this story is pretty personal for me.
It’s about breaking through the fears that are holding you back. To do that, I want to start you off with a brief story about the fears that have held me back.
When I was younger — in middle school, I think — I had a paper due in my English class. Part of this assignment was giving an oral presentation.
This was all so long ago, that I really don’t even remember what my paper or presentation was about.
What I do remember, though?
I remember watching all the…
A few weeks ago, I was in an advisory meeting with the Co-Founders of a private jet company.
These guys are great salesmen. Super cool dudes — one of them is literally married to a supermodel and is friends with all sorts of eccentric millionaires.
However, they were having trouble bringing in as many qualified leads as they needed. Most of their sales were word of mouth and straight phone call hustling. They knew the needed marketing to bring customers to them, but their investments into it had thus far been unsuccessful.
“It’s hard to market private jet ticket sales,”…
A few days ago I was peeling an egg, like an idiot. My girlfriend, Angelly, was like — “why are you peeling the egg like that?”
She picked up another hard-boiled egg, smacked it on the cutting board, and then rolled it while pressing down firmly. The egg’s shell was off in about 3 seconds total.
Here I was chipping away tiny piece by tiny piece.
My point is: Working hard is overrated.
The best solutions are the simple, effective solutions.
Is it hard to take rust off of a screw? Probably, right? …
In the last article of this series, we finished adding unit tests to our project to reach 100% code coverage. With tests in place, the next piece is getting our project ready for deployment.
The last thing we need in place to get our application ready for production deployment is a Dockerfile.
The Dockerfile is also a great place to run our unit tests, which is why I’ve decided to write the tests first.
We have a few goals with our build:
There’s a lot of advice around the internet right now saying that 100% coverage is not a worthwhile goal.
I strongly disagree.
Usually, code being hard to test is a sign that is needs to be refactored.
I get it. A few years ago, I sucked at testing. I thought it was just something that would make me move more slowly.
It simply wasn’t a thing that people did very often when I started coding. If it was, it was often a separate QA team that was responsible. A few years back though it became a real hot topic. …
If you are going to be writing code and shipping it to production, it’s important that the code is high quality.
In my last article, I showed you how to use docker-compose to leverage standardized, already existing Dockerfiles for development. The next step in getting our application ready for deployment is productionizing it.
I’m going to continue using the React/Parcel example from my earlier tutorial: Move over Next.js and Webpack!
Here is the source code: https://github.com/patrickleet/streaming-ssr-react-styled-components
I also haven’t done anything else related to getting the application “production ready”, so I’ll also talk about what is required for that, though…
I make things for the internet, that scale, look nice, and make money!