www.marcobehler.com Open in urlscan Pro
2600:9000:2451:7400:e:31de:340:93a1  Public Scan

Submitted URL: http://www.marcobehler.com/
Effective URL: https://www.marcobehler.com/
Submission: On November 03 via api from US — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

 * Home
 * About

Login


UNCONVENTIONAL GUIDES. FOR PROGRAMMERS.

I digest complex topics in (mainly) the Java/JVM programming world and write
them up as fun and easily understandable guides & courses. So that you save
time, frustration and do a better job. 👨‍💻👩‍💻




PREMIUM GUIDES & COURSES

GIT: MERGE, CHERRY-PICK & REBASE

Ever had a botched merge? Crazy rebase with tons of conflicts? You can use this
guide to get a deep understanding of how Git's merges, rebases & cherry-picks
work under the hood, so that you'll never fear them again.

Start Reading →

THE CONFIDENT SPRING PROFESSIONAL UPDATED

Go from not knowing where to start to having a good understanding of Spring
Framework, Spring MVC, Spring & Databases, as well as Spring Boot, without
having to fall back on constantly copying someone else's code.

Learn More →

THE CONFIDENT MAVEN PROFESSIONAL

A learning-by-doing course covering not only Maven's basics but also going into
detail on multi-module projects, release flows & corporate Maven settings.

Learn More →

JDBC WORKBOOK

A workbook and video course that teaches you JDBC fundamentals through
exercises. This workbook teaches you the universal basics you should know if
your Java application talks to a database.

Learn More →


JAVA GUIDES

UNDERSTANDING GRAALVM, AOT & JIT NEW

You can use this guide to understand what GraalVM is, how it works and how
Just-In-Time (JIT) compilation compares to Ahead-Of-Time (AOT) compilation).

Read →

UNDERSTANDING JAVA’S PROJECT LOOM NEW

You can use this guide to understand what Java's Project loom is all about and
how its virtual threads (also called 'fibers') work under the hood.

Read →

JAVA VERSIONS & FEATURES

How to install the latest Java. Differences between Java distributions
(Adoptium, AdoptOpenJDK, OpenJDK etc.). Overview of language features: Java
8-17.

Read →

JAVA MICROSERVICES: A PRACTICAL GUIDE

Understand what Java microservices are, how you architect and build them. Also:
A look at Java microservice libraries & common questions.

Read →

JDBC - A SHORT GUIDE

You can use this guide to learn the basics of JDBC: How to connect to any
database and execute SQL queries. Including JDBC drivers & connection pools.

Read →

JAVA & DATABASES: AN OVERVIEW OF LIBRARIES & APIS

Overview of all popular database libraries & APIs in Java. Covers JDBC,
Hibernate, JPA, jOOQ, Spring Data and more.

Read →

HOW TO WORK WITH FILES IN JAVA

How to work with files in Java through the Path API. From reading and writing
files, to watching directories & using in-memory file systems.

Read →

HOW TO DO LOGGING IN JAVA

Discover, understand and use the right Java logging library for your
applications, like Log4j2, Logback, or java.util.logging.

Read →

INTERMEDIATE JAVA - A LEARNING PATH | PART 1

In this fun guide you will build a mp3-archiving project from scratch, learning
a lot about Core Java, JDBC, servlets and much more.

Read →

MVN CLEAN INSTALL - A SHORT GUIDE TO MAVEN

Use this guide to understand what a 'mvn clean install' really does. Also: A
crash-course on Maven and workarounds for its most common pitfalls.

Read →

JOOQ - A SHORT GUIDE

Use this guide to understand what jOOQ is, how to get started with it quickly
and how jOOQ integrates with or compares to libraries like Spring and Hibernate.

Read →


SPRING GUIDES

WHAT IS SPRING FRAMEWORK? AN UNORTHODOX GUIDE

You can use this guide to understand what Spring framework is and how its core
features like dependency injection or aspect-oriented programming work. Also, a
comprehensive FAQ.

Read →

WHAT IS SPRING MVC: @CONTROLLERS & @RESTCONTROLLERS

You can use this guide to understand what Spring MVC is, how its @Controllers,
@RestControllers and DispatcherServlet work. Also, how it compares to Spring
Boot.

Read →

HOW SPRING BOOT'S AUTOCONFIGURATIONS WORK

You can use this guide to get an in-depth understanding of what Spring Boot's
Autoconfigurations are and how they work.

Read →

SPRING TRANSACTION MANAGEMENT: @TRANSACTIONAL IN-DEPTH

You can use this guide to get a simple and practical understanding of how
Spring's transaction management with the @Transactional annotation works.

Read →

11 SPRING BOOT INTERVIEW QUESTIONS THAT MAKE YOU THINK

Here are 11 Spring Boot interview questions that don't focus on trivial details,
but rather make you think and thus learn a lot along the way.

Read →

SPRING AND SPRING BOOT VERSIONS

A short guide to the latest Spring and Spring Boot versions, as well as
information on the release cycle and maintenance windows.

Read →

SPRING SECURITY: AUTHENTICATION AND AUTHORIZATION IN-DEPTH

You can use this guide to understand what Spring Security is and how its core
features like authentication, authorization or common exploit protection work.

Read →

SPRING SECURITY & OAUTH 2.0 - IN-DEPTH

You can use this guide to get a deep understanding of OAuth 2.0 and how you
integrate Spring Security with it.

Read →


DEVOPS

LOAD TESTING: AN UNORTHODOX GUIDE NEW

You can use this guide to understand how to properly execute load tests, what
data to collect during load tests and how to interpret that data.

Start Reading →

13 MUST-KNOW SSH COMMANDS NEW

A list of popular SSH commands for SSH connections, key generation & SSH agents
that I'm using on a daily basis.

Read →


GENERAL PROGRAMMING

MCL #002: GAVIN KING & HIBERNATE 6.3

Marco Codes Live: Episode 2. With Gavin King, creator of Hibernate.

Watch on YouTube →

MCL #001: DAN VEGA, SPRING BOOT & GOOGLE PHOTOS CLONE

Marco Codes Live: Episode 2. With Dan Vega, Spring Developer Advocate.

Watch on YouTube →

HOW TO REALLY DO CODE REVIEWS

A follow-up to the previous code review episode and HIGHLY recommended for
everyone.

Watch on YouTube →

HOW TO DO CODE REVIEWS

A user sent in a GitHub pull request for our Google Photos clone, which means we
have to do a code review. How should you do such a review?

Watch on YouTube →

HOW TO LEARN ANY PROGRAMMING TOPIC

As the title says. Want to learn a specific programming topic? In this video
I'll show you my personal approach to that.

Watch on YouTube →


HOW TO BUILD A GOOGLE PHOTOS CLONE IN JAVA

EPISODE 1

Episode 1: Generating thumbnails for a directory of photos with Java and
ImageMagick, which will serve as the basis for our photo backend service.

Watch on YouTube →

I DON'T TDD. WRITING PRAGMATIC TESTS WITH JAVA.

Testing is damn hard! How do we test that our Java app spawns the correct
ImageMagick processes? That the resulting thumbnails are the correct size and
indeed thumbnails, not just random pictures of cats? Find out in this episode!

Watch on YouTube →

SOLVING JAVA MULTITHREADING CHALLENGES IN MY GOOGLE PHOTOS CLONE

We want to turn our Google Photos clone from single-threaded to multi-threaded,
to generate thumbnails much faster than before...

Watch on YouTube →

HOW TO APPROACH JAVA, DATABASES & SQL NEW

We want to save our thumbnail data to a database, so that we can render our
pictures to a nice HTML gallery page and finish the proof of concept for our
Google Photos clone!

Watch on YouTube →


HOW TO BUILD A TEXT EDITOR WITH JAVA

TEXT EDITOR E01 - HOW TO USE ANSI ESCAPE CODES & CALL NATIVE APIS WITH JAVA

Have you ever wanted to know how text editors work? How shell scripts change
terminal text colors, update lines without scrolling, or move the cursor around?
Let's build a text editor!

Watch on YouTube →

TEXT EDITOR E02 - KEYPRESSES & IMPLEMENTING SCROLLING

This is Episode 2 and we will cover: How to detect "complex" key presses like
arrow up, arrow down and friends. How to move the cursor around on the screen,
how to load and display text files, as well as a first scrolling implementation.

Watch on YouTube →

TEXT EDITOR E03 - ADVANCED KEYBOARD NAVIGATION & WINDOWS/MACOS COMPATIBILITY

This is Episode 3 and we will cover: How to implement Page Up & Page Down
functionality. How to make the End key work properly, including cursor snapping.
And how to make our text editor work on all operating systems, including macOS
and Windows - not just Linux.

Watch on YouTube →

TEXT EDITOR E04 - HOW TO IMPLEMENT FULL-TEXT SEARCHNEW

This is Part 4 and we will cover: How to implement full-text search, including
instant search, and being able to search forwards and backwards!

Watch on YouTube →


OTHER YOUTUBE

HOW TO APPROACH DEPENDENCY MANAGEMENT IN JAVA

Real-Life considerations when working with dependencies in Java.

Watch on YouTube →

7 AWESOME LIBRARIES FOR JAVA UNIT & INTEGRATION TESTING

Here are 7 awesome Java libraries that I frequently use when writing unit &
integration tests.

Watch on YouTube →

HIBERNATE & JPA TUTORIAL - CRASH COURSE

A comprehensive, but fun tutorial of the Hibernate/JPQ ecosystem.

Watch on YouTube →

GIT & INTELLIJ IDEA - 5 TRICKS YOU SHOULD KNOW

Do you work with IntelliJ IDEA & Git? Then you will appreciate these 5 tips &
tricks in your daily work.

Watch on YouTube →

7 GREAT TERMINAL/CLI TOOLS NOT EVERYONE KNOWS

Do you work with the CLI a lot? It doesn't matter if Windows, macOS or Linux, in
this video you'll learn 7 tools that I frequently use.

Watch on YouTube →

GRADLE TUTORIAL [CRASH COURSE]

A comprehensive, but fun coverage of the Gradle ecosystem.

Watch on YouTube →

SSH TUTORIAL [CRASH COURSE]

A comprehensive, but fun coverage of SSH, SCP & friends.

Watch on YouTube →

JDBC TUTORIAL [CRASH COURSE]

A comprehensive, but fun coverage of the JDBC landscape.

Watch on YouTube →

JUNIT 5 TUTORIAL [CRASH COURSE]

A comprehensive, but fun coverage of the JUnit 5 testing ecosystem.

Watch on YouTube →

MAVEN TUTORIAL [CRASH COURSE]

A comprehensive, but fun coverage of the Maven ecosystem.

Watch on YouTube →

SPRING BOOT TUTORIAL [CRASH COURSE]

A comprehensive, but fun coverage of the Spring Boot universe.

Watch on YouTube →

LIVE-CODING S01E01: STRIPE PAYMENT INTEGRATION

Live on tape. Building a payment integration. Episode #1

Watch on YouTube →

LIVE-CODING S01E02: STRIPE PAYMENT INTEGRATION

Live on tape. Building a payment integration. Episode #2

Watch on YouTube →

 * Privacy & Terms
 * Imprint
 * Contact

© 2021 Marco Behler GmbH