Freedom of speech is a path for the public to balance its fear and confidence. When society suffers an imbalance between these two emotions, confidence becomes a tyrant and fear becomes its people.
People who can solve a tough technical problem by connecting the right two people together is one of the most valuable and under appreciated skills in tech.
I'm super stoked about how awesome the new
@docker
compose "stack deploy" feature is. I can finally deploy a distributed system to any k8 cluster using one 👏 simple 👏 YAML 👏 file!
$ docker stack up k8-app --compose-file $(pwd)/docker-compose.yml
“It should always be the responsibility of those that have the power to influence the emotions of others, to handle the influenced with care, and above all else, to do no harm.” – Me, probably
Today is my last day at
@Pivotal
. I'll be spending the next few months figuring out what's next for me. It's been a sincere honor and pleasure getting to learn and meet with so many smart people over the years. Thank you for the support!
I've been busy working up a end-to-end example of the modern
@springcentral
reactive services architecture. Includes end-to-end reactive using the latest and greatest (
@r2dbc
@ProjectReactor
) and a tutorial on deploying to k8.
I got so excited about how easy
@docker
stacks makes it to deploy distributed systems to k8, I decided to create a social network example and tutorial that uses
@springboot
,
@neo4j
, and
@apachekafka
. Enjoy!
I am pleased and honored to announce that I am joining
@VaughnVernon
and the
@kalele_io
family+team working on
@vlingo_io
.
I'm excited to continue my work with developers/operators/architects around the world. More details soon!
The darkness isolates us by giving us the idea that the world is loveless and full of monsters.
The light within us is the opposite force, and it is the best of humanity.
Reactive + event sourcing + CQRS + microservices is foolish for ~90% of teams and companies without deep expertise.
The surface of things that can and will go wrong + the added MTTR for async systems will require only the most disciplined engineers to be successful.
It’s hard to see history happening in real-time. Today was one of the most historic days in the entirety of humankind.
Have no doubt, that our minds have been slowly poisoned over the last decade. Today we were saved.
There may be no parade, but eternity will remember.
I recently resurrected an article I drafted a few years back. Thanks to my friends at
@pivotal
it's now been polished and published!
"Microservices are not the destination"
Can’t believe what I’m seeing right now...
@scottpenberthy
basically giving a TED talk on
@google
’s state of the art research on artificial intelligence.
The shift from kittens to enterprise is happening now.
#GoogleNext18
The most brilliant people I‘ve met tend to hide in plain sight.
You’ll find them regularly rejecting the status quo. And they objectively know their self-worth.
Befriend them. Share in their struggles. Learn from their strength and passion.
Most importantly: listen to them.
Our fears for the future are only nightmares. What we truly are capable of is beyond these dreams of ruin. They are cautionary tales. They tell us what could be.
We will overcome the nightmare, as we always have.
Monolith = Devs share 1 bathroom and ops clean.
Microservices = Devs build their own bathroom and DBAs clean.
Serverless = No bathrooms. Devs must use Uber to order a Porta Potty.
A few years ago I thought, why is
@micronautfw
doing things from scratch?
Today I'm sitting here with the evidence that they're at least 2-4 years ahead of any competition. All because they understood the hardest problems better than anyone and remained focused.
Service mesh is a cool idea, but with
@springcloud
, I don't need it. I want a proxy that supports
@ProjectReactor
for async non-blocking streams that scream.
Helm is my sidecar.
Try it yourself on any k8 cluster using a Helm chart. No config needed!
Competition is good for all markets. That’s how you know whether or not you need to innovate to survive.
@springboot
has gone mostly unchallenged for years. Now
@micronautfw
and
@QuarkusIO
have arrived.
This is good for the entire Java ecosystem. Rejoice.
Now you can deploy and measure an end-to-end reactive microservices example with
@springboot
and
@HelmPack
on any
@kubernetesio
cluster. See how reactive scales with these two new
@grafana
dashboards! ✨🍃
I haven't been this excited about cloud-native software architecture in a long time.
@Debezium
CDC and
@ApachePinot
are the missing pieces for building better event-driven microservices.
So happy to see this come together.
There are three nebulous layers of cloud-native application development. The domain, application, and infrastructure.
Developer productivity depends on frameworks or platforms hiding implementation details at the boundary of each layer.
What's the difference between a distributed transaction and a reactive application dual-write with
@springboot
? How do you guarantee an atomic write to two different systems of record using eventual consistency? Find the answer here:
If you're building a product that aims to help an underrepresented minority and are looking for guidance on software architecture, please get in touch and I will provide my support free of charge.
Left:
@springboot
with Apache Tomcat and Spring MVC
Right: A non-blocking client-server framework based on actors called vlingo/http from
@vlingo_io
It's amazing what a small team of smart contributors can do when no one else is looking.
Cloud native applications:
* You build it, you run it
* One team, one deployment
* Scales horizontally
* Implementation details are hidden from consumers
* Uses constraints to reduce undifferentiated heavy lifting
* Containerized and portable
* Small and frequent deploys
What does cloud-native Java mean to you?
Does it mean packaging Java applications as images/
#containers
and running in the cloud? Running them as
#microservices
? Running Java apps in the cloud? Accessing services in the cloud? Any of the above? Something else?
#cloudnative
My mom got bored and taught herself blockchain. She said it took her months to learn something she explained to me in a few minutes.
I said "Mom... it took me years of programming to learn what you taught yourself in only a few months."
Confused about
@cloudfoundry
container runtime and application runtime? Each runtime uses containers.
Container runtime gives fine-grained
@kubernetesio
control.
App runtime makes the container invisible.
#CFSummit
Single responsibility principle applied to DDD and Conway's Law via
@VaughnVernon
:
- A team can own one or more bounded contexts
- Teams do not share a single bounded context
- A team can own one or more deployments
- Teams do not share a single deployment
Voice-to-voice (V2V)
@OpenAI
ChatGPT is a total game changer. With neural voice from Amazon Polly sped up to 1.2x, you're off to the races. Here's an audio of one response. More to come.
I've created a simple programming model for handling complex event-driven workflows in microservices using
@micronautfw
and
@vlingo_io
. Blog post is coming... Example is here: 🙂
Sad to see I'm no longer on the website. I've done so much and pushed myself to be my own two pizza team for 4 years. Millions of views to my repositories and over 7k stars and 4k forks. Without many thanks or respect from colleagues.
Farewell Spring.
After about a day of work, I've built out a customized dashboard with aggregated metrics to help me scale test my k8 cluster using
@grafana
,
@micrometerio
, and the
@springcentral
stack. What a time to be alive.
This heatmap shows simulated driver deliveries clustered by location in SF. There are over 100k data points streaming from
@debezium
MySQL to
@ApachePinot
.
It's amazing to think that I have no
@apachekafka
dependency in my application runtime. CDC is super powerful!
I used graph algorithms and sentiment analysis to infer and predict the "emotional feels 🤷♂️" for 20,000+ phrases & mentions in my Twitter network.
Blue/green phrases: 🙂
Yellow phrases: 😶
Orange/red phrases: ☹️
Same-day order delivery applications are made simpler and better when using
@debezium
CDC and
@apachepinot
for OLTP to OLAP replication. Check out the reference architecture and example application.
Blog post coming soon! 👇⚡️
Yearly reminder that during the height of the pandemic I became hire
#5
at a stealth startup that is now worth close to a billion dollars and has recruited some of the most talented people in the world.
If you're looking to learn how to implement
@r2dbc
reactive repositories, but are missing the schema generation features that come with Spring Data JPA, I've created a
@liquibase
data source example to help you get started. 🤙
I finally created a diagramming tool. This is a custom
@micronaut
management endpoint for
@vlingo_io
's new state machine processor.
I'm planning on adding in distributed tracing so that each state change shows its dependency on other services.
I was fortunate enough to meet
@kelseyhightower
for the first time last night. Wise, humble, grounded, thoughtful, brave, and brilliant.
But most of all... he is just Kelsey.
You can have a lot of money. You can be a money printing company. But, being great at software is more than just spending money.
Great software is built by teams that trust, innovate, and grow together.
They care about the people they build software for.
Tonight I got up in front of an audience for the first time in 6 months. It felt really good to just talk about what I’m excited about. Thanks
@jugch
@thoweCH
. 🙏