- Spring Boot – Dependency Injection
Inversion of control in the only form that matters day to day: constructor injection. Why field injection with @Autowired is the wrong default, how Lombok's @RequiredArgsConstructor removes the boilerplate that made people reach for it, and how to break a circular dependency instead of papering over it with @Lazy.
- Java Variables
A variable is a named box that holds a value of a declared type. That definition sounds trivial and it is, but three things about variables in Java are not: the type is fixed, where you declare one decides how long it lives, and Java has three distinct kinds that behave differently. Declaring and…
- Introduction to Java
People use the word "Java" for three different things: a language, a compiler, and a virtual machine. Most of the confusion beginners have about Java comes from not noticing that. This post separates them, then explains why the arrangement was worth building and where it leaves Java in 2026. Three…
- React Native – Styling and a Design System
Styles are JavaScript objects, not CSS. No cascade, no `var()`, no `:hover` — so a design system stops being a nicety and becomes the only way to stay consistent. `StyleSheet.create`, style arrays and how they merge, `Pressable`'s function-style prop for pressed states, and the platform split that makes shadows work on both iOS and Android instead of only one.
- Spring Boot – Beans, Scopes and Lifecycle
What a bean is, the difference between @Component and @Bean and when you need the second one, singleton versus prototype scope, the callbacks that run as a bean is created and destroyed, and why @Primary and @Qualifier exist the moment two beans satisfy the same type.