Skip to main content

Web Services

Common Java Application Anti-patterns and Their Solutions

Software projects often run into trouble when developers mix different code layers together. The article explains how this leads to rigid, brittle code that’s hard to update and reuse. Software architecture problems are examined through biological cell analogies. A practical guide follows for improving existing systems without full rewrites, focusing on testing, API design, and gradual changes.

Customizing REST API Error Response in Spring Boot / Spring-Security-OAuth2

Defining error format is important part of REST API design.

Spring-Boot and Spring Security provide pretty nice error handling for RESTful APIs out of the box. Although it has to be documented, especially when contract-first approach to API design is used.

It is good idea to follow some common format for error responses. But OAuth2 specification and Spring Boot format may not satisfy those requirements.

Maximizing Efficiency with UI-First Development: A Client-Centric Approach to Project Success

One of the challenges for start-ups or any new project is to reduce the amount of work while still delivering a full-featured product. Agile methodologies address this challenge on the project management level. Let’s discuss another approach to address it on the architecture level: UI-first development.

REST API Design Resources

The article shares resources on designing REST APIs, including a video presentation covering topics like JSON formats, linking, pagination, HTTP methods, versioning, error responses, and security. It also links to REST API guidelines from Zalando and articles on authentication.

Java Application Development Tutorial

I’ve been meaning to write a small tutorial for building web applications. Now it’s time! Let’s define the steps and choose some solutions for developing back-end java web application.

I will give my design recommendations and list a technologies I would use. You may have your own opinion, and you may share it in comment. Over time, this post may change since my favourites are also changing over time.