Tips
Tips
-
Understanding the 7 principles of functional programming
Java and C++ ushered in object-oriented programming, but now Python and JavaScript popularize functional programming. These seven principles of functional programming explain why. Continue Reading
-
Agile estimation: Predicting the unpredictable
Agile teams' overreliance on estimates detracts from the overall goal to deliver value to the customer. Avoid these agile estimation pitfalls in your software development efforts. Continue Reading
-
Know these top 5 Scrum antipatterns
Embrace sprints, set clear goals, engage with customers -- these behaviors and others will help your teams avoid common Scrum antipatterns. Continue Reading
-
Top 10 Jenkins alternatives
Tired of the overhead of hosting your own Jenkins installation and looking for some alternatives? Here are 10 of the best. Continue Reading
-
MySQL vs. PostgreSQL: Compare popular open source databases
This deep dive compares two popular open source database options, MySQL vs. PostgreSQL, across key categories including performance, compliance, security, scalability and more. Continue Reading
-
OKRs vs. KPIs: Driving bold outcomes and measuring steady performance
KPIs track outputs, and OKRs focus on outcomes or changes in user behavior. Here's how business can use them together to measure outcome-driven progress and success. Continue Reading
-
How to solve the pinning problem in Java virtual threads
Virtual threads in Java offer many benefits, but they're not a drop-in replacement for traditional threads. Understand and plan around their limitations, most notably pinning. Continue Reading
-
The interface segregation principle: A fun and simple guide
Want a fun way to learn the interface segregation principle of SOLID object-oriented design? Imagine a remote control that tries to do everything but just mucks it all up. Continue Reading
-
Simplifying native interoperability in Java with JEP 454
Finalized in Java 22, JEP 454 helps developers safely and efficiently call native functions and manage memory outside of Java. Here's a rundown of how it works. Continue Reading
-
What's wrong with Java? Nothing, but evaluate alternatives
Java's benefits don't always fit a given task, and a different language might be a better choice. Use these comparisons to choose the best code for your needs. Continue Reading
-
How to find climate software jobs in software development
A career in climate tech can appeal to those who seek to tackle complex issues and are concerned about the planet. Here's how to find a job as a developer in climate tech. Continue Reading
-
Tips for onboarding remote developers
More companies today hire developers who work remotely. Follow these steps for an efficient remote onboarding process for devs, from a tech on-ramp to cross-org team interaction. Continue Reading
-
Top benefits of the Zig programming language
Does the world really need another programming language? Yes, say developers behind Zig. Here are five of the top features Zig brings to the programming world. Continue Reading
-
How to use parallel streams in Java with virtual threads
Virtual threads in Java currently lack integration with the stream API, particularly for parallel streams. Here's how a JDK 22 preview feature addresses the problem. Continue Reading
-
The 3-level DBMS schema architecture
The three-level DBMS architecture makes database design more secure, extensible and accessible for client applications. Learn the basics of how it works, with examples. Continue Reading
-
5 principles of Agile project management
Through Agile project management, techniques such as self-management, self-organization and continuous delivery achieve benefits beyond the domain of software development. Continue Reading
-
How to navigate a job promotion outside your comfort zone
A work promotion can feel uncomfortable due to expectations and uncertainty, but that's also a sign of career and personal growth. Here's how to navigate your new promotion process. Continue Reading
-
Advanced Java pattern matching techniques, with examples
Dive deeper into Java pattern matching techniques with these examples that range from nested records to type inference, variables and generics. Continue Reading
-
4 distributed ledger technology risks and how to solve them
Ready to use distributed ledger technologies for smart contracts or other transactions? Know what risks to avoid and overcome to maximize these platforms for your organization. Continue Reading
-
Introduction to pattern matching in Java
Pattern matching in Java helps developers better describe data structures and avoid runtime errors, while making code more readable and easier to maintain. Here's how it works. Continue Reading
-
Pivoting your developer career into AI? Here's what to know
Want to pivot your software development career and focus on AI? Here's how to pick from several paths, hone specific skills and evaluate potential AI roles and organizations. Continue Reading
-
How the back-ends-for-front-ends pattern works
A back-ends-for-front-ends microservices pattern uses an API layer to preprocess data, handle calls and responses, and simplify development efforts. Here's how it all works. Continue Reading
-
Use sealed classes in Java to control your inheritance
Need to limit the number of possible subclasses in your codebase? Here comes Java's sealed classes to your rescue. Continue Reading
-
Know how and when to use blockchain vs. distributed ledgers
Blockchain and distributed ledgers are similar but not quite synonymous. Learn their differences and how they are used, including together, for transactions and data storage. Continue Reading
-
Consider these 6 factors to decide when to quit your job
Unsure if you're truly ready to quit your job? Consider these tips and questions to help you decide to move to a new role, organization or even career. Continue Reading
-
Speed up Python and NumPy by avoiding the conversion tax
Data and memory transfers in Python come with a hidden performance tax. Here's how to use NumPy for optimal performance by avoiding jumps across a hidden line of conversions. Continue Reading
-
5 code refactoring patterns, with examples
First-time finished code is rarely elegant or maintainable. Refactoring helps keep a growing codebase maintainable and extendable over time -- as long as you know where to stop. Continue Reading
-
2024 technology predictions around AI, Mojo and blockchain
Blockchain, AI, anti-competitive activity and the new programming language Mojo are sure to fill the headlines in 2024. Continue Reading
-
Debunking 5 blockchain myths and misconceptions
There's more to blockchain development than what you hear from the crypto community. Here, we debunk five common blockchain myths. Continue Reading
-
How the event sourcing design pattern works, with example
Learn how to control state changes as immutable events through the event sourcing model. Continue Reading
-
How to write a sprint goal in Scrum
The product of every sprint planning session is a sprint goal. Here, we look at its purpose along with how to write a sprint goal properly. Continue Reading
-
Use the Feynman Technique to learn complicated concepts
Learning new concepts is key to any work or life endeavor. Here's how the Feynman Technique helps maximize learning new concepts and improves communication skills. Continue Reading
-
The benefits of using compiled regex in Python and Java
Whether you're programming in Java or Python, compiled regex can significantly speed up your text manipulation routines. Continue Reading
-
Shorter code, fewer bugs: Python's syntax is its saving grace
Is shorter code too dense and hard to parse, or is it inherently more efficient and secure? Here's why Python's compact syntax tends toward less buggy code. Continue Reading
-
6 tips to navigate an employee performance review
Worried about your next employee performance review? Follow these six tips to get the most out of it. Continue Reading
-
A primer on Java 21 virtual threads with examples
Virtual threads let developers build applications that handle potentially millions of users and ensure consistent service delivery. Here's how Java 21 virtual threads work. Continue Reading
-
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
-
How to deal with a layoff: 5 actions to take right now
So you've been laid off -- now what? These tips can help professionals deal with the uncertainty of sudden unemployment, get back in the job market and maybe find a new career. Continue Reading
-
What does a SAFe Scrum master do differently?
What's the difference between a Scrum master and SAFe Scrum master/team coach? Not much, but you should understand their slightly distinct approaches in day-to-day practice. Continue Reading
-
9 tips to improve Python performance
Python performance gets a bad rap compared with languages such as Java. Use these tips to identify and fix problems in your Python code to tweak its performance. Continue Reading
-
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
-
The dangers of Python import and how enterprises can be safe
The Python import statement carries a security risk that developers and enterprises need to watch out for. Here's how it works and why there's no easy fix. Continue Reading
-
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
-
How to apply the open-closed principle in Java
How does the open-closed SOLID principle work in a Java program? Here we show you what this important principle means, and how to implement the open-closed principle in Java. Continue Reading
-
What developers should know about working for a startup
Think you want to be a developer working at a startup? There are reasons it's appealing, but know what you're getting into, from workloads and resources to compensation options. Continue Reading
-
Introduction to Solidity: Build an Ethereum smart contract
This introduction to Solidity tutorial walks you through a real-world example that flexes the power of this programming language: building a Solidity smart contract. Continue Reading
-
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
-
How to address Python performance problems
Python is a great language for nonprogrammers to do mathematical and scientific tasks, even if such optimization impacts performance. Here's why that's not a fair criticism. Continue Reading
-
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
-
Smart contracts, blockchain and decentralized computing
Industries such as manufacturing and finance are turning to decentralized computing technologies, in the form of smart contracts and blockchains, to solve complex problems. Continue Reading
-
How to avoid remote software engineer burnout
Software developer burnout is real. Here are some strategies programmers can use to avoid it. Continue Reading
-
JavaScript vs. TypeScript: What's the difference?
TypeScript and JavaScript are two complementary technologies that are driving both front-end and back-end development. Here are the similarities and differences between the two. Continue Reading
-
How to apply the single responsibility principle in Java
How does the single responsibility model work in a Java program? Here we show you what this SOLID principle means, and how to implement the single responsibility model in Java. Continue Reading
-
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
-
Why WebAssembly? Top 11 Wasm benefits
Latency and lag time plague web applications that run JavaScript in the browser. Here are 11 reasons why WebAssembly has the potential to completely change that. Continue Reading
-
Why Java in 2023?
Has there ever been a better time to be a Java programmer? From new Spring releases to active JUGs, the Java platform is experiencing a renaissance. Continue Reading
-
How developers can avoid remote work scams
Software developers can find good remote programming jobs, but some job offers are too good to be true. Follow these tips to spot remote job scams. Continue Reading
-
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
-
Tips and tricks for TypeScript programming
For those new to TypeScript or for Java developers transitioning into JavaScript, these three TypeScript tips and tricks modern day software developers will come in handy. Continue Reading
-
How developers can stay motivated when working remotely
Feeling like you've lost your edge in your remote work? Follow these tips to stay energized, sharpen your skills, and tighten relationships in your company and career. Continue Reading
-
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
-
The differences between Java and TypeScript devs must know
Do you know Java? Are you trying to learn TypeScript? Here are five differences between TypeScript and Java that will make the learning transition easier. Continue Reading
-
Product owner vs. product manager: What's the difference?
The job a product manager does for a company is quite different from the role of product owner on a Scrum team. Learn key differences between a product owner and product manager. Continue Reading
-
Abstract pattern recognition skills aid developers and musicians
What do good programmers and musicians have in common? The ability to recognize and apply abstract patterns helps both roles keep their work in harmony. Continue Reading
-
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
-
5 tips to make the transition from programmer to manager
Developers who want to shift gears from programmer to manager must embrace a different mindset and various skills. These five tips will guide your path. Continue Reading
-
8 tech jobs that don't require coding
Looking for an IT job that doesn't involve coding? These eight tech roles are important in any organization, with no programming required. Continue Reading
-
Agile versus Scrum: What's the difference?
What's the difference between Agile and Scrum? What are their similarities? Learn how to compare and contrast these two popular software development frameworks and methodologies. Continue Reading
-
Either log or rethrow Java exceptions, but never do both
When an exception occurs in your Java code, you can log it or you can rethrow it -- but don't do both. Here's why you must avoid that exception handling antipattern. Continue Reading
-
7 tips to choose the right Java library
Your application is only as secure and reliable as the external libraries you use. Here's a list of the top 7 things to consider when choosing a software library for your project. Continue Reading
-
Fix these 10 common examples of the RuntimeException in Java
Don't let the occurrence of a RuntimeException in Java bring your code to a standstill. Here are 10 examples of how to avoid runtime exceptions in Java. Continue Reading
-
Fix the 5 most common types of runtime errors in Java
The key to bug-free code is an awareness of the most common types of runtime errors in Java, along with the knowledge of how to avoid them. Continue Reading
-
Want to become a freelance developer? Weigh these 4 factors
Some people want independence even if it sacrifices the security of a salaried position. Consider these criteria to see if being a freelance developer is the right choice for you. Continue Reading
-
Why you must avoid ScrumBut at all costs
How do Scrum and ScrumBut compare? Darcy DeClute explains why ScrumBut is bad, and how you can avoid this Agile anti-pattern and stay true to Scrum's core principles. Continue Reading
-
Binary and hexadecimal numbers explained for developers
For developers who are intimidated by bit shifts and hex operation, here's a thorough explanation of how binary and hexadecimal number systems work. Continue Reading
-
Problems with Java modules still plague developers
The Java Platform Module System promised to fix the missteps of the past. Unfortunately, it has repeated the problems that plagued OSGi and JBoss Modules. Continue Reading
-
Iterator vs. ListIterator: Which interface should you choose?
When the need exists to manipulate an ordered collection, the Java Iterator runs out of steam. Learn how Java's ListIterator improves upon the more generic Iterator interface. Continue Reading
-
How to choose between REST vs. gRPC
Does your REST API and subsequent JSON or XML data create a bottleneck in your architecture? Perhaps it's time to consider gRPC instead of REST for your web services. Continue Reading
-
5 best Java 17 features that developers will love
The new Java 17 release contains plenty of new features that will intrigue developers. Here are five features that should push developers off the Java 11 LTS to JDK 17. Continue Reading
-
3 simple Java Hello World examples
Are you a developer who's new to Java? Here are three ways to write a Hello World program in Java on Eclipse and get started with the popular programming language. Continue Reading
-
Library vs. framework: How these software artifacts differ
Libraries are low-level components that deliver a specific function, such as establishing a network connection. A framework is a known programing environment, such as Spring Boot. Continue Reading
-
The Ben Franklin Effect and software developer career advice
Are you a new programmer in need of a quick and simple way to blend in with your team? Here's some career advice from none other than Benjamin Franklin that might help you do just that. Continue Reading
-
How to refactor the God object class antipattern
Loose coupling can inadvertently create a God object problem in an object-oriented software system. Here's how to get rid of the issue and simplify the design in five easy steps. Continue Reading
-
5 tips to reduce webpage weight and improve user experience
A slow landing page makes a bad first impression for any potential website visitor. Here are five tips to improve the page and increase page load speeds. Continue Reading
-
CSS performance optimization in 5 easy steps
Here are five CSS performance tips to help you avoid website performance problems. Continue Reading
-
Developers find cautious optimism for serverless platforms
Experts urge cautious optimism around serverless development. It has its benefits, but tools that don't work as expected and a developer learning curve can cause some problems. Continue Reading
-
How JPA and Hibernate simplify data persistence
JPA is the Java standard for data persistence, especially for relational systems. Here, we explore how Hibernate and JPA work together to make database processes easier. Continue Reading
-
A side-by-side comparison of MongoDB vs Cassandra databases
How do you choose one NoSQL database over another? Expert Christopher Tozzi explains the difference between MongoDB and Cassandra. Continue Reading
-
Spring creator Rod Johnson releases API for implementing DevOps
Find out about Rod Johnson's latest project, which promises to simplify the process of implementing DevOps and streamlining the workflow between development and operations. Continue Reading
-
What's the best image optimization for web and mobile apps?
When it comes to images and application development, the optimization opportunities are endless. Expert George Lawton outlines the choices and the challenges. Continue Reading
-
Fighting hidden threats with DevOps security best practices
Find out what experts had to say about using DevOps security principles to weave threat resistance into the fabric of the development process. Continue Reading
-
Improving plant production performance with IT in the agriculture industry
How is big data and IT helping the agriculture industry? By looking at information in new ways, technology is helping to improve plant production performance. Continue Reading
-
Is JSON and XML your REST performance bottleneck?
Learn how ASCII encoding formats like JSON and REST can adversely impact server application performance compared with emerging binary formats. Continue Reading
-
Five tips to improve an offshore team
Using an offshore team can save time and money, but if used ineffectively, they can cost more than they save. Here are five tips on how to use offshore development teams effectively. Continue Reading
-
Lasting impacts of software failure and poor application performance
Customers have a short memory and lots of alternatives, so organizations must ensure that poor performance and software failure doesn't leave a lasting impression on users. Continue Reading
-
Automated acceptance testing pitfalls to avoid
How can organizations get the most out of their software testing with the least amount of effort? Here are some best practices on how to sidestep these common automated acceptance testing traps. Continue Reading
-
The key to mobile UI development is planning
There is no such thing as over-planning when prepping for each stage of the mobile UI development. Jenner Lochridge discusses five areas to account for in advance. Continue Reading
-
Five tips for choosing a UI development framework
Choosing a UI development framework is one of the most difficult decisions a software architect must make. Here are five things to look for when picking a development framework. Continue Reading
-
Continuous DevOps documentation: It's a necessity
Too often, documentation takes a back seat when organizations struggle with new methodologies and development approaches, but there is a need for documentation in a DevOps world. Continue Reading
-
How Eclipse plans to harmonize Java DevOps for the cloud
Learn about Eclipse Che, the cloud-based version of the Eclipse IDE. Che will simplify the creation of Java DevOps environments on top of the OpenShift cloud platform. Continue Reading