DevOps-driven, cloud-native app development
It's time to embrace DevOps. A DevOps transition will make your development process and delivery pipelines faster, more reliable and more scalable. Learn how to automate, collaborate, monitor and optimize your enterprise with examples and tutorials on technologies like Jenkins, Docker, Kubernetes, Terraform, and other cloud-native tools and technologies.
Top Stories
-
Video
26 Apr 2024
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. Continue Reading
-
Video
10 Apr 2024
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. Continue Reading
-
Video
10 Apr 2024
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. Continue Reading
-
Video
09 Apr 2024
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. Continue Reading
-
Video
08 Apr 2024
Learn Jenkins: Tutorial for beginners
Jenkins is a popular open source CI/CD tool, and it's not hard to learn either. Learn to build your own CI/CD pipelines with this full Jenkins tutorial for beginners. Continue Reading
-
Blog Post
04 Apr 2024
What is MVCC? How does multiversion concurrency control work?
Want to learn how multiversion concurrency control works? With a very simple MVCC example, we'll explain how to eliminate locks in databases including PostgreSQL and etcd. Continue Reading
-
Video
02 Apr 2024
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. Continue Reading
-
Video
01 Apr 2024
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. Continue Reading
-
Video
28 Mar 2024
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. Continue Reading
-
Video
27 Mar 2024
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. Continue Reading
-
Video
19 Mar 2024
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. Continue Reading
-
Video
19 Mar 2024
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. Continue Reading
-
Video
12 Mar 2024
Learn how to use GitLab tutorial for beginners
GitLab is a complete CI/CD platform. But to really understand GitLab, you must also understand its namesake Git. This Git and GitLab tutorial will get you up to speed on both. Continue Reading
-
Video
05 Mar 2024
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. Continue Reading
-
Blog Post
04 Mar 2024
Best crash course to learn Jenkins from scratch
Need to learn Jenkins CI fast? This Jenkins tutorial will quickly get you up to speed on how to use the popular CI/CD tool. Continue Reading
-
Blog Post
01 Mar 2024
How to git push an existing project to GitLab
Want to push a new project into an existing GitLab repository? Follow these steps, but beware one way that will work but might cause trouble on a shared repo. Continue Reading
-
Video
28 Feb 2024
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. Continue Reading
-
Blog Post
27 Feb 2024
Brackets vs braces vs parentheses: What's the difference?
Stop using the terms square brackets, round brackets and squiggly brackets. Use the terms braces, brackets and parenthesis instead. Here's the difference between them. Continue Reading
-
Blog Post
25 Feb 2024
Set a Git stash message. Pop with a Git stash name
Developers need to name their git stashes and add a message if they want to easily identify them in the future. Here's how to pop and apply a specific Git stash by name. Continue Reading
-
Video
23 Feb 2024
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. Continue Reading
-
Blog Post
23 Feb 2024
How to list and show the git stash history
Show your shelved change history with git stash list and show. Continue Reading
-
Blog Post
21 Feb 2024
Git branch rename: Command to change a branch name in Git
Here's a quick example that shows you how to rename a Git branch locally and remotely. The branch renaming commands and techniques work with GitHub, GitLab, Bitbucket and any cloud-based Git vendor. Continue Reading
-
Blog Post
19 Feb 2024
How to use the git stash pop command
To move shelved changes from the Git stash to your working directory, the git stash pop command is preferred over apply, as pop will delete the stash in question, keeping the stash history clean. Continue Reading
-
Blog Post
16 Feb 2024
git@github: permission denied (PublicKey) SSH error fix
Here are the three most common fixes to GitHub 'Permission denied (publickey)' SSH error. Continue Reading
-
Video
08 Feb 2024
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. Continue Reading
-
Video
07 Feb 2024
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. Continue Reading
-
Video
05 Feb 2024
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. Continue Reading
-
Blog Post
02 Feb 2024
How to unstage a file in Git
Want to unstage a file in Git? Use the restore command. Other options to have Git remove a file from the staging index have unintended consequences you'd really rather avoid. Continue Reading
-
Blog Post
30 Jan 2024
Quickly generate, add and setup GitLab SSH Keys
To connect Git operations securely to your GitLab repository, you will need to configure GitLab SSH keys both locally and remotely. Here's a quick example of how to do it. Continue Reading
-
Blog Post
25 Jan 2024
How to find and use a GitHub URL by example
This example shows you how you can find and use the GitHub URL. Clone, fetch, push and pull to your remote repo easily with the GitHub URL at your disposal. Continue Reading
-
News
23 Jan 2024
Docker Build Cloud claims speed boost for dev workflows
Docker ships a managed service that pushes container image builds to AWS and adds shared caches to customers' existing dev tools. Continue Reading
-
Blog Post
19 Jan 2024
System, global and local Git config files on Windows and Linux
Ubuntu, Linux and Windows Git configuration files are an unwieldy mess. Or at least is seems that way when you realize it's contained in three uniquely named files and spread across three or four ... Continue Reading
-
Blog Post
15 Jan 2024
Set your username and email in Git config
Avoid Git's fatal 'unable to auto-detect email' error and set your username and email address in Git config. This global git config example shows you how. Continue Reading
-
Tip
05 Dec 2023
What's the value in an Agile release train?
When multiple development teams work on code, integration and deployment become more complicated. ART could be a useful tool to smooth out these wrinkles. Continue Reading
-
Opinion
04 Dec 2023
New dev tools at AWS re:Invent shape the future of cloud
Noteworthy tools and updates for developers at AWS re:Invent 2023 included AWS Fault Injection Service, Amazon Q Code Transformation and GenAI features to improve productivity. Continue Reading
-
Answer
01 Dec 2023
11 real benefits of microservices
There's a reason why so many vendors have moved from monoliths to microservices. Here are 11 real benefits microservices bring to companies. Continue Reading
-
Blog Post
28 Nov 2023
How to amend a git commit
The easiest way to undo a git commit is with the git commit --amend command. This quick tutorial will show you how to quickly amend any Git commit. Continue Reading
-
Blog Post
19 Nov 2023
The git add command for beginners
The Git index, along with the need to use the "git add" command before performing a commit, is often a source of confusion for beginners. These "git add" examples will make things clear. Continue Reading
-
Blog Post
18 Nov 2023
How to create a Git repository
To get started with Git, you need a git repository. This quick tutorial will show you how to use "git init" to quickly create a git repo on your local machine. Continue Reading
-
Tip
16 Nov 2023
What does the Python 'if name equals main' construct do?
Ever wonder what Python's if name equals main syntax does? Here we explore what it does and when to use it. Continue Reading
-
Answer
16 Nov 2023
10 disadvantages of microservices you'll need to overcome
Not everyone is keen to adopt a cloud-native architecture, for good reasons. These common drawbacks to microservices might convince you to stick with your traditional architecture. Continue Reading
-
Tip
13 Oct 2023
Is a continuous planning process in DevOps worth it?
Is a continuous planning strategy right for your organization's DevOps efforts? Know the practical benefits and challenges, as well as how to improve development efficiencies. Continue Reading
-
Blog Post
12 Oct 2023
The Scrum process explained
The Scrum framework is the software development industry's most popular Agile methodology. Here are the key steps that define how the Scrum process flows. Continue Reading
-
Tip
03 Oct 2023
Scrum master interview questions and answers
Want to ace the Scrum master interview? These tough Scrum master questions and answers will help you prepare. Continue Reading
-
Tip
15 Sep 2023
Idempotent HTTP methods and REST
The Hypertext Transport Protocol requires all HTTP verbs to identify as idempotent or not. But what is an idempotent method, and how does idempotence apply to RESTful API design? Continue Reading
-
Blog Post
05 Sep 2023
How to install Git on Windows
Need to install Git on Windows? This quick Git install tutorial shows you how to quickly download, install and configure Git on Windows 10. Continue Reading
-
Blog Post
05 Sep 2023
Clean Git up!
There comes a time where you must clean up Git branches, commits and the repository as a whole. Here we show you how to compact your Git repo and keep things clean. Continue Reading
-
Blog Post
04 Sep 2023
How to git clone a specific commit
Need to git clone a specific commit? There's no single command to do it, but clever use of branch and reset commands makes it possible to clone a single, specific git commit. Continue Reading
-
Blog Post
02 Sep 2023
How to git clone a specific branch
Need to git clone a single, specific branch? In this quick example, we show you how to git clone a specific branch to help save your builds time and space. Continue Reading
-
Blog Post
01 Sep 2023
How to discard local changes in Git
Don't overlook a file or two when you attempt to remove and discard local, uncommitted changes in Git. Learn how to locally revert and remove uncommitted changes to files in Git properly. Continue Reading
-
Blog Post
31 Aug 2023
Git push new local branch to remote
Did you create a new Git branch? Need to push that local Git branch to a remote repo like GitHub, BitBucket or GitLab? This example shows you how to git push new local branches remotely. Continue Reading
-
Blog Post
31 Aug 2023
GitKraken tutorial for beginners
Who needs a GitKraken crash course? For those who want a top-tier Git GUI tool that can help accelerate software development, this GitKraken tutorial for beginners is for you. Continue Reading
-
Blog Post
29 Aug 2023
How to git push an existing project to GitHub
If you start development before you set up version control, you may need to push your development project to an existing GitHub repo. This Git and GitHub example shows you the fastest way to ... Continue Reading
-
Blog Post
29 Aug 2023
Sourcetree tutorial for beginners
Need to learn Sourcetree and Bitbucket? This complete Bitbucket and Sourcetree tutorial will help you quickly master these industry leading Git tools. Continue Reading
-
Blog Post
24 Aug 2023
How to install Jenkins on Windows
With the Jenkins installer it's incredibly easy to download and run the popular CI/CD tool. Follow these simple steps and you'll have the continuous integration server running on Windows in no time. Continue Reading
-
Blog Post
24 Aug 2023
GitHub Desktop Tutorial for beginners
Need to learn how to use GitHub Desktop? This quick and thorough GitHub Desktop tutorial for beginners will teach you all the fine points of source code management both locally and in the cloud. Continue Reading
-
Blog Post
23 Aug 2023
Git reset hard vs. soft: What's the difference?
Both hard and soft git reset commands manipulate the commit history. Where soft vs. hard git reset commands differ is by how they impact the index and the local filesystem. Continue Reading
-
Blog Post
22 Aug 2023
How to delete local and remote Git branches
There's no single Git command that will delete a remote and local Git branch. But these two commands will get the job done. Need to delete remote and local Git branches? Here's how to do it. Continue Reading
-
Blog Post
21 Aug 2023
HTTP request methods explained
While there are almost 40 registered HTTP request methods, most RESTful web developers only use five of them. Here are the most important HTTP methods and examples of how to use them. Continue Reading
-
Blog Post
21 Aug 2023
PUT vs POST: What's the difference?
What's the difference between PUT and POST methods? Here we compare POST versus PUT in terms of idempotence, URL usage, payloads and their use in RESTful APIs. Continue Reading
-
Blog Post
06 Aug 2023
Get started with Spring Boot 3 tutorial
Need to learn Spring Boot 3? Want to quickly build a Spring Boot app with RESTful web services? This tutorial will help you create your first Spring Boot application in just minutes. Continue Reading
-
Tip
19 Jul 2023
Scrum vs. SAFe: How to choose between top Agile frameworks
Which Agile framework is the best fit for your organization: Scrum vs. SAFe? Follow these guidelines and advice to determine which best fits your needs -- and it might be both. Continue Reading
-
Blog Post
17 Jul 2023
Create your first Python AWS Lambda function in minutes
Want to quickly create an AWS Lambda function in Python? This quick Python and AWS tutorial shows how to develop, test and deploy your first Python Lambda function in just a few minutes. Continue Reading
-
Definition
10 Jul 2023
Java Mission Control
Java Mission Control is a performance-analysis tool that renders sampled JVM metrics in easy-to-understand graphs, tables, histograms, lists and charts. Continue Reading
-
Blog Post
10 Jul 2023
Scrum's chicken and pigs parable
In a ham and eggs breakfast, the chicken is involved, but the pig's 100% committed. That's the problematic basis of Scrum's chicken and pigs parable. Continue Reading
-
Blog Post
06 Jul 2023
Please make 'please' a sudo alias on your Linux box
There's something hubristic and self-effacing about issuing "sudo" commands. That's why I always say "please" instead -- and you should, too. Here's how to set "please" as an alias for "sudo" on ... Continue Reading
-
Blog Post
03 Jul 2023
Create your first Java AWS Lambda function in minutes
If you haven't created a Java-based AWS Lambda function before, you'll be amazed at how easy it is. This quick AWS, Lambda and Java tutorial will quickly get you started in the world of serverless ... Continue Reading
-
Blog Post
30 Jun 2023
Leibniz in Java and the Commodore 64: An exercise in optimization
How writing code on a Commodore 64 for fun led to a real-world optimization. Continue Reading
-
Blog Post
20 Jun 2023
How to pass a Scrum certification exam with a 100% score
There are no shortcuts to passing the Scrum master certification exam, but there is one trick that will help confident test takers get closer to a perfect 100% score. Continue Reading
-
Blog Post
06 Jun 2023
How Java instance main methods and unnamed classes work
Say goodbye to the public static void main method in Java 21 with the unnamed classes and instance main methods preview features. Continue Reading
-
Blog Post
01 Jun 2023
How System.out in Java works
New developers are often confused by the line of System.out.println() code they write when first introduced to Java. Here's a quick explanation of what System.out.println() means. Continue Reading
-
Blog Post
31 May 2023
Java's print vs println method: What's the difference?
What's the difference between print and println methods in Java? Our examples show that it comes down to the fact that println adds a newline character to output, while Java's print method does not. Continue Reading
-
Blog Post
15 May 2023
Hibernate and JPA 3 CRUD example
Struggling to get your first JPA 3 application off the ground? Here's a quick Hibernate and JPA 3 CRUD example to help you get going with the latest version of the Java Persistence API. Continue Reading
-
Tip
11 May 2023
5 Scrum servant leader examples
The term 'servant leader' was removed from the 2020 Scrum Guide, but that doesn't mean it's not important. Here are five examples of a Scrum master as a servant leader. Continue Reading
-
Blog Post
10 May 2023
How long is a Sprint in Agile?
The length of an Agile sprint is a topic development teams must figure out on their own, but from the Scrum perspective, Agile sprints should never go longer than a month. Continue Reading
-
Tip
08 May 2023
Scrum vs. Waterfall: What's the difference?
Most organizations choose between Waterfall and Agile methodologies, which often means comparing Scrum vs. Waterfall. Here are the differences and some guidance on how to choose. Continue Reading
-
Blog Post
05 May 2023
2023 full-stack developer roadmap
What does it take to get a career as a full-stack developer? This 2023 full-stack developer roadmap shows you the skills you need to developer to build your full-stack developer portfolio. Continue Reading
-
Blog Post
04 May 2023
Are there too many meetings in Scrum?
Some people say there are too many meetings in Scrum. If that's true, which one of the Scrum meeting types would you remove? Planning, reviews, the retrospective or the daily Scrum? Continue Reading
-
Blog Post
03 May 2023
Git pull vs fetch: What's the difference?
Want to know the difference between git fetch and pull commands? This quick pull vs. fetch comparison explains how the two commands affect your working directory differently. Continue Reading
-
Blog Post
01 May 2023
The right MySQL persistence.xml example file for JPA 3 and Hibernate 6
A quick migration from JPA 2.x to 3.x can become bottlenecked if the persistence.xml file is misconfigured. Here's what a proper persistence.xml file for JPA 3, Hibernate 6 and a MySQL database ... Continue Reading
-
Blog Post
30 Apr 2023
2023 DevOps Roadmap
Want a lucrative career as a DevOps engineer? Follow this 2023 DevOps roadmap and master the key technologies that will put your skills in demand. Continue Reading
-
Blog Post
30 Apr 2023
Undo a git add
Want to unstage a file in Git? Use the restore command. Other options to have Git unstage a file from the index have unintended consequences you'd really rather avoid. Continue Reading
-
Blog Post
27 Apr 2023
2023 web development roadmap
Here's an easy-to-follow web developer roadmap that will guide you through the world of HTML, CSS and JavaScript based technologies. Continue Reading
-
Blog Post
25 Apr 2023
Hello World in Python vs Java
'Hello World' is a silly criterion to use when comparing programming languages. Yet here we are, comparing 'Hello World' in Java vs Python. We'll let you judge the winner. Continue Reading
-
Blog Post
21 Apr 2023
Top 10 Chrome extensions for web developers
Installation of the right browser plugins can make a programmer significantly more productive. Here are 10 productivity boosting-Chrome extensions for web developers to install. Continue Reading
-
Definition
14 Apr 2023
primitive (programming)
In computer programming, a primitive is one of a set of fundamental language elements that serve as the foundation for a programming language. Continue Reading
-
Blog Post
29 Mar 2023
Why is the Bootstrap grid system 12 columns wide?
Ever wonder why they created a 12-column Bootstrap grid system, and not 10 or 15? It's the same reason there's 60 seconds in a minute, or 360 degrees in a circle. Continue Reading
-
Blog Post
28 Mar 2023
There's a new Java build system named Bld
Want to write your software build logic entirely in Java? A new build tool called Bld does exactly that, and Geert Bevin and Erik Thauvin are behind it. Continue Reading
-
Definition
28 Mar 2023
object-relational mapping (ORM)
Object-relational mapping (ORM) is a way to align programming code with database structures. Continue Reading
-
Tip
24 Mar 2023
The 3 daily Scrum questions
The 2020 Scrum Guide removed all references to the three daily Scrum questions, but does that mean you shouldn't ask them anymore? Continue Reading
-
Blog Post
20 Mar 2023
How to use the Google Chrome color picker extension
Want to select a color from an image on a webpage? Or an HTML element? Here's how to use the Google Chrome color picker extension that comes packaged as part of the browser's built-in DevTools. Continue Reading
-
Blog Post
19 Mar 2023
Critical Java JVM options and parameters
The easiest way to optimize your Java runtime is to supply correct JVM options and parameters. In honor of the Java 21 release, we examine the 21 most important Java JVM options you can configure. Continue Reading
-
Blog Post
18 Mar 2023
Daily Scrum vs standup meetings: What's the difference?
Other than being an ableist term that discriminates against people who can't stand, there are many differences between a standup meeting and the daily Scrum. Here we look at the 10 most important ... Continue Reading
-
Tip
19 Jan 2023
Who should be the product owner in Scrum?
Who should be the Scrum product owner and how does an organization choose the right person for that job? It's not an easy decision, but it's a critical one for all Scrum projects. Continue Reading
-
Tip
09 Dec 2022
Scrum vs. Kanban: What's the difference?
When you compare Scrum vs. Kanban, you realize there are as many similarities as there are differences. Here we help you choose between these two Agile frameworks. Continue Reading
-
Tip
15 Sep 2022
Agile vs. Waterfall: What's the difference?
The contrasts between Agile and Waterfall are stark. Here we compare these two popular development methods, and show you the key differences between Waterfall versus Agile. Continue Reading
-
Blog Post
18 May 2022
Dockerfile vs docker-compose: What's the difference?
What's the difference between Dockerfile and docker-compose? These simple examples compare Dockerfile, the docker-compose.yaml file and important commands to build Docker images and run Docker ... Continue Reading
-
Blog Post
14 Feb 2022
Noon is not 12am. Midnight is not 12pm. Code appropriately.
The terms 12am and 12pm make no logical sense. Neither one is noon or midnight. Remove the 12am vernacular from your applications. Users will thank you. Continue Reading
-
Tutorial
01 Dec 2021
How to revert a Git commit: A simple example
The git revert command is commonly misunderstood. In this quick tutorial, we will show you exactly how the command works and how to perform a simple undo in your repo. Continue Reading
-
Quiz
08 Sep 2021
A monolithic vs. cloud-native migration quiz for developers
Are you prepared for a cloud-native migration? This quiz contrasts the microservice vs. monolithic approaches to software development and will help gauge your knowledge. Continue Reading
-
Answer
27 Jul 2021
Kubectl apply vs. create: What's the difference?
The Kubernetes command-line tool, kubectl lets you control your Kubernetes clusters. But two of its operations -- apply and create -- can often be confused. Continue Reading
-
Answer
26 Jul 2021
Vagrant vs. Docker: How these cloud-native tools differ
Both Docker and Vagrant are important parts of a cloud-native stack, but they have very different roles when it comes to supporting containers and VMs within the CI/CD process. Continue Reading