Videos
-
Inversion of control vs. dependency injection
This video tutorial explains the relationship between dependency injection and inversion of control as well as how they underpin the Spring framework.
-
Maven and Eclipse tutorial
Maven is the Java industry's most popular Java build tool. Eclipse is the Java industry's most popular open source IDE. Here's how to combine the two.
-
Spring Boot, Hibernate, JPA and MySQL
Ever use ChatGPT to create a web-based front end for a RESTful Spring Boot back end? This fun video tutorial on Spring, Hibernate and JPA is your opportunity.
-
How to install Python on Windows
Want to jump into the world of AI, ML and data science? Your first step is to install Python and get familiar with the Python programming language.
-
Constructor injection vs. setter injection in Spring Boot
Ever wonder what the difference is between setter and constructor injection in Spring Boot? Here's a deep dive into the benefits and drawbacks of both.
-
Connect Java apps to ChatGPT using OpenAI and Spring Boot
AI and machine learning are not purely the domain of Python. This Spring Boot tutorial will show you how to connect your Java apps to ChatGPT in no time.
-
OpenAPI, Swagger and Python
Looking for an easy way to create, test and document your RESTful APIs written in Python? Swagger and OpenAPI make it easy. This tutorial shows you how to do it.
-
Java, JDBC and SQL Server tutorial
This tutorial shows how to create a JDBC connection to Microsoft's SQL Server, and get started creating Java-based applications that are scalable and secure.
-
Spring Initializr for Spring Boot
The Spring Initializr is the easiest way to get started with a new Spring Boot project. Here's a tutorial on how to use it.
-
Spring Batch tutorial
There are two common approaches to batch processing in Spring Boot: the Tasklet and the ItemProcessor. This tutorial explains why the ItemProcessor is best for large data sets.
-
Spring vs. Spring Boot vs. the Spring Framework
Ever wonder what the distinction is between Spring Boot and the Spring Framework? Or exactly what the term 'Spring' refers to? Here's your answer.
-
Create a React Hello World program
Discover a new take on the classic React Hello World program. Go beyond the basics and explore state management, event handling and best practices to build progressive web apps.
-
Spring Boot CRUD operations
What's your preferred approach to perform Spring CRUD operations? I always choose Spring Data's CrudRepository. Anything else is too much work.
-
SQLite tutorial for beginners
SQLite has an incredibly small footprint. That's one of the reasons why it's the most used database engine in the world. If you've never used it before, here's your chance.
-
Java, JDBC and Postgres
Postgres has become popular in the Java community for many reasons. The ease of integration with Java apps through JDBC is one of the biggest. Here's how it works.
-
Spring Boot Actuator tutorial
What's the easiest way to get insights into how your Spring Boot applications are running? The Spring Boot Actuator is the answer.
-
Spring Boot ConfigurationProperties tutorial
Need to convert structured data in a Spring YAML or properties file into lists, maps and inner classes? Just use the @ConfigurationProperties decoration in Spring Boot.
-
How Spring Boot @Component and @ComponentScan annotations work
There are many ways to configure Spring's ApplicationContext. The easiest way? That's through Spring's Component and ComponentScan annotations. Here's how to use them.
-
Git commit message conventions and best practices
Never underestimate the power of a good git commit message. Need help writing one? Here are the commonly accepted git commit message guidelines and best practices.
-
Spring profiles in Spring Boot tutorial
Ever struggle with the constant discrepancies between dev, UAT and production? Spring profiles make such configuration issues a thing of the past. Here's how they work.
-
Dependency injection in Spring
There's more to dependency injection than calling parameterized constructors and passing components to methods. This tutorial examines what it means to support DI and IoC.
-
Get started with Spring Tools Suite 4
Getting started with Spring Boot has never been easier. The Spring Tools Suite for Eclipse comes with everything you need to write, compile and test your Spring-based apps.
-
Inversion of control in Spring
All enterprise development frameworks are built around inversion of control. This IoC example demonstrates how it manifests itself in frameworks like Spring and Jakarta EE.
-
Simple Spring Hello World program
Many developers work with Spring Boot every day but don't really understand how dependency injection works. Build your foundation in Spring with this simple Hello World program.
-
Model-view-controller design pattern tutorial
How well do you know the MVC design pattern? The basic concept is simple, but the details trip up many developers. This deep dive explores what MVC is and how to best implement it.
-
Spring Boot vs. Spring MVC: What's the difference?
You've used Spring Boot to build microservices. You've also used Spring MVC. But what's the difference? Here we look at the differences between Spring Boot and Spring MVC.
-
Sprint review vs. retrospective: What's the difference?
While the purposes of Scrum sprint planning and the daily standup are self-evident, people often confuse the sprint review and retrospective. Here's the difference between them.
-
How to dockerize Spring Boot apps
Spring Boot and Docker naturally fit together. Here's how to dockerize your Spring Boot application in just a few easy steps.
-
Spring Web MVC crash course
There's still a place in the world for server-side rendering. Learn the Java way to build HTTP responses on the server with this Spring MVC crash course for beginners.
-
How to deploy Spring Boot apps in AWS
You don't need a Kubernetes cluster to host your cloud-native Spring Boot microservices. Learn how to quickly deploy your Spring Boot applications in AWS using ECS and Fargate.
-
Standalone Spring Boot console apps with CommandLineRunner
Want to create a Spring Boot application that runs at the command line? It's easy. Simply implement the CommandLineRunner interface, and override the required run method. Here's how.
-
OpenAPI, Swagger and Spring Boot REST APIs
It's easy to integrate Swagger into your Spring Boot apps with SpringDoc's OpenAPI starter. Code generation, documenting REST APIs and testing endpoints has never been easier.
-
RestController vs. Controller: What's the difference?
Spring 4 introduced the RestController to simplify RESTful API development, but most Spring Boot developers still don't know how it differs from the Spring MVC Controller.
-
Spring Boot REST API crash course
If you want to master RESTful API development in Java, you need to learn the Spring Boot web APIs. This REST tutorial gets you up to speed quickly on Spring Boot and REST.
-
GET vs. POST: What's the difference?
POST and GET are the two most-used RESTful HTTP methods. But how well versed are you on the differences between them?
-
How to apply the Liskov substitution principle in Java
The Liskov substitution principle is often mistaken for polymorphism and inheritance. To really understand the SOLID LSP, you must understand the nuance and distinction.
-
How to install MySQL on Windows
Need a well-maintained, open-source, standards-based database to test your Java apps and Spring Boot microservices? Here's how to download and install the MySQL Community Edition.
-
How to print any star pattern in Python -- or Mojo
Mojo is a superset of Python. What does that mean? For one, printing a Python star pattern looks a lot like solving a Mojo star pattern.
-
REST vs RESTful API: What's the difference?
Are your APIs RESTful? The only way to know is to fully understand what REST is. Here's how REST and RESTful APIs work together.
-
Python's GIL removal is a poison pill and benefits Mojo
Developers have pleaded for 30 years for the stewards of the language to remove Python's GIL. If they do it now, it will be the end of Python.
-
My 2024 Scrum Guide updates
An update to Scrum's defining document is brewing. Here are 10 changes I'd like to see in a 2024 Scrum Guide.
-
Scrum methodology explained
Want to learn about the Scrum methodology? Then forget everything you think you know about Scrum because it's likely wrong.
-
Constructor overloading in Java
Not every language supports method overloading, but Java always has. Here's how to perform constructor overloading in Java.
-
Jira story vs. epic: What's the difference?
Anyone who has opened a Scrum board in Jira knows projects are organized into stories and epics. But what exactly is the difference between the two of them?
-
Java records tutorial
Java is constantly evolving, but some changes are more significant than others. This Java records tutorial teaches you about this decade's largest language enhancement to date.
-
Java's default constructor tutorial
They say you don't get anything for free, but in the world of software development, Java developers can use the default constructor without paying any price.
-
MVP vs. prototype: What's the difference?
While some people mistakenly use the terms MVP and prototype interchangeably, there are key differences between a minimum viable product and a prototype for your product.
-
Jira story vs. task: What's the difference?
To help teams progress from vision to implementation, Jira provides stories and tasks. Here's the difference between a Jira story and a task.
-
Top REST API URL naming convention standards
There is no official REST URL naming standard. However, these 15 RESTful API naming conventions will help you create highly interoperable web services.
-
10 constructor types in Java
How many different types of Java constructors could you name? The Java spec names 10. Generic, canonical and anonymous Java constructor types just might be new to you.
-
How Java 17 records work
Devs aren't using Java 17 records nearly enough. With the power to clean up your code and make your apps faster, Java records should be the norm and not the exception.
-
Undo and revert pushed Git commits
If you want to undo a git push, you have one of two options: revert or reset. It's safest to revert a pushed commit, but a reset is only to permanently delete a pushed commit.
-
How to use Git's 'set upstream push' command
Need to fix the 'no upstream branch' error message? Then you need to run the 'git set upstream push' command. Here's how.
-
Simple git stash example
The 'git stash' command is a powerful tool, but few developers know how to use it. Here's an example of how to create a Git stash and pop it back later.
-
Do the 5 Scrum values really add value?
Do the Scrum Guide's five values really provide value as proponents claim? A scientific examination suggests they should be a lot more helpful to software development teams.
-
Learn Maven tutorial for beginners
Apache Maven is the Java world's most popular build tool, and if you're a Java developer, it behooves you to learn it. This Maven tutorial will make you an expert in a hurry.
-
Edit, change or amend the last Git commit message
When you need to edit a Git commit message, the amend command allows you to change the previous one.
-
Full Java constructors tutorial
How well do you know how Java constructors work? This quick Java constructors tutorial teaches you about defaults, overloading, initializing and parameterizing constructors in Java.
-
Full Git and GitLab tutorial for beginners
This Git and GitLab tutorial is designed to get beginners up to speed quickly on how to use these CI/CD and DevOps tools to manage, merge and share code commits with other devs.
-
How to use the git remote add origin command
Need to connect a new project to a remote repo on GitHub, GitLab or Bitbucket? The git remote add origin command is the easiest way to do it.
-
How to use the git init command
Follow this git init tutorial to create a local repository, add files to the repo and perform commits on your local machine as you get started with distributed version control.
-
Why we use static final in Java for constants
Java doesn't have global constants per se, but it does have static final variables. Here we explore how these two keywords make a variable constant in Java.
-
How to set a Git username and password in Git config
There's a way to stop Git from repeatedly asking you for a username and password. Just set your username and password in Git config.
-
Git vs. GitHub: What's the difference?
Git and GitHub involve similar technology but are different in several important ways. Here's what you need to understand to get the most out of these key developer tools.
-
Full Git and GitHub tutorial for beginners
Git is the most popular version control tool on the market, and GitHub is the most popular Git hosting service. This Git and GitHub course shows you how to use them together.
-
5 ways to force Java garbage collection
A developer can't technically force garbage collection in Java, but it can be made a priority. If you need to free up heap space, here are five ways to prioritize it in the JVM.
-
A GitHub Pages tutorial on how to host personal websites
Follow these steps to set up a GitHub repository, clone the repo and host a personal website on GitHub Pages with contents indexable by Google.
-
Get automated with this RPA and UiPath tutorial for beginners
Developers can eliminate tedious and monotonous tasks with the help of robotic process automation. This UiPath tutorial highlights the early steps with any RPA platform.
-
A HibernateUtil class example to simplify JPA code
Developers can use HibernateUtil to mitigate access to JPA EntityManager and create more readable, less resource intensive code for data-driven applications.
-
An introduction to RPA programming with UiPath Studio
Follow this UiPath Studio tutorial for the basics of RPA programming and see how developers can improve their skills as they build in-depth applications.
-
How to git stash untracked files with a push
Need to add untracked files and otherwise ignored files into the git stash? Here's how to use the --include-untracked and --all git stash push options.
-
Tomcat vs. JBoss: Compare features of these Java app servers
How do Apache Tomcat and RedHat's JBoss EAP server compare? Evaluate the features of each application server to find the one that makes sense for your enterprise.
-
How JPA EntityManager handles Hibernate transaction management
Follow this JPA EntityManager persist example tutorial to see how it can be used for transaction management and how to save changes to the database.
-
How to easily merge and resolve git stash pop conflicts
Don't let a conflict with git stash pop derail development. Here's how to merge and resolve this issue and clean up code for proper programming.
-
3 ways to have JPA and Hibernate create tables in a database
JPA frameworks such as Hibernate can automatically create tables. Here are three ways to have JPA and Hibernate create tables in a database.
-
Simple database integration with the JPA persistence.xml file
The persistence.xml file plays a significant role in all facets of JPA-based application development. Examine the file's properties for a simple configuration to ease development.
-
How MySQL InnoDB vs. MyISAM data engines compare
Data integrity, performance and transactional capabilities create the MyISAM vs. InnoDB data set debate for MySQL users. Compare the two to see which one makes sense for your data.
-
Compare git stash pop and git stash apply for file restores
Do you want to save or delete your stash entries? Your choice will determine the outcome of the debate between the git stash pop and git stash apply command.
-
Create a distraction free JPA and Hibernate dev environment
A minimalistic approach is the way to go for development with Hibernate and JPA. Create a development environment with only the basics -- a JDK, Hibernate and a text editor -- to get started.
-
HashMap vs. Hashtable: Which map should you choose?
When HashMap replaced Hashtable as part of the Java 1.2 release, it moved away from how developers previously used the collections API and Java maps.
-
Git reflog vs. log: How these commit history tools differ
How do Git log and reflog differ? These examples show how the two commit history commands provide distinct results for a developer.
-
5 tool categories to build a powerful DevOps technology stack
Want to speed application delivery and deployment? Consider adding one of these five DevOps tools and technologies to your IT department.
-
The Git working tree, index and commit history explained by example
This quick tutorial explains the importance of the Git working tree. With the help of the git status command, you'll become an expert on how the popular DVCS tool transforms the file system.
-
Developer vs. DevOps roles: What's the difference?
Don't lump developers and DevOps engineers into the same category. Compare and contrast the two and see which one is a better fit for your programming career.
-
How to use the git clone command with GitHub by example
Move code from remote-hosted version control repositories into local ones with one command. Follow this Git clone tutorial to move code into local environments.
-
How to integrate Nexus with Jenkins for simpler builds
Integrate Nexus with Jenkins in your local environment to simplify development and run build jobs with minimal headaches.
-
Install Eclipse IDE on Ubuntu in 5 easy steps
Software development is greatly simplified by an IDE, like Eclipse. In this video tutorial, we demonstrate how to install the Eclipse IDE on the Ubuntu distribution of Linux.
-
How to use the Jenkins multi-configuration project
In this Jenkins Matrix project plugin example, create a two-dimensional build job that runs 16 build jobs at once.
-
JDBC tutorial: Easy installation and setup with Apache Derby
New database developers can get up to speed with this tutorial on JDBC and Apache Derby. Follow these steps to install and connect to the Derby database on your terminal.
-
How to test and deploy WARs with Tomcat and Eclipse
With the proper configuration and integration, it's easy to deploy WAR files from Eclipse to Tomcat. Follow these five steps that every developer should know.
-
Tomcat vs. Jetty: How these Java application servers compare and differ
What is your Java application server of choice? Where you stand on the Jetty vs. Tomcat debate probably lends a hand to which one you use in production.
-
Simple Java 8 Predicate example with lambda expressions and interfaces
Use this Java Predicate example to help developers learn lambdas, expand functional programming and reduce code verbosity in their environment.
-
How to run Java preview features such as JDK 13 text blocks
Follow these five steps to enable the JDK 13 text blocks as part of the preview features in the latest Java release and use multi-line String literal in your code.
-
Tomcat vs. Apache HTTP Server: What's the difference?
Don't get caught up in the improper phrasing of "What's the difference between Tomcat and Apache?" Let's straighten out the confusion and compare the two server offerings.
-
5 steps for an easy JDK 13 install on Ubuntu
Follow these five steps for an easy Java 13 installation on Ubuntu, and don't forget to set JAVA_HOME and the PATH variables.
-
Step-by-step Jenkins Tomcat deploy of a WAR file
You can use Jenkins to deploy a WAR file to a container in your environment in four easy steps. Follow along to learn how to push your Jenkins pipeline to deploy to Tomcat.
-
Step-by-step Maven Tomcat WAR file deploy example
Five simple steps are all that's needed to deploy WAR files with the Tomcat-Maven plugin. Use the following steps for a successful deployment in your environment.
-
Hibernate vs. JDBC: How do these database APIs differ?
Don't overthink it. Hibernate and JDBC aren't the same thing. But how do these database APIs differ? Here's a brief history lesson and explainer to find out.
-
Best Java static code analysis tools for code quality automation
Don't let faulty code bring down your software project. These Java code quality tools can help find and fix common errors before they become problems.
-
5 Java test frameworks and tools JDK developers must know
Java testing tools can ensure you release a product that's been carefully examined for bugs and errors. Here are five frameworks that can lighten that testing burden.
Podcasts
-
How Quarkus fits into the Red Hat Runtimes formula
-
Focus on the artifact for an organizational DevOps strategy
-
Java video games, like Minecraft, keep the language popular
-
Let's talk bitcoin and building blockchain apps fast with Hyperledger
-
Chef's InSpec 2.0 brings compliance automation to the cloud
-
Database automation drives DevOps into the persistence layer