Writing Cleaner Test with Domain-Specific Assertions
Domain-specific assertions can help create an extremely clean test base. Learn how to create your own manually or with LLM.
Domain-specific assertions can help create an extremely clean test base. Learn how to create your own manually or with LLM.
Explore two approaches for creating and naming commands in command-based systems, balancing domain logic with structured formats.
Boost application performance and scalability with effective caching strategies, from basic principles to advanced implementation in Spring Boot.
Increasing accuracy of your Unit Tests and making them as easy to write as Integration Tests.
Ensuring backward compatibility through structured deprecation processes and automated testing minimizes disruptions during system updates and migrations.
Efficient strategies for managing data transformation within Spring Boot and RDBMS environments, optimizing response handling and maintaining transactional integrity.
Learn how to optimize your Redux store for peak performance with clear steps and practical tips.
Discover the transition from singleton patterns to advanced state management with Redux. Learn why modern libraries offer superior scalability and maintainability for UI applications
Guidelines for generating clean, unique ID fields from composite attributes to enhance application maintainability and scalability, using encapsulated functions and semantically meaningful IDs.
Find out a naming convention and package structure to generate clean event sourcing code.
Implementing event sourcing in Spring Boot from scratch is easy. You just need to understand some core concepts.
Create a clean descriptive index name
Creating a good naming convention that can help you and your team maintain a clean codebase
Easy approaches to help you come up with descriptive clean names
The Naming convention is more important than any other part of clean code. Once you nail the name, everything else fits precisely!
A state management library like Redux, Recoil, etc., can help you manage application state for large applications. These come with their own set of challenges that can be eliminated with good design.
Response during unit tests can be saved in files which can be used for Testing UI.
Be careful not to introduce high coupling between microservices.
Event Sourcing is a paradigm where the entire state of an application is derived by replaying a series of events, providing benefits such as accurate auditing and schema flexibility.
Using ApplicationContext directly can indeed be a handy approach for debugging without setting up the entire application infrastructure.
BEM, TDD, and thoughtful design supercharge web development by streamlining UI DOM planning for maximum efficiency.
Each message sent by a producer would include a unique correlation-id. Once the message is received and processed by the consumer, it will publish a response message back to Kafka with the same correlation-id.
Page Object Model can be used with any testing framework to write cleaner and simpler tests that are fast to write.
Extending our Movie example creating a REST API with TDD. Scenarios covered are Create, Read, Update and Delete.
Learn the foundation of TDD with a simple example explained in depth.
Promoting TDD within a team requires patience, consistent effort, and a focus on creating a positive and supportive environment for learning and improvement.
Implementing OData, Utilizing Specifications, and Enhancing API Flexibility.
Making your application secure, high performance and maintanable.
I believe walking the board is an important step towards facilitating Continuous Delivery. The standup format facilitates perfection in updates, focused on one card at a time which is closer to completion and takes less time to complete.
With TDD, you don't find any logical bugs. The remaining types of bugs are data bugs and configuration bugs. This article discusses configuration validations to find and fix config bugs.
Implementing OAuth server is easier than it looks and it saves money in the long run.
BDD focuses on solving customer problems, not implementation details like UI. Those are addressed in other activities like wireframing and TDD.
Placeholder
Separating connectors from business logic in a service-oriented architecture promotes reusability and single responsibility.
Placeholder
Placeholder
Placeholder
How Zero-To-One is relevant in software development, why you should make Deployment&Delivery Pipeline first and how to make releases un-cool.
Placeholder
Fix bugs before your user reports
Placeholder
Data validation at various stages minimizes bugs and unnecessary overhead, ensuring consistent and accurate information flow.
Placeholder
Placeholder
Placeholder
Placeholder
The monitoring and time series database
Details about breaking user story added
Placeholder
Swap left and right. Then repeat for those nodes.
Have a fast pointer and a slow pointer. fast increases by 2. slow increases by 1. if both become the same then the cycle exists. if fast one reaches end then no cycle exists.
go to each depth, incrementing a depth counter by 1. return max of it.
Iterate over both and store minimum one in current; Increment in the list from where minimum came. Once one of the lists is empty, empty the other one.
Check if the last bit is 1 by (n&1). Do the right unsigned shift (logical shift >>>). Loop.
Get the last bit of value from the original. append to the reverse one. shift reverse one to the left. instead of adding, you can do `or` because after the shift last value will be 0. Imp - iterate 32 times only.
Similar to swapping two numbers. Start with prev as null and current and keep swapping next. Return prev because that's the last value.
Placeholder
Check if root is same as subtree or root.left is same or root.right is same;
Make sure the left pointer is always the lowest yet. Keep checking the difference between left and right. And return max.
Placeholder
God-level solution - iterate.<br>If an opening bracket is found, put the closing bracket in a stack.<br>If the closing bracket is found, pop and check for equality.
Have 2 pointers. One at the start other at the end. Skip if `!Character.isLetterOrDigit` and compare with `Character.toLowerCase`
Placeholder
Loop twice.<br>first right to left while multiplying.<br>Then second left to right while multiplying.<br>This can be done in a single array and one extra product variable
Create a set and put items in one by one while checking if `num` is already there.
count all numbers. sort. and return top k. Use streams to make it cleaner. or use bucket sort.
check if the length is the same.<br> find the difference in the count of letters in both numbers.<br> since there are only 26 letters, you can count in a single int array of 26. <br>index = char - 'a'
Make a map of item and index. Check if target - currentItem exists.
A Comparison between Application/Domain vs Framework Development
Placeholder
Placeholder
Separate out technical code from business/domain logic for extreme reusability for code.
Placeholder
Testing interfaces, abstract classes, and design patterns efficiently can be tricky since parents and children depend on each other.<br><br>We can write tests to eliminate these dependencies during the test time, making our tests very short and decoupled.
Placeholder
Placeholder
It's best to start with immutable objects and then modify them if needed.
Understanding and extending spring boot with custom AutoConfiguration
A powerful way to increase resilence of a system
From card picking to release
Practical Chaos Engineering Part 1
TDD Example that saved around 2 hours
For Chaos Engineering and Continuous Delivery
Placeholder
Placeholder
Architecture is a crucial pillar of accelerating product delivery. It's hard to keep a team in sync with architecture over time. Architectural testing can enforce architectural decisions as simple tests, dramatically reducing code review effort and extending code maintainability.
Notes from Avoiding Reactor Meltdown
Placeholder
Placeholder
Placeholder
Comments and Naming Conventions
From 8 minutes to less than 3 minutes.
Placeholder
Why small frequent commits leads to higher productivity
Multithreading programming has never been easier.
Placeholder
Creative variable names in tests can make them fun and interesting to read.
Placeholder
Placeholder
The process that keeps everyone in sync
Ideas shape development; specs sync teams; Gherkin tests ensure precision.
Placeholder
Fluent Assertions make tests highly readable and English-like, presenting a concise structure that simplifies comprehension
Consolidating object creation, mock of methods and more.
Placeholder
Things that should take 0 coding effort
Placeholder
The distinction between unit and integration tests blurs with embedded implementations, combining accuracy from both while overcoming limitations of traditional mocks and infra-heavy integration tests.
Placeholder
A template for thinking and creating understandable uniform tests
Placeholder
Making it easy for future-code readers to understand
A step by step algorithm
Placeholder
Placeholder
Placeholder
Placeholder
A much better alternative to Javascript
Placeholder
Placeholder
Speed up fetching of child entities
Placeholder
Placeholder
Placeholder
Choose the right tool for the job.
Placeholder
Placeholder
Impact, Revenue and Deceptions.
Mitigating the most discoraging part of software development
Placeholder
Placeholder
Placeholder
Placeholder
Unless you stop
Placeholder
Your robot on the internet
Placeholder
Placeholder
beyond algorithms and data structures
Placeholder
Using the best current programming language creation-tool.
Placeholder
Constructing the simplest possible code
or Machine Learning
Baby steps towards competitions
MNIST: Kaggle Getting Started
For those who donโt require Google level optimization
Atomic Habits applied to code. Thanks James Clear.
and Logging with style
You ainโt gonna need it
especially for maths
Minimalism
You cannot compete with SQL
Leave when not okay
constructing the simplest possible code that would solve your problem resulting in an increase in productivity by producing higher quality in less time.
Placeholder
Using Kaggle CLI
Placeholder
Game of Deep Learning was an image recognition challenge on AnalyticsVidya. The task was to classify 5 different types of Ships (Cargo, Military, Carrier, Cruise, and Tankers)