Bitcoin with Rigor
Bitcoin with Rigor goes beyond a basic explanation of Bitcoin, offering a detailed analysis of how Bitcoin works. It breaks down its components clearly, helping readers understand both the parts and the system as a whole…
Bitcoin with Rigor goes beyond a basic explanation of Bitcoin, offering a detailed analysis of how Bitcoin works. It breaks down its components clearly, helping readers understand both the parts and the system as a whole…
With thousands of 'crypto' projects out there, they say Bitcoin is old and boring, but nothing could be further from the truth. This book will guide you through the latest developments in Bitcoin, as seen through the eye…
Waterfall is like following a straight path where you move from one step to the next in a defined order — like water flowing down a waterfall through different stages. The problem is that each step can take a lot of time…
This book covers everything from the basics to the most profound technical aspects of how Bitcoin works. It is an excellent guide through the complex world of Bitcoin, providing the knowledge you need to participate in t…
I wanted to learn a new programming language, so after trying some, I ended up with Golang as one of my favorites for its simplicity and capabilities. It has features I haven’t used in years, like multithreading and conc…
Coding is not just another job. In the right environment, writing software can be really fun and, even more, it can be your personal hobby as well! So... you might be focused on coding, coding and more coding to level up…
From time to time I have had to face this question: how to test private methods? I have put together in an article the techniques that I usually use.
To introduce a new tech stack for the entire team, it's important to bring "why?" and a strategy to make it happen among the team because it will affect everyone.
The Science of Lean Software and DevOps: Building and Scaling High Performing Technology Organizations
What is coupling, and why is it bad? What is decoupling, and how to do it efficiently? This book is a compilation of strategies to decouple your domain code from those infrastructure details, so you can enjoy a healthier…
This book presents software development as an engineering practice at every level. To master software engineering, we must become experts at learning and managing complexity.
In Modern CTO, Joel Beasley provides readers with an in-depth road map on how to successfully navigate the unexplored and jagged transition between these two roles. Drawing from personal experience, Joel gives a refreshi…
There are two known schools in TDD: the mockist school (aka Outside-in) and the classicist school (aka Inside-out).
These are two different techniques. The key to each of them is about the mindset and context of what you want to achieve.
The complexity here is not about writing tests itself, but the habits that we have to change to create software that is easy to be tested.
The new Functional Programming language build-in for PHP.
Mocking is useful, but 'what to mock' usually turns out to be a more complicated than expected if you don't treat this carefully.
Apply design principles to your classes, preparing them for reuse. You will use package design principles to create packages that are just right in terms of cohesion and coupling, and are user- and maintainer-friendly at…
Argument unpacking, function variable argument list, and variadics function.
Matthias Noback's practical guide to writing flexible, readable, and maintainable object-oriented code, with techniques applicable to any OO language from Python to PHP.
Domain-Driven Design Distilled brings DDD to life. Whether you're a developer, consultant, or customer, it will help you understand it, so you can benefit from its power.
The best guide that brings your coding and architecture skills a level up. All the modern PHP features combined with the elegance of a well designed modular design.
`strict_types=1` is more for the reader than for the writer
If you see something, in the scope of your current task, that can be easily improved, improve it. And if you have any questions about it, ask.
Clear contracts, isolated side effects, testability, low complexity and cognitive load, code fluidity, and confidence in yourself.
A hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Learn how each language thinks differently and broaden your perspective on programming.
Why you should consider testing as part of your daily development habit and how it's directly linked to the software quality.
This book is about Agile. What it was, what it is, and what it will be. This is a back-to-basics talk that covers the history of Agile, what motivated it, and what has happened to it since.
Michael Feathers presents practical techniques for adding tests to untested code, breaking dependencies, and safely refactoring large legacy systems without introducing bugs.
Robert C. Martin's guide to SOLID principles, component design, and architectural boundaries that keep software systems flexible, testable, and maintainable over time.
Key takeaways from Hunt and Thomas's classic on pragmatic software development, including DRY principles, the right mindset, and how to choose and master your tools.
Tap into the wisdom of experts to learn what every programmer should know, no matter what language you use. With the 97 short and extremely useful tips for programmers in this book, you'll expand your skills by adopting …
Even bad code can function. But if code isn't clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn't hav…