Application development and design
As software demands become more prevalent and complex, application development and design continues to experience a wave of changes in terms of tooling and practices. Learn about the latest in this field, including breakdowns of both established and emerging languages, as well as the key practices required for successful development efforts.
Top Stories
-
Tip
29 Jun 2023
5 noteworthy challenges of automotive software development
Modern cars are loaded with technology, but creating in-vehicle applications isn't always a cakewalk. Here are five unique challenges developers face with automotive software. Continue Reading
-
Tip
22 Jun 2023
Breaking down the cornerstone components of OOP
Object-oriented programming changed the game for those working on complex software systems. But what are the key elements that define this prominent approach to development? Continue Reading
-
Tip
16 Jun 2023
Microservices vs. headless architecture: A brief breakdown
Microservices and headless architectures are both techniques capable of providing flexibility and modularity, but how do you make a wise choice between them? Continue Reading
-
Tip
12 Jun 2023
Top 7 smart contract platforms to consider in 2023
Platform speed, scalability, security and smart contract development support vary widely. Here's how to match features to your needs, plus the lowdown on the major players. Continue Reading
-
Tip
07 Jun 2023
How to create a smart contract using Ethereum
Solidity is a powerful language for programming and deploying smart contracts on the Ethereum network. Here's how to get started, with advice on choosing the best tools. Continue Reading
-
Tip
07 Jun 2023
9 programming languages for smart contract development
There are languages expressly for smart contract development, but you can also use general-purpose languages like C++ and Java. Here's how they differ, and advice on how to choose. Continue Reading
-
Tip
12 May 2023
Python interpreter vs. IDE: What network engineers should know
When using Python for network automation, network engineers often work with interpreters and integrated development environment tools to test modules and debug code. Continue Reading
-
Opinion
01 May 2023
How advances in GPT-4 could revolutionize app development
Although public attention has recently centered on ChatGPT, the underlying GPT-3 and GPT-4 models could be even more transformative, particularly for application developers. Continue Reading
-
Tip
21 Apr 2023
A quick look at the Carbon programming language
Carbon is an experimental programming language built to stand on the shoulders of C++ -- but with a new outlook on memory safety, threading and functional programming. Continue Reading
-
Tip
07 Apr 2023
The enduring link between Conway's Law and microservices
While Conway's Law is a decades-old concept, some would argue that the industry's rush to adopt microservices makes this take on development team structure more relevant than ever. Continue Reading
-
Tip
30 Mar 2023
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
-
Tip
30 Mar 2023
Ways to get by when Waterfall development reigns
Against all odds, the Waterfall methodology maintains a tight grip over countless numbers of software development teams. Fortunately, there are a few ways to make the most of it. Continue Reading
-
Tip
21 Mar 2023
The fundamentals of achieving high cohesion and low coupling
It's easy to say, 'high cohesion, low coupling,' but is it as easy to put into practice? We examine some of the basics behind cohesion, coupling and the right balance between them. Continue Reading
-
Tip
02 Feb 2023
The 10 most promising tools for Web 3.0 development
Web 3.0 doesn't exist yet, but there are many tools for developing apps for the next generation web and bridging the gap from today's Web 2.0 infrastructure. Continue Reading
-
Tip
17 Jan 2023
Rust vs. Go: A microservices-based language face-off
Rust and Go both offer language features geared toward microservices-based development, but their relative capabilities make them a better fit for some scenarios than others. Continue Reading
-
Tip
08 Dec 2022
A primer on core development team structure concepts
To establish the right development team size, managers must look at each member's responsibilities and communication paths, as well as know when to split teams. Continue Reading
-
Feature
26 Sep 2022
A breakdown of new features in Micronaut 3
Micronaut 3.0's updates to annotation changes bean management and injections may intrigue developers working on coding paths and error handling for microservices. Continue Reading
-
News
22 Sep 2022
Sisense adds trio of new embedded analytics capabilities
A new integration with Git, a multi-tenant environment and enhancements to the Extense Framework are designed to further the embedded BI capabilities of the vendor's platform. Continue Reading
-
Tip
20 Sep 2022
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
-
News
08 Sep 2022
5 reasons to prioritize application modernization
Application modernization should be at the top of an enterprise's to-do list for five reasons, including security concerns, staffing shortages and competitive differentiation. Continue Reading
-
Tip
22 Jul 2022
10 application performance metrics and how to measure them
You've deployed your application, now what? To keep your application performing well, you need to track various metrics. Take a look at these ten critical KPIs. Continue Reading
-
News
20 Jul 2022
Front-end build tool Vite.js speeds up development
JavaScript development server and bundler Vite.js brings multiple enhancements with the release of Vite 3.0. Continue Reading
-
Tip
18 Jul 2022
A quick glance at the history of C programming languages
Since C hit the scene in 1972, the language has continuously evolved to stay relevant in modern development. We examine C's history and why it's still relevant. Continue Reading
-
Tip
30 Jun 2022
A 7-point language comparison of Ballerina vs. Golang
This comparison takes a look at both Ballerina and Golang, including their support for high-level programming, libraries, built-in management features and community support. Continue Reading
-
Tip
27 Jun 2022
How viable is it to create microservices in Python?
Python offers microservices developers access to advanced scripting, embedded testing and plugin tooling. But is it a good fit for you? And what are the alternatives if it isn't? Continue Reading
-
Tip
10 Jun 2022
11 cloud programming languages developers need to know
How do you choose the cloud programming language that best suits your current and future needs? Explore 11 popular options and their use cases. Continue Reading
-
News
08 Jun 2022
OpenJS World 2022 highlights what's new in web standards
At OpenJS World 2022, a keynote panel discussed efforts focused on improving interoperability and evolving web standards, and commiserated on how some things will never change. Continue Reading
-
News
18 May 2022
Google Firebase speeds developer process with new features
The new Firebase additions may not excite developers, but they do add some much-needed functionality to the platform. Continue Reading
-
Tip
12 May 2022
Smoke testing vs. sanity testing explainer on key differences
While smoke and sanity testing are both techniques QA professionals use to quickly identify feature defects, they differ when it comes to scope, automation requirements and timing. Continue Reading
-
Tip
18 Apr 2022
The fundamentals of writing effective acceptance criteria
Acceptance criteria plays a key role in shaping an application from the user standpoint. We review some of the basic things to remember when it comes to acceptance criteria. Continue Reading
-
News
07 Apr 2022
Atlassian product expansion raises fresh integration questions
Atlassian added analytics and new Atlas and Compass apps to orchestrate work among distributed teams, but some customers still seek deeper integrations between its cloud tools. Continue Reading
-
News
23 Mar 2022
Nvidia unveils latest 3D sim tech for multiple industries
Nvidia has launched a cloud-based version of its Omniverse platform for 3D simulations. The company also unveiled an Omniverse computing system. Continue Reading
-
Tip
21 Mar 2022
The basics of working with declarative programming languages
While imperative programming is often a go-to, the declarative approach has proved useful in the face of demands for complex, feature-heavy business applications. Continue Reading
-
News
15 Mar 2022
Golang generics spark excitement, anxiety in watershed release
Golang generics support is a landmark event in the language's evolution that some say could expand enterprise usage, while others are nervous about potential complexity. Continue Reading
-
Tip
07 Mar 2022
Micro apps vs. microservices: What developers should know
On the surface, the contrast between micro apps and microservices simply seems a matter of front-end vs. back-end concerns. But this isn't the only difference worth knowing. Continue Reading
-
Tip
28 Feb 2022
Follow these 5 best practices for cloud-native app development
Cloud app developers can strategically create and maintain better applications if they know and follow best practices of cloud-native app development. Continue Reading
-
Tip
16 Feb 2022
An intro to cloud-native microservices and how to build them
While there are a variety of ways to develop cloud-native microservices, focus on strategies that enable as much agility, resiliency and development simplicity as possible. Continue Reading
-
Tip
10 Feb 2022
A brief breakdown of declarative vs. imperative programming
While imperative programming is both an established and approachable method of coding, the declarative model is gaining appeal as demands for complex, flexible features increase. Continue Reading
-
Tip
19 Jan 2022
WebStorm vs. Visual Studio, and how to choose the right IDE
WebStorm and Visual Studio represent two ends of a wide spectrum when it comes to the IDE platform market. However, their true differences go well beyond their pricing structures. Continue Reading
-
Tip
10 Jan 2022
Using the BFF pattern to keep UIs flexible and reliable
BFF is a simple design pattern that can help developers address UI-related challenges, such as problematic coupling, overfetching of data and inconsistent error handling. Continue Reading
-
Tip
11 Nov 2021
Programming in Ruby: A critical look at the pros and cons
While Ruby showcases an impressive spread of beneficial features, there are still specific shortcomings that may explain why its adoption numbers have been conspicuously erratic. Continue Reading
-
Tip
28 Oct 2021
PHP 8 features that prove it's for more than just web
Looking to keep up with the demand for increasingly sophisticated development capabilities, PHP 8 brings interesting new integrations that transcend the realm of web development. Continue Reading
-
Opinion
04 Oct 2021
Should software architect responsibilities include coding?
There are many variations to the role of the software architect in today's IT teams, and a lingering debate is over whether they should all be hands-on with code. Continue Reading
-
Tip
28 Sep 2021
8 fundamental microservices security best practices
Despite the benefits, microservices will introduce profound security issues. We review the biggest microservices security challenges and eight strategies used to combat them. Continue Reading
-
Tip
25 Aug 2021
The functional programming paradigm at enterprise scale
Many enterprise-level architects rely on an object-oriented approach, but there are good reasons and practical ways to introduce functional programming within large-scale systems. Continue Reading
-
Tip
19 Aug 2021
.NET vs. Node.js: What they are, and which to choose
The choice between using .NET and Node.js for application development shouldn't be a difficult one but requires a solid understanding of each approach's pros and cons. Continue Reading
-
Tip
04 Aug 2021
The 4 Golden Signals, and how to put them into practice
There's nothing easy about monitoring distributed systems, but the right metrics can help. Here's how to put the Golden Signals of software reliability to work. Continue Reading
-
Feature
22 Jul 2021
An intro to the 5 SOLID principles of object-oriented design
In this primer on SOLID, we'll examine the five principles it embodies, the practices they encourage and the reasons these concepts matter. Continue Reading
-
Feature
22 Jun 2021
To master software design patterns, perspective is everything
Elisabeth Robson and Eric Freeman, authors of 'Head First Design Patterns,' outline their quest to teach software design patterns and show developers the right way to learn them. Continue Reading
-
Tip
17 Jun 2021
Static vs. dynamic typing: The details and differences
What are the key differences between static typing and dynamic typing, and what role do their differences play in the decision to use one programming language over another? Continue Reading
-
Guest Post
20 May 2021
The role of DevOps practices in application design
Fancy architecture diagrams and aesthetically pleasing code are nice things to have. But they don't mean much without the support of DevOps-centric design practices. Continue Reading
-
Tip
06 May 2021
Frameworks, libraries and languages for machine learning
While some developers may find the complex algorithms and processes intimidating, these frameworks, libraries and languages for machine learning can help get you started. Continue Reading
-
News
29 Apr 2021
Atlassian Open DevOps beats 'good enough'
Atlassian's new Open DevOps strategy taps best-of-breed DevOps tools for integration into a single toolchain to ease the burden for software development teams. Continue Reading
-
Tip
13 Apr 2021
5 dead programming languages we should never forget
These five programming languages may fade into obscurity over the next decade, but the profound influence they've had on modern development should not be forgotten. Continue Reading
-
Tip
06 Apr 2021
Is life as a freelance software developer for you?
Succeeding as a freelance developer requires much more than waiting for clients to contact you. Explore how to boost your skill set and land freelance gigs. Continue Reading
-
Tip
31 Mar 2021
Micro apps: A simple way to add sophisticated features
When building a new web or mobile app seems like overkill, micro apps might be the most practical way for developers to add niche features and functionality. Continue Reading
-
Tip
29 Mar 2021
Diagrams.net vs. Lucidchart: A few things to consider
While UML diagramming is a relatively universal approach, not all visualization tools are made for the same crowd. Diagrams.net and Lucidchart offer a good example of this. Continue Reading
-
Tip
26 Mar 2021
The difference between front-end and back-end developers
While front-end and back-end application development are two parts of a greater whole, the specifics of each career present some stark differences between them. Continue Reading
-
Tip
19 Mar 2021
3 predictable application architect interview questions
Software architecture roles are awfully industry specific, but there are still baseline skills employers want to see. These are some of the questions they ask to find those skills. Continue Reading
-
Opinion
16 Mar 2021
Fight microservices complexity with low-code development
Software developers are in a constant battle with complexity. Microservices hold promise as ready-to-assemble app components, but low-code development might be a better approach. Continue Reading
-
Tip
11 Mar 2021
An application architect's chief roles and responsibilities
Today's application architect isn't just a high-caliber developer, but an experienced leader with both the technical and business chops to propel an organization's software strategy. Continue Reading
-
Tip
08 Mar 2021
Get to know 4 microservices versioning techniques
Are you struggling to apply updates consistently across distributed services? Here are four microservices versioning techniques that can help. Continue Reading
-
News
24 Feb 2021
Lightbend launches new Akka Cloud Platform on AWS
Lightbend's new Akka Cloud Platform seeks to bring a simpler approach to cloud-native development than options from hyperscalers and companies such as Pulumi and Serverless. Continue Reading
-
Tip
22 Feb 2021
App interface design principles all developers should know
The first step in choosing the right app interface design is to understand the options available to developers. Dive deeper into these popular design concepts and approaches. Continue Reading
-
News
18 Feb 2021
Google, Microsoft back Python and Rust programming languages
As Google and Microsoft join and strengthen forces with the foundations behind the Python and Rust programming languages, the companies will get to help shape their future. Continue Reading
-
Tip
12 Feb 2021
NetBeans vs. Eclipse: 5 key comparison points for these IDEs
When implementing IDEs into an application architecture, Eclipse and NetBeans are often top contenders. But is one of these IDEs really better than the other? Continue Reading
-
Tip
11 Feb 2021
4 reasons Dart is still a language worth learning
Despite a perception that it is dead, there are a few reasons Dart is still a language worth learning. We explore a few reasons why it may not be as obsolete as some think. Continue Reading
-
News
09 Feb 2021
Survey: Open source skills more valued than proprietary ones
In the hybrid cloud world, developers with open source skills are more likely to be hired by enterprises than developers skilled in proprietary technologies. Continue Reading
-
Feature
27 Jan 2021
5 tips for stronger development team management
Being a competent manager and leading a successful software development team isn't as easy as it looks. Explore the skills, tools and best practices that can strengthen your current workforce. Continue Reading
-
Tip
22 Jan 2021
The differences between SVN and Git that matter
Not sure how to pick between Git and SVN for your versioning needs? We break down the key differences between these tools, including their most potent benefits and drawbacks. Continue Reading
-
Feature
13 Jan 2021
Examining the low-code market's race for citizen developers
Low-code and no-code vendors are fighting viciously for the favor of citizen developers. Examine the reasons for this trend and the market moves that reveal these vendors' motives. Continue Reading
-
Tip
18 Dec 2020
The 4 rules of a microservices defense-in-depth strategy
Learn the four must-follow rules when introducing defense-in-depth to a distributed microservices architecture, especially when services traverse numerous networks and apps. Continue Reading
-
Tip
09 Dec 2020
Objective-C vs. Swift: The war for iOS development supremacy
While Objective-C still holds the crown, Swift is quickly mobilizing to rule iOS development. Let's examine and compare the most compelling features of each language. Continue Reading
-
News
25 Nov 2020
New Agile 2 development aims to plug gaps, complement DevOps
The new Agile 2 initiative aims to address problems with the original Agile Manifesto and give greater voice to developers who are disenfranchised in existing Agile environments. Continue Reading
-
Tip
19 Nov 2020
Navigating the evolving BPA tools market
The BPA market tool landscape is still maturing, but organizations should prepare themselves to adopt it. Review the basics of BPA and learn how to start building your automation strategy. Continue Reading
-
Tip
12 Nov 2020
4 mobile app security threats all developers must face
Mobile apps carry their own set of code-based vulnerabilities and entry points, meaning developers need to step up their secure development, coding and deployment practices. Continue Reading
-
Tip
10 Nov 2020
9 tried-and-true open source frameworks for development
No matter which type of application you are developing or what your priorities are, there is likely an open source framework that caters to your needs. Continue Reading
-
Feature
05 Nov 2020
How to create an effective software architecture roadmap
For large-scale initiatives that span the enterprise, a well-planned software architecture roadmap allows development teams to navigate projects safely and efficiently. Continue Reading
-
Tip
30 Oct 2020
Django vs. Node.js: Pick the right web development framework
Understanding the differences between Django and Node.js comes down to understanding their data capabilities and the programming languages that make up each one's history. Continue Reading
-
Tip
22 Oct 2020
The non-tech skills of software development project managers
Teams are key to the success of any enterprise software project, but development teams don't run themselves. Managers need the right skills to keep their employees on track. Continue Reading
-
Tip
19 Oct 2020
How to start managing software development teams like a pro
Team performance is vital to a software project's success. Avoid these common management challenges and learn about the key metrics that help monitor your team's effectiveness. Continue Reading
-
Tip
14 Sep 2020
MVC vs. MVVM: 2 architecture patterns for modularity
Both the MVC and MVVM design patterns separate front-end and back-end application components, but each one has unique methods of interface manipulation and abstraction. Continue Reading
-
News
03 Sep 2020
Mendix looks to change the low-code landscape
At Mendix World, low-code app dev platform provider Mendix laid out plans to build up its ecosystem of third-party low-code tools in hopes of broadening its appeal to developers. Continue Reading
-
News
02 Sep 2020
Microsoft, VMware make Azure Spring Cloud GA
Azure Spring Cloud has reached general availability as a service that enables Spring Boot developers to build and run Java apps on Microsoft's Azure cloud platform. Continue Reading
-
Feature
25 Aug 2020
The top software developer skills, tools and certifications
Now tasked with managing complex enterprise software systems, the depth of skills and breadth of knowledge needed by developers has never been more profound. Continue Reading
-
Tip
12 Aug 2020
A developer guide to software localization
Software has become as multilingual and multicultural as the world itself. Localizing your code can keep your company from a potentially disastrous cultural blunder. Continue Reading
-
Tip
10 Aug 2020
Explore 10 popular open source development tools
Whether you're writing, managing, building or deploying source code, there is an open source development tool to help do the job. Check out these quick tool intros to get you started. Continue Reading
-
Tip
06 Aug 2020
10 of the best programming languages to learn in 2020
Different jobs call for different programming languages, and the wrong choice could cause your project to fail. Add these tools to your must-learn list so you are prepared for any assignment. Continue Reading
-
News
03 Aug 2020
Deloitte, Unqork team up to bring no-code to the enterprise
Deloitte has partnered with no-code development platform provider Unqork to help enterprise customers that are undergoing digital transformations and app modernizations. Continue Reading
-
Tip
21 Jul 2020
A comparison of 6 top programming languages
Choosing the right programming language can be tough. We place six popular languages head to head: Python vs. Ruby, Kotlin vs. Swift and Erlang vs. Elixir. Continue Reading
-
Feature
13 Jul 2020
If software architects' soft skills fail, so does the business
Mark Richards and Neal Ford, authors of 'Fundamentals of Software Architecture,' share real-life examples of why architects must communicate well, and explain how to do it. Continue Reading
-
Feature
30 Jun 2020
Key strategies to help migrate to microservices
Microservices adoption is no easy feat. In addition to the technical process of transitioning from a monolith, enterprises must also look at team structure and common migration mistakes. Continue Reading
-
Tip
29 Jun 2020
Why COBOL modernization matters, and how devs can react
With COBOL expertise in high demand and low supply, it may be time for devs to think about how much they really know about this language. We explore why COBOL skills still matter. Continue Reading
-
Tip
29 Jun 2020
What is the strangler pattern and how does it work?
The strangler pattern allows software teams to retire legacy systems incrementally and avoid the pitfalls of major rewrites. We examine this pattern and detail the steps involved. Continue Reading
-
News
26 Jun 2020
Amazon uses spreadsheet interface for Honeycode no-code tool
Amazon Web Services has delivered a new no-code tool called Honeycode. It is a fully managed service with a spreadsheet user interface for non-programmers to create apps. Continue Reading
-
Tip
22 Jun 2020
4 best practices for creating architecture decision records
An ADR is only as good as the record quality. Follow these best practices to establish a dependable ADR creation and maintenance process. Continue Reading
-
Feature
17 Jun 2020
The guide to landing an enterprise architect job
Interested in becoming an enterprise architect? This guide reviews the essential responsibilities of architects and how you can master the application process. Continue Reading
-
Tip
02 Jun 2020
How to start using a BDD framework
Why bother with behavior-driven development? Learn how this Agile-focused development framework can help bolster application quality, and explore tooling that can help. Continue Reading
-
News
28 May 2020
DockerCon 2020 showcases tighter alliance with Microsoft
Docker has introduced an integration with Azure Container Instances that developers can use to run Docker commands in ACI and switch from desktop development to the cloud. Continue Reading
-
Tip
26 May 2020
Refactor vs. rewrite: Deciding what to do with problem software
At some point, all developers must decide whether to refactor code or rewrite it. Base this choice on factors such as architectural soundness, time, money and goals. Continue Reading
-
Tip
15 May 2020
A review of top software architecture visualization tools
Developers need access to up-to-date software diagrams and documentation. Here are seven tools, from Visio to Mermaid, that provide visual models of code and design patterns. Continue Reading
-
Feature
13 May 2020
2020 conferences for software developers and architects
Fortunately, you can't lose your badge at a virtual conference. Check out our list of both online and in-person conferences, including DockerCon, API World and Microsoft Build. Continue Reading