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
20 Dec 2024
Exploring cell-based architecture vs. microservices
Cell-based architecture takes fundamental concepts related to microservices and applies them across the entire software environment to make more fault-tolerant, scalable systems. Continue Reading
By- Matt Heusser, Excelon Development
-
Tip
19 Dec 2024
A JavaScript functional programming basic tutorial
JavaScript's versatility makes it useful for webpages and web servers, but also functional programming. This tutorial shows how to implement JavaScript functional programming. Continue Reading
By- Bob Reselman, CogArtTech
-
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
By- Matt Heusser, Excelon Development
-
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
By -
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
By- Matt Heusser, Excelon Development
-
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
By- Sara Grier, Assistant Site Editor
-
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
By- Twain Taylor, Twain Taylor Consulting
-
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
By- Darren Broemmer, Developer Evangelist at DevGraph
-
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
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
By -
Definition
01 Apr 2021
application service provider (ASP)
An application service provider (ASP) is a company that offers individuals or enterprises access to applications and related services over the internet. 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
By- Matt Heusser, Excelon Development
-
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
By -
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
By- Twain Taylor, Twain Taylor Consulting
-
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
By- Stephen J. Bigelow, Senior Technology Editor
-
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
By- Matt Heusser, Excelon Development
-
Definition
15 Mar 2021
mobile application development
Mobile application development is the set of processes and procedures involved in writing software for small, wireless computing devices. Continue Reading
By- Matthew David
- Amy Novotny, Senior Managing Editor
- James Denman
-
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
By- Stephen J. Bigelow, Senior Technology Editor
-
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
By -
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
By -
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
By -
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
By- Sara Grier, Assistant Site Editor
-
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
By- Priyank Gupta, Sahaj Software
-
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
By- Kathleen Casey, Site Editor
-
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
By- Tom Nolle, Andover Intel
-
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
By -
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
By -
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
By -
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
By- Fred Churchville, TechTarget
-
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
By -
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
By- Stephen J. Bigelow, Senior Technology Editor
-
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
By- Stephen J. Bigelow, Senior Technology Editor
-
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
By- Tom Nolle, Andover Intel
-
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
By- Stephen J. Bigelow, Senior Technology Editor
-
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
By- Tom Nolle, Andover Intel
-
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
By -
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
By -
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
By- Kathleen Casey, Site Editor
-
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
By- Fred Churchville, TechTarget
- O'Reilly Media
-
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
By- Kathleen Casey, Site Editor
-
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
By- Matt Heusser, Excelon Development
-
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
By- Matt Heusser, Excelon Development
-
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
By- Twain Taylor, Twain Taylor Consulting
-
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
By- Stephen J. Bigelow, Senior Technology Editor
-
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
By- Matt Heusser, Excelon Development
-
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
By- Fred Churchville, TechTarget
-
Tip
30 Apr 2020
Kotlin vs. Swift: An open source programming language face-off
Take a look into what Kotlin and Swift have to offer in terms of cross-platform capabilities, library support and ease of use. Also, review their major strengths and limitations. Continue Reading
By -
Photo Story
29 Apr 2020
5 best practices for remote development teams
More developers than ever now work from home and must quickly adapt to remote life. Our experts explain how to proactively support the isolated members of your development team. Continue Reading
By- Kathleen Casey, Site Editor
-
Tip
21 Apr 2020
Use tokens for microservices authentication and authorization
Independent and interoperable microservices require a permissions rethink, or you'll drive users crazy. Examine how tokens come into play for authentication and authorization. Continue Reading
-
Tip
30 Mar 2020
5 key software testability characteristics
How do you design the software components for comprehensive testing? Start with these fundamentals of software testability -- from mocks and stubs to infrastructure-as-code. Continue Reading
By- Matt Heusser, Excelon Development
-
Feature
23 Mar 2020
14 top mobile app KPIs that advance development
No matter its purpose, a mobile application must meet expectations from users and corporate stakeholders. Here are 14 mobile app KPIs that you need to know. Continue Reading
By- Meredith Courtemanche, Director of Editorial Training
-
Tip
23 Mar 2020
What is the difference between Python and Ruby?
In this article, we explore the genesis of these two programming languages, notable characteristics and differences, and where each language might be headed. Continue Reading
By -
Tip
18 Mar 2020
A concurrent programming faceoff: Erlang vs. Elixir
Do you want the strong data integrity of Erlang, or the flexibility of Elixir? We explore the pros and cons of each in this head-to-head language matchup. Continue Reading
By -
Tip
03 Mar 2020
Consider these key microservices caching strategies
Data caching is a key part of ensuring microservices have easy access to the data they need. We review a few key caching strategies. Continue Reading
-
Tip
19 Feb 2020
5 big microservices pitfalls to avoid during migration
Too many development teams make these failure-inducing mistakes during a switch to microservices. Learn where things go wrong, and the best ways to avoid problems. Continue Reading
By- Twain Taylor, Twain Taylor Consulting
-
Tip
07 Feb 2020
Rethinking change control in software engineering
The traditional method of application change control won't fly in a modern, DevOps environment. Here's how we can rethink the process in a time where rapid app development rules. Continue Reading
By- Matt Heusser, Excelon Development
-
Tip
03 Feb 2020
A few fundamental microservices team structure strategies
A microservices architecture can be quite a culture shock to unprepared enterprises. Here's how you can prepare your team to make microservices part of development processes. Continue Reading
-
Tip
28 Jan 2020
The fundamental benefits of programming in Rust
Why does Rust continue to rise in popularity? We examine the features of this composable, cross-platform language that make it a valid competitor to C-based coding. Continue Reading
By -
Feature
27 Jan 2020
The 3 fundamentals of hybrid cloud architecture management
When an enterprise chooses hybrid cloud, it needs to ensure the application harmonizes between the two environments. Review these three tips on architecture, integration and APIs. Continue Reading
By- Kathleen Casey, Site Editor
-
Tip
17 Jan 2020
Advantages of monolithic architecture that prove it isn't dead
Don't rush to break up a monolith too quickly without considering what you might lose in the process. We examine why a monolithic architecture is sometimes the smarter choice. Continue Reading
-
News
09 Jan 2020
GraphQL vs. REST choice steers microservices development
GraphQL vs. REST: That is the question as teams tackle microservices architecture design, and at Pantheon, the choice came with both business boons and technical debt. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Tip
02 Jan 2020
How the .NET Core platform advances cloud-based app deployment
The capabilities of .NET Core keep developers interested. We break down the reasons why that's the case. Continue Reading
By -
Photo Story
31 Dec 2019
5 predictions for 2020 software architecture trends
The past decade brought big changes to app development and management. Now, our contributors predict what the biggest software architecture trends of 2020 will be. Continue Reading
By- Fred Churchville, TechTarget
-
Tip
09 Dec 2019
The benefits of Python are plenty, but it's not for everyone
Python boasts plenty of features that make it a go-to object-oriented language. But is it always the right choice? We take a look at what you should know about coding with Python. Continue Reading
By -
Feature
11 Nov 2019
6 quick facts about a Java microservices architecture
Building microservices in Java may not be as simple as it seems. Here are six quick facts and tips that will help you with Java-based microservices development. Continue Reading
By- Josh Kolarac, Assistant Site Editor
-
Tip
22 Oct 2019
Scala: Lightweight functional programming for Java
Scala provides a lightweight code option for Java development, but there could be a steep learning curve. Learn a little about Scala and if it's worth adopting. Continue Reading
By -
Tip
21 Oct 2019
3 ways to implement a functional programming architecture
Functional programming, which came about as a highly theoretical, mathematical way to build software, has a place in APIs and other components of applications. Continue Reading
By- Matt Heusser, Excelon Development
-
Guide
17 Oct 2019
The vital guide to modern programming languages and their uses
Get to know programming languages that match modern development styles and architectures like mobile dev, serverless computing and microservices. Continue Reading
By- Josh Kolarac, Assistant Site Editor
-
Tip
16 Oct 2019
The benefits -- and tradeoffs -- of a mobile SDK
A mobile SDK can do wonders for mobile app development. But how does it work, and what are the pitfalls to watch out for when you take this approach? Continue Reading
By- Twain Taylor, Twain Taylor Consulting
-
Feature
27 Sep 2019
Tips to use for microservices in mobile app development
With mobile apps dominating enterprise customer interactions, developers must dig into microservices architectures, brush up on programming skills and decipher business requirements. Continue Reading
By- Meredith Courtemanche, Director of Editorial Training
-
Tip
24 Sep 2019
Elixir functional programming enables concurrency, fault tolerance
Developers can combine features of Erlang functional programming with a newer language, Elixir, which promises simplicity and fault-tolerant operations for distributed applications. Continue Reading
By -
Definition
22 Aug 2019
What is React Native?
React Native is an open source JavaScript framework for mobile application development. The framework is based on Facebook’s user interface (UI) JavaScript library, React, and can be used to design apps for the web, iOS and Android. Continue Reading
By -
Definition
19 Aug 2019
What is Jenkins X?
Jenkins X is an open source system that provides continuous integration (CI), continuous delivery (CD) and automated testing tools designed for cloud-native applications in a Kubernetes environment. Continue Reading
-
Definition
19 Aug 2019
What is the OpenAPI Specification?
The OpenAPI (OAI) Specification defines a standard, programming language-agnostic interface description for RESTful APIs. Continue Reading
-
Definition
16 Aug 2019
What is Ballerina language?
Ballerina language is an open-source, cloud-native programming language designed to ease the burden of integration development associated with enterprise applications. Continue Reading
-
Definition
16 Aug 2019
What is AutoRABIT?
AutoRABIT is an end-to-end release management suite specifically aimed at streamlining the development and release of Salesforce.com applications by automating their continuous integration (CI) and continuous delivery (CD) processes. Continue Reading
-
Tip
09 Aug 2019
API workflow design patterns for microservices scenarios
When it comes to workflow systems for microservices, there's no one-size-fits-all approach. Learn about the API workflow pattern options that can set you straight. Continue Reading
By- Tom Nolle, Andover Intel
-
Definition
06 Aug 2019
Tyk
Tyk is an open source application program interface (API) gateway management tool. Continue Reading
-
Definition
02 Aug 2019
What is a reactive systems architecture?
A computer systems paradigm that takes advantage of the responsiveness, flexibility and resiliency of reactive programming, so that various components can take continue to function and even thrive if any component is compromised. Continue Reading
-
Tip
23 Jul 2019
4 practical methods to increase service resilience
Resiliency refers to the ability of your architecture to quickly predict, detect and mitigate potential performance failures. Here are four ways to fortify your software. Continue Reading
By- Matt Heusser, Excelon Development
-
Tip
19 Jul 2019
3 distributed tracing tools perfect for microservices
Distributed tracing is a critical part of the microservices monitoring processes. Here are three tools that can help provide the view you need to identify strangling bottlenecks. Continue Reading
By -
Definition
10 Jul 2019
What is two-phase commit (2PC)?
Two-phase commit (2PC) is a standardized protocol that ensures atomicity, consistency, isolation and durability (ACID) of a transaction; it is an atomic commitment protocol for distributed systems. Continue Reading
-
Tip
28 Jun 2019
3 serverless development strategies for stateful applications
Serverless developers can connect stateless functions to state information in several ways, without introducing debilitating latency to the application design. Continue Reading
By- Twain Taylor, Twain Taylor Consulting
-
Tip
24 Jun 2019
Simplify Java-based development with the Kotlin language
What makes Kotlin popular among Java professionals? Explore the attributes of this functional programming language that's equipped for both traditional Java and Android developers. Continue Reading
By -
Tip
12 Jun 2019
Get realistic about your multi-cloud strategy aspirations
Multi-cloud is attractive to software teams that want to expand their development toolboxes, but be careful about the complexity it can add to your overall development lifecycle. Continue Reading
By- Chris Moyer, ACI Information Group
-
Tip
07 Jun 2019
Explore Clojure programming language and its multithread style
Discover the fundamentals of the Clojure programming language and its Java-specific uses and tool pairings to see if this multithread programming approach is a fit for your team. Continue Reading
By -
Tip
31 May 2019
4 tips to tackle common microservices testing problems
Flaky tests put code quality -- and development team morale -- at risk. Proliferating microservices stress out test environments, so use these techniques to keep everything running. Continue Reading
By- Matt Heusser, Excelon Development
-
Definition
30 May 2019
What is a class diagram?
A class diagram is an illustration of the relationships and source code dependencies among classes in the Unified Modeling Language (UML). Continue Reading
-
Tip
16 May 2019
How to create a stateful application with service brokers, DTP
Complex state control issues come with the territory of stateful application design. Learn useful concepts that manipulate state and enable a stateful app to work as envisioned. Continue Reading
By- Tom Nolle, Andover Intel
-
Feature
09 May 2019
Exploring the versatility of Groovy programming
Java developers should peruse Groovy's programming features, such as dynamic typing with static type checks, DSL builders and more. Continue Reading
By