Software design and development
Software design and development encompasses an array of processes and methodologies. Developers have a lot to manage and will need guidance on how to handle different tasks and projects. Brush up on everything from app-dev approaches such as low code, test- and model-driven development, code refactoring and management practices, UI and UX design, and developer tools.
Top Stories
-
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
13 Dec 2024
How to choose the best Markdown editor for your use case
A dedicated authoring tool helps writers take full advantage of Markdown. Find one that supports your development projects, documentation tasks or even daily writing objectives. Continue Reading
By- Damon Garn, Cogspinner Coaction
-
Definition
19 May 2023
Google Firebase
Google Firebase is a set of cloud-based development tools that helps mobile app developers build, deploy and scale their apps. Continue Reading
-
Definition
16 May 2023
Unicode
Unicode is a universal character encoding standard that is maintained by the Unicode Consortium, a standards organization founded in 1991 for the internationalization of software and services. Continue Reading
-
News
10 May 2023
Google teases generative AI expansion within its own cloud
Google's new generative AI features, including a coding assistant, were tied closely to GCP in preview demos this week, while industry experts said its LLM still lags rivals. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Feature
10 May 2023
Is ChatGPT better for coding than low-code platforms?
ChatGPT can write code, but it can't integrate code or produce design ideas. Also, it poses security and licensing risks. For now, AI enhances but doesn't replace low-code platforms. Continue Reading
By -
Opinion
09 May 2023
Addressing the confusion around shift-left cloud security
To clarify how shift-left security should work in terms of cloud-based application development, Enterprise Strategy Group analyst Melinda Marks dives deep into the process. Continue Reading
By- Melinda Marks, Practice Director
-
Enterprise Strategy Group
We provide market insights, research and advisory, and technical validations for tech buyers.
-
Definition
09 May 2023
mutual exclusion (mutex)
In computer programming, a mutual exclusion (mutex) is a program object that prevents multiple threads from accessing the same shared resource simultaneously. Continue Reading
-
Definition
05 May 2023
hamburger icon (slide drawer navigation)
A hamburger icon is a navigational symbol in user interface (UI) design. Continue Reading
By -
Definition
27 Apr 2023
value stream mapping
Value stream mapping is a lean manufacturing tool that visualizes every repeatable step required to deliver a product or service to the customer. Continue Reading
By- Nick Barney, Technology Writer
- Brenda Cole
-
Feature
26 Apr 2023
The promises and risks of AI in software development
Incorporating AI into software development could be transformative, but it raises ethical and practical concerns. What does AI-generated code mean for the tech sector's future? Continue Reading
By- Lev Craig, Site Editor
-
Definition
24 Apr 2023
encapsulation (object-orientated programming)
In object-oriented programming (OOP), encapsulation is the practice of bundling related data into a structured unit, along with the methods used to work with that data. 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
By- Priyank Gupta, Sahaj Software
-
News
19 Apr 2023
Server-side Wasm boosts K8s bonds, devx ahead of key update
Early adopters await a WASI update this year before server-side Wasm can be ready for wider production use. For now, PaaS vendors have begun to bridge some of the gaps. Continue Reading
By- Beth Pariseau, Senior News Writer
-
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
-
Definition
14 Apr 2023
SOAP fault
A SOAP fault is an error in a Simple Object Access Protocol communication resulting from an incorrect message format, header-processing problems, incompatibility between applications or other issues. Continue Reading
-
Definition
11 Apr 2023
mobile UI (mobile user interface)
A mobile UI (mobile user interface) is the graphical and usually touch-sensitive display on a mobile device, such as a smartphone or tablet, that allows the user to interact with the device's apps, features, content and functions. Continue Reading
-
Definition
06 Apr 2023
PHP (Hypertext Preprocessor)
PHP (Hypertext Processor) is a general-purpose scripting language and interpreter that is freely available and widely used for web development. Continue Reading
-
Definition
05 Apr 2023
object code
Source code and object code refer to the "before" and "after" versions of a computer program that is compiled (see compiler) before it is ready to run in a computer. Continue Reading
-
Definition
05 Apr 2023
HTML5 mobile app
An HTML5 mobile app is a web application developed with version 5 of HTML, a web content standard designed for handheld devices like smartphones and tablets. Continue Reading
By -
Definition
05 Apr 2023
Total Quality Management (TQM)
Total Quality Management (TQM) is a management framework based on the belief that an organization can build long-term success by having all its members -- from low-level workers to its highest-ranking executives -- focus on improving quality and, thus, delivering customer satisfaction. Continue Reading
By- Alexander S. Gillis, Technical Writer and Editor
- Mary K. Pratt
-
Definition
04 Apr 2023
HTML5
HTML5 is commonly thought to be the fifth version, or release, of the Hypertext Markup Language (HTML), a standardized descriptive language that specifies how to structure webpages. Continue Reading
-
Tip
31 Mar 2023
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
By- Cameron McKenzie, TechTarget
-
News
30 Mar 2023
Azure Pipelines vulnerability spotlights supply chain threats
Legit Security researchers discovered a remote code execution flaw within Microsoft's Azure DevOps platform that could give threat actors complete control of development pipelines. Continue Reading
By- Beth Pariseau, Senior News Writer
- Rob Wright, Senior News Director
-
Definition
30 Mar 2023
structured programming (modular programming)
Structured programming, or modular programming, is a programming paradigm that facilitates the creation of programs with readable code and reusable components. Continue Reading
By- Tom Nolle, Andover Intel
-
Tutorial
27 Mar 2023
Simplify code with for_each and dynamic blocks in Terraform
In this tutorial, get hands-on practice using Terraform features like dynamic blocks and the for_each attribute to write cleaner, more reusable code for cloud deployments. Continue Reading
By- Matt Grasberger, Red Guava
-
News
22 Mar 2023
Java 20 Project Loom updates set stage for Java LTS
Java 20 reincubates two Project Loom scalability features, making them prime candidates to become standard in September's Java LTS. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Tip
21 Mar 2023
Code comment best practices every developer should know
Source code can benefit from well-written code comments. If teams implement proper writing strategies, code comments can be a great tool to explain code intent. Continue Reading
By- Matt Grasberger, Red Guava
-
News
20 Mar 2023
Docker Free Team concerns linger after mea culpa
Docker apologized for a 'terrible job' sharing its plan to deprecate a Free Team subscription, but some observers remain worried about security implications from the transition. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Definition
14 Mar 2023
software engineering
Software engineering is the process of developing, testing and deploying computer applications to solve real-world problems by adhering to a set of engineering principles and best practices. Continue Reading
By- Kinza Yasar, Technical Writer
-
News
13 Mar 2023
GitHub SBOM updates build automation foundation
A new CLI extension and other features due to ship this month lay the groundwork to help developers make better use of software supply chain data and mitigate vulnerabilities. Continue Reading
By- Beth Pariseau, Senior News Writer
-
News
09 Mar 2023
GitHub 2FA plan adds SMS, account lockout safeguards
GitHub has added SMS support and fresh account lockout prevention features to its phased rollout plans as it prepares to implement a 2FA requirement for accounts beginning Monday. Continue Reading
By- Beth Pariseau, Senior News Writer
-
News
02 Mar 2023
ChatGPT API sets stage for new wave of enterprise apps
The new API is faster and cheaper than the previous ChatGPT interface, and users can opt out of submitting their data to it, opening new doors for enterprise developers. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Tip
02 Mar 2023
6 alternatives to Heroku's defunct free service tiers
Though the end of Heroku's free-tier services has left many developers and software teams in the cold, a flock of cloud platform providers seem determined to fill the void. Continue Reading
By- Stephen J. Bigelow, Senior Technology Editor
-
Definition
28 Feb 2023
native code
Native code is binary data compiled to run on a processor, such as an Intel x86-class processor. Continue Reading
-
Definition
28 Feb 2023
class library (in object-oriented programming)
In object-oriented programming, a class library is a collection of classes and other reusable software components, such as interfaces and value types. Continue Reading
-
News
22 Feb 2023
AWS, Hugging Face and the growing generative AI competition
The tech giant and LLM vendor team up as rivalry intensifies between Microsoft and Google in the generative AI war. The partnership is Amazon's response to the competition. Continue Reading
By- Esther Shittu, News Writer
-
Definition
22 Feb 2023
method (in object-oriented programming)
In object-oriented programming (OOP), a method is a programmed procedure that is defined as part of a class and is available to any object instantiated from that class. Continue Reading
-
News
15 Feb 2023
AI might fix GitHub code search developer pain points
GitHub code search helps developers query complex codebases. But the tool could benefit from more tailored results and better support for natural language queries. Continue Reading
By- Stephanie Glen, News Writer
-
News
13 Feb 2023
Warranty company devs get serverless computing boost
A company bogged down in AWS CDK code busted serverless development bottlenecks with DevZero, which gives developers their own production-like environment. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
09 Feb 2023
KLOC (thousands of lines of code)
KLOC (thousands of lines of code) is a traditional measure of how large a computer program is or how long or how many people it will take to write it. Continue Reading
-
News
09 Feb 2023
Atlassian Jira updates aim to democratize product discovery
Atlassian Jira's new tools help to organize projects, provide better visibility, and align the goals of software delivery, operations and product teams. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
07 Feb 2023
infinite loop (endless loop)
An infinite loop -- sometimes called an endless loop -- is a piece of code that lacks a functional exit so that it repeats indefinitely. Continue Reading
By- Ben Lutkevich, Site Editor
-
Definition
06 Feb 2023
codebase (code base)
A codebase, or code base, is the complete body of source code for a software program, component or system. It includes all the source files needed to compile the software into machine code, including configuration files. 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
-
News
02 Feb 2023
Jellyfish value stream management tool busts bottlenecks
Jellyfish adds value stream data to its productivity tracking tool for engineering teams that want to address inefficiencies in software development. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
31 Jan 2023
fail fast
Fail fast is a philosophy that values extensive testing and incremental development to determine whether an idea has value. Continue Reading
By- Ben Lutkevich, Site Editor
-
News
27 Jan 2023
Efforts to improve memory safety in software gain momentum
Unsafe memory access can cause financial woes for enterprises and personal harm to individuals, experts say, advising enterprises to switch to memory-safe languages. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
27 Jan 2023
Agile project management (APM)
Agile project management (APM) is an iterative approach to planning and guiding project processes. Continue Reading
By- Alexander S. Gillis, Technical Writer and Editor
- Christina Torode
- Mary K. Pratt
-
News
25 Jan 2023
OpenSSF GM talks funding, legal software supply chain issues
The OpenSSF leader lays out plans fund open source software supply chain security in a slowing economy and to speak out against the EU's Cyber Resilience Act. Continue Reading
By- Beth Pariseau, Senior News Writer
-
News
25 Jan 2023
Devs discuss when to use TypeScript vs. JavaScript
TypeScript catches errors at compile time, which benefits developers and users. But the language isn't suitable for every project due to its additional overhead. Continue Reading
By- Stephanie Glen, News Writer
-
News
24 Jan 2023
Microsoft offers developer guidance on green software tools
Microsoft, UBS and others back developers' use of open source carbon-aware tools. Two case studies -- one enterprise and one academic -- demonstrate green software tools in action. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
20 Jan 2023
hybrid application (hybrid app)
A hybrid app is a software application that combines elements of both native apps and web applications. Continue Reading
-
News
17 Jan 2023
Experts rate programming languages for beginners in 2023
Python and JavaScript are two standouts for novices, according to developer experts. But fledgling coders should diversify their toolbox with newer languages too. Continue Reading
By- Stephanie Glen, News Writer
-
News
12 Jan 2023
Updates to GitHub Actions add efficiency, risk of friction
GitHub Actions required workflows and configuration variables can reduce duplicate configuration code and shore up policy compliance but may add to developer frustration. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
12 Jan 2023
YAML (YAML Ain't Markup Language)
YAML (YAML Ain't Markup Language) is a data serialization language used as the input format for diverse software applications. Continue Reading
-
Feature
10 Jan 2023
What is low-code? A guide to enterprise low-code app development
Learn how low-code concepts and practices code can help enterprise developers be more efficient, create valuable apps more quickly and contribute to broader business initiatives. Continue Reading
By- Stephen J. Bigelow, Senior Technology Editor
-
News
09 Jan 2023
AI risks shadow software development security trend
The rise of AI-assisted workflows will facilitate software development security amid growing open source vulnerabilities, but comes with the threat of AI-generated attacks. Continue Reading
By- Stephanie Glen, News Writer
-
Tip
03 Jan 2023
How to validate a Kubernetes manifest
Dev teams must validate Kubernetes manifests. Developers can navigate validation and issues that arise with the help of native and third-party tools and other coding methods. Continue Reading
-
Definition
03 Jan 2023
source code
Source code is the fundamental component of a computer program that is created by a programmer, often written in the form of functions, descriptions, definitions, calls, methods and other operational statements. Continue Reading
-
Tip
27 Dec 2022
Compare Go vs. Python: What are the differences?
Golang and Python are both versatile, popular languages, but they have some important differences that developers should take into account when planning software projects. Continue Reading
By- Matt Grasberger, Red Guava
-
News
21 Dec 2022
Prospects unclear for two Nucamp coding boot camp graduates
A coding boot camp can jumpstart a career in tech, but only for those willing to go the extra mile. Here's how two non-developers fared in a four-week web development boot camp. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
16 Dec 2022
stateless app
A stateless app is an application program that does not save client data generated in one session for use in the next session with that client. Continue Reading
-
News
16 Dec 2022
Salesforce DevOps Center ships to rein in low-code apps
Salesforce DevOps Center rolled out with features meant to bring low-code and pro-code custom apps on its CRM platform up to date with current software development practices. Continue Reading
By- Beth Pariseau, Senior News Writer
-
News
15 Dec 2022
Lego site vulnerabilities highlight API security gaps
What's old is new again: Lego site BrickLink was found vulnerable to cross-site scripting and other well-understood types of attacks, intensifying scrutiny on API security. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Tip
15 Dec 2022
Tools and techniques to test Kubernetes objects
Kubernetes manifests and objects represent the baseline of code development on the platform. Here's why and how to test these integral elements of Kubernetes. Continue Reading
-
News
15 Dec 2022
Spotify Plugins for Backstage aimed at developer productivity
Spotify Plugins for Backstage improves the development environment, but it can also help users tackle the developer shortage, according to one industry expert. Continue Reading
By- Stephanie Glen, News Writer
-
Tip
15 Dec 2022
Best practices for low-code integration within dev pipelines
When a nontechnical team leads the charge on application development, it still falls to developers and testers to integrate low-code tools and apps into the pipeline. Continue Reading
By- Matt Heusser, Excelon Development
-
News
14 Dec 2022
ChatGPT writes code, but won't replace developers
Recent advancements in AI portend the rise of the robot coder. Developers will need new skills to succeed in an AI-based industry, experts say. Continue Reading
By- Stephanie Glen, News Writer
-
News
13 Dec 2022
Tidelift GC: Paid open source can stave off another Log4j
If the industry wants to thwart software supply chain attacks and prevent another Log4Shell, the way forward is to pay open source maintainers, Tidelift GC Luis Villa says. Continue Reading
By- Stephanie Glen, News Writer
- Definition 13 Dec 2022
-
Feature
12 Dec 2022
Creative AI, FinOps among hot developer trends of 2023
Here's a look at the hottest trends for application developers in 2023. Keep an eye out for decentralization, FinOps, consolidation and AI. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
08 Dec 2022
native app
A native application is a software program developers build for use on a particular platform or device. Continue Reading
By- Alexander S. Gillis, Technical Writer and Editor
-
Definition
06 Dec 2022
truth table
A truth table is a breakdown of all the possible truth values returned by a logical expression. Continue Reading
-
Definition
06 Dec 2022
event-driven application
An event-driven application is a computer program written to respond to actions generated by a user or system. Continue Reading
-
Definition
02 Dec 2022
logical OR symbol
In mathematics, the logical OR symbol is a Boolean function that is positioned between two statements to indicate an inclusive disjunction between them. Continue Reading
-
News
01 Dec 2022
AWS DevOps tools expand low-code features, focus on devx
Many of the features of AWS CodeCatalyst and Application Composer were technically possible before, but the new services package them accessibly via a low-code UI. Continue Reading
By- Beth Pariseau, Senior News Writer
-
Definition
01 Dec 2022
C# (C-Sharp)
C#, pronounced "C-sharp," is an object-oriented programming language from Microsoft that enables developers to build applications that run on the .NET platform. Continue Reading
-
Definition
30 Nov 2022
Node.js (Node)
Node.js (Node) is an open source, cross-platform runtime environment for executing JavaScript code. Continue Reading
-
News
29 Nov 2022
Amazon boosts CodeWhisperer, AI and ML tools
AWS rolled out updates to a series of AI tools and services, highlighted by improvements to its CodeWhisperer coding system and Textract AI service for extracting document text. Continue Reading
By- Shaun Sutner, News Director
-
Definition
28 Nov 2022
use case
A use case is a methodology used in system analysis to identify, clarify and organize system requirements. Continue Reading
By -
News
28 Nov 2022
Small open source projects pose significant security risks
Open source security initiatives might prevent large-scale vulnerabilities such as Log4j, but smaller projects pose risks without more maintainer support, industry experts say. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
28 Nov 2022
debugging
Debugging, in computer programming and engineering, is a multistep process that involves identifying a problem, isolating the source of the problem and then either correcting the problem or determining a way to work around it. Continue Reading
By- Matt Heusser, Excelon Development
-
Tip
28 Nov 2022
How to make and use maps in Golang
Maps are a popular data structure in many programming contexts thanks to their efficiency and speed. But, in Go, some unique features make maps especially useful. Continue Reading
By- Matt Grasberger, Red Guava
-
Definition
23 Nov 2022
software toolchain
A software toolchain is a set of software development tools used simultaneously to complete complex software development tasks or to deliver a software product. Continue Reading
By- Ben Lutkevich, Site Editor
-
News
21 Nov 2022
Software developer layoffs and hiring freezes on the rise
As tech companies tighten their belts, developers should prepare for a tighter job market by updating resumes and expanding job searches beyond big tech, say industry experts. Continue Reading
By- Stephanie Glen, News Writer
-
News
21 Nov 2022
Diffblue expands AI-powered unit testing platform
Diffblue Cover is gaining traction amidst a trend toward AI-augmented testing, say industry analysts. Cover can now run a suite of unit tests without developer intervention. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
17 Nov 2022
static testing
Static testing is a software testing method that examines a program -- along with any associated documents -- but does not require the program to be executed. Continue Reading
By- Alexander S. Gillis, Technical Writer and Editor
-
News
16 Nov 2022
Atlassian Open DevOps tools stitch together more workflows
As all-in-one DevOps tools vendors grow, Atlassian argues users want choice; customers say third-party tools integration is a timesaver, but the company faces headwinds. Continue Reading
By- Beth Pariseau, Senior News Writer
-
News
16 Nov 2022
SAP low-code platform looks to fill developer gaps
SAP Build, a new low-code platform that debuted at SAP TechEd, is designed to enable business users to create apps, but it's entering a noisy market and may struggle to find users. Continue Reading
By- Jim O'Donnell, News Writer
-
Definition
16 Nov 2022
widget
In computing, a widget is an element of a graphical user interface that displays information or provides a specific way for a user to interact with the operating system (OS) or an application. Continue Reading
By -
News
10 Nov 2022
Low-code API management tool fights complexity, with caveats
A new low-code API management tool could bring benefits such as increased speed, fewer coding errors and wider accessibility. But it must prove itself in the market. Continue Reading
By- Stephanie Glen, News Writer
-
News
09 Nov 2022
GitHub security updates and Copilot expansion make waves
New features unveiled at GitHub Universe include private channels for security issues and Copilot for business, which may fall under a cloud of ongoing litigation. Continue Reading
By- Stephanie Glen, News Writer
-
News
04 Nov 2022
Go updates to tackle pain points, but Golang 2 is dead
Go Day 2022 highlights include possible Go updates to tackle compatibility, security and developer pain points such as for-loop scoping. But Golang 2 will never happen. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
04 Nov 2022
NIST (National Institute of Standards and Technology)
NIST (National Institute of Standards and Technology) is a nonregulatory government agency located in Gaithersburg, Md. Continue Reading
By- Alexander S. Gillis, Technical Writer and Editor
-
News
03 Nov 2022
Pega CTO: Ethical AI for developers demands transparency
Pegasystems CTO Don Schuerman believes the cure for AI's ethical issues lies in broad data inputs, being sensitive to biases and algorithms that make explainable decisions. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
03 Nov 2022
operand
In computing and mathematics, an operand is an object that is operated on by some type of operator. Continue Reading
-
Feature
01 Nov 2022
Sustainable software needs more tools, corporate buy-in
Several tools can help developers build sustainable software, but it won't make a dent in carbon emissions without organizational support and better monitoring tools. Continue Reading
By- Stephanie Glen, News Writer
-
News
27 Oct 2022
API documentation can make or break developer experience
At this week's API World, experts highlight issues with poor API documentation and suggest ways to fix it, such as ditching jargon and adopting the OpenAPI Specification. Continue Reading
By- Stephanie Glen, News Writer
-
Definition
26 Oct 2022
user experience
User experience (UX) design is the process and practice used to design and implement a product that will provide positive and relevant interactions with users. Continue Reading
By- Stephen J. Bigelow, Senior Technology Editor
- Emily McLaughlin, Coravin
-
News
24 Oct 2022
Developers want improved performance, efficiency in Java 20
Java 20 will likely include useful features such as improvements to concurrency and profiling, but the incremental updates are unlikely to please everyone. Continue Reading
By- Stephanie Glen, News Writer
-
Tip
24 Oct 2022
What Golang generics support means for code structure
Generics are a relatively recent addition to the strongly and statically typed Go language. Learn the benefits of using generics in Golang and how to get started. Continue Reading
By- Matt Grasberger, Red Guava