Tips
Tips
- 
			A 7-point language comparison of Ballerina vs. GolangThis 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 
- 
			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 
- 
			Frameworks for an observability maturity modelObservability helps developers and IT operations teams identify and fix system issues. And with the right setup, it can improve on itself over time to catch potential problems. Continue Reading 
- 
			9 steps to implement in an observability strategyAs distributed software systems grow in scale and complexity, things like monitoring and debugging can become a tangled mess. Here are nine ways to bolster your observability plan. Continue Reading 
- 
			Can you really use a shared database for microservices?Since its emergence as a mainstream development style, experts have debated the wisdom of using a shared database for microservices versus providing a database per service. Continue Reading 
- 
			6 ways cloud-native and cloud-agnostic architecture differWhile development teams should carefully weigh the tradeoffs between cloud-native and cloud-agnostic architectures, they don't necessarily have to commit to just one. Continue Reading 
- 
			The deep-rooted relationship between REST and microservicesThe REST paradigm can be a natural fit for microservices architectures, but it also presents potential challenges for development teams. Continue Reading 
- 
			The management approach for internal vs. external APIsWhile internal and external APIs don't differ much mechanically, there are some important contrasts when it comes to certain API design and lifecycle management issues. Continue Reading 
- 
			The role of sidecars in microservices architectureSidecars can do a lot for microservices when it comes to communication with distributed application components, though they also present some precarious management challenges. Continue Reading 
- 
			The basics of working with declarative programming languagesWhile 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 
- 
			Micro apps vs. microservices: What developers should knowOn 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 
- 
			The ups and downs of using an internal developer platformIDPs can provide a productive and secure environment for development teams. Consider the pros and cons to see if an internal developer platform is right for your organization. Continue Reading 
- 
			An intro to cloud-native microservices and how to build themWhile 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 
- 
			A brief breakdown of declarative vs. imperative programmingWhile 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 
- 
			The ups and downs of low-code microservices developmentLow-code may not be the most sophisticated of development techniques, but it can often fit the bill for software teams looking to build microservices applications. Continue Reading 
- 
			WebStorm vs. Visual Studio, and how to choose the right IDEWebStorm 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 
- 
			Using the BFF pattern to keep UIs flexible and reliableBFF 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 
- 
			Open vs. closed APIs: 4 crucial factors you should examineOpen and closed APIs both have their respective upsides and downsides. To choose the right approach, developers must examine four critical technical and business-level factors. Continue Reading 
- 
			The pros, cons and challenges of containerized microservicesContainerized microservices are certainly a popular deployment approach, but are they the best? They can be, provided you overcome the unique challenges they present. Continue Reading 
- 
			Will .NET 6 features bridge the gap between .NET frameworks?Microsoft's original .NET Framework has come a long way, but will the new iterations of this framework be enough to convince developers to leave it behind? Continue Reading 
- 
			How a microservices chassis regulates cross-cutting concernsThose who've implemented a microservices architecture know that it presents a formidable collection of cross-cutting concerns to manage. Luckily, a microservices chassis might help. Continue Reading 
- 
			Programming in Ruby: A critical look at the pros and consWhile 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 
- 
			The distributed monolith: What it is and how to escape itDo you suspect that your attempt at microservices left you with distributed monolith application design? There are some telltale signs -- and, thankfully, a few ways to escape it. Continue Reading 
- 
			PHP 8 features that prove it's for more than just webLooking 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 
- 
			8 fundamental microservices security best practicesDespite the benefits, microservices will introduce profound security issues. We review the biggest microservices security challenges and eight strategies used to combat them. Continue Reading 
- 
			The architectural impact of RPC in distributed systemsIt has become increasingly important for software architects to understand the mechanics behind remote procedure call (RPC), particularly its role in distributed architectures. Continue Reading 
- 
			Service mesh vs. API gateway: Where, why and how to use themWhile they're both central to inter-application communication processes, it's important to understand the fundamental differences between a service mesh and an API gateway. Continue Reading 
- 
			Should you adopt an API-first approach to development?While the code-first approach certainly works, its appeal is fading as architectures become increasingly complex webs of software. Learn why the API-first approach is catching on. Continue Reading 
- 
			The functional programming paradigm at enterprise scaleMany 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 
- 
			.NET vs. Node.js: What they are, and which to chooseThe 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 
- 
			Synchronous vs. asynchronous communications: The differencesSynchronous execution requires parties or components to work simultaneously in real time, while asynchronous communications don't need anyone to wait around for a reply. Continue Reading 
- 
			The 4 Golden Signals, and how to put them into practiceThere'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 
- 
			Microservices vs. SOA: Choose the right app architectureThis primer explains the ins and outs of a microservices vs. SOA architecture: when and where to use either one, and how both are evolving, thanks to containers. Continue Reading 
- 
			How microservices and containers work, apart and togetherMicroservices and containers are two methods that enable companies to more efficiently create and deliver applications. Here's how they work -- and when they're best used together. Continue Reading 
- 
			Microservices vs. APIs: How they differ and work togetherEnterprises still rely on monolithic systems, but apps increasingly require speed, scale and flexibility. Here's how microservices and APIs achieve that, separately and together. Continue Reading 
- 
			How pub/sub messaging works, and why it matters todayWhile pub/sub has been a standard messaging approach for decades, it's arguably more important than ever for developers to understand what it is, how it works and why it matters. Continue Reading 
- 
			How to handle typical event-driven architecture failuresAdding events to an architecture can pose plenty of problems. Review some common event-driven architecture failures development teams face, and some strategic fixes for them. Continue Reading 
- 
			The 6 non-negotiable REST architecture constraintsWhile REST-centric design isn't necessarily hard, there are some non-negotiable rules when it comes to resource provisioning. Here are six all architects should know. Continue Reading 
- 
			Static vs. dynamic typing: The details and differencesWhat 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 
- 
			5 proven patterns for resilient software architecture designMaintaining a resilient software architecture is a constant battle. Luckily, there are a few design methods that can help teams instill the reliability they desperately need. Continue Reading 
- 
			Is integration platform as a service right for you?Is iPaaS a helpful platform for your enterprise software integration needs or just an unnecessary tool that adds complexity to the environment? Continue Reading 
- 
			Event-driven vs. message-driven: It comes down to complexityWhile the goal doesn't change, how do message-driven and event-driven design approaches really differ? More importantly, how do you choose the right approach? Continue Reading 
- 
			IPaaS vs. API management: Why the enterprise needs bothEnterprise iPaaS and API management integrate applications and data, but it's not a choice of one or the other. Here's why you probably need both, and why planning is necessary. Continue Reading 
- 
			Review these top enterprise iPaaS benefits and challengesHave you considered using an iPaaS to integrate your various apps? Understand where iPaaS works, and runs into challenges, to help prepare for a successful iPaaS implementation. Continue Reading 
- 
			9 iPaaS use cases for the enterpriseIPaaS connects enterprise applications and data, which encompasses on-premises systems to the cloud and IoT. Review these iPaaS examples to understand how it all works. Continue Reading 
- 
			The reasons to use (or not use) sidecars in KubernetesSidecar containers provide a great relief to developers who need to manage large clusters of containerized applications at scale. But is it always the right approach? Continue Reading 
- 
			Do the disadvantages of service-oriented architecture matter?While it doesn't carry the shiny appeal of microservices, there's no reason to believe that SOA is totally down for the count. In fact, sometimes it's an essential approach. Continue Reading 
- 
			A quick rundown of multi-runtime microservices architectureLearn the basics about a multi-runtime architecture, and the two-component approach it takes to provide a standard for abstracted microservice-messaging processes. Continue Reading 
- 
			Feature toggles: A simple fix for complex release cyclesWhile development teams should always strive to improve app functionality, unchecked collections of feature releases can quickly cause trouble. Feature toggles may be the answer. Continue Reading 
- 
			Why microservices and IoT apps are perfect togetherThe development of IoT apps certainly presents its fair share of challenges, but the benefits that microservices bring might be an antidote to those struggles. Continue Reading 
- 
			Using a business rules engine to streamline decision-makingGet to know some of the details behind a business rules engine, particularly the automated approach it takes to handling critical, rules-based decisions. Continue Reading 
- 
			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 
- 
			Micro apps: A simple way to add sophisticated featuresWhen 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 
- 
			Diagrams.net vs. Lucidchart: A few things to considerWhile 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 
- 
			The difference between front-end and back-end developersWhile 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 
- 
			Can a loosely coupled architecture reduce technical debt?While there are a lot of factors that impact technical debt, the level of coupling found in the underlying software architecture is often a primary culprit. Continue Reading 
- 
			3 predictable application architect interview questionsSoftware 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 
- 
			A quick rundown of 3 layered architecture design stylesN-layer, hexagonal and onion are all layered architecture styles, but each one features its own unique spin on distributed design and modular development. Continue Reading 
- 
			An application architect's chief roles and responsibilitiesToday'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 
- 
			Get to know 4 microservices versioning techniquesAre you struggling to apply updates consistently across distributed services? Here are four microservices versioning techniques that can help. Continue Reading 
- 
			Event-driven architecture pros and cons: Is EDA worth it?Event-driven architecture (EDA) is a double-edged sword of service flexibility and management complexity. Let's take a quick look at the ups and downs of EDA. Continue Reading 
- 
			App interface design principles all developers should knowThe 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 
- 
			An overview of headless architecture designDecoupling the back-end components of an application is certainly valuable, but what about the front end? This is where headless architecture comes into play. Continue Reading 
- 
			NetBeans vs. Eclipse: 5 key comparison points for these IDEsWhen 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 
- 
			4 reasons Dart is still a language worth learningDespite 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 
- 
			The basics of monitoring and observability in microservicesWe examine how monitoring and observability help development teams keep a distributed architecture from coming unraveled by individual failures and performance bottlenecks. Continue Reading 
- 
			API testing checklist and best practicesProper API testing isn't just determining if an endpoint is functional. Follow these steps to identify your organization's important APIs, which tests to run, and which tools to use. Continue Reading 
- 
			The differences between SVN and Git that matterNot 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 
- 
			BPM vs. BPA: The differences in strategy and toolingThe differences between BPM and BPA come down to process complexity, an organization's proficiency with software code and how quickly the business must see ROI. Continue Reading 
- 
			The 4 rules of a microservices defense-in-depth strategyLearn 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 
- 
			Two simple ways to create custom APIs in AzureLearn how to create custom APIs in Azure through both Azure Portal and Visual Studio Code, and review some post-deployment best practices that add value and security to those APIs. Continue Reading 
- 
			The CAP theorem, and how it applies to microservicesLearn the fundamentals of the CAP theorem, how it comes into play with microservices and what it means for your distributed architecture design choices. Continue Reading 
- 
			Objective-C vs. Swift: The war for iOS development supremacyWhile 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 
- 
			Using the saga design pattern for microservices transactionsWe explore how the saga design pattern can support complex, long-term business processes and provide reliable rollback mechanisms for multistep transaction failures. Continue Reading 
- 
			How to master microservices data architecture designMicroservices have data management needs unlike any other application architecture today. You'll need the right set of knowledge, mechanisms and design principles to succeed. Continue Reading 
- 
			Navigating the evolving BPA tools marketThe 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 
- 
			The vicious cycle of circular dependencies in microservicesModular design is impossible so long as circular dependencies lurk in your architecture. So how can you break problematic coupling between otherwise-independent components? Continue Reading 
- 
			4 mobile app security threats all developers must faceMobile 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 
- 
			9 tried-and-true open source frameworks for developmentNo 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 
- 
			Microservices logging best practices every team should knowCreating a log system for distributed microservices is a task much easier said than done. Joydip Kanjilal offers a few best practices to shore up microservices logging processes. Continue Reading 
- 
			Django vs. Node.js: Pick the right web development frameworkUnderstanding 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 
- 
			Understanding the modular monolith and its ideal use casesWhile it isn't always the right fit, a modular monolith can often provide a happy medium between the simplicity of a traditional monolith and the complexity of microservices. Continue Reading 
- 
			The non-tech skills of software development project managersTeams 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 
- 
			How to start managing software development teams like a proTeam 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 
- 
			A basic overview of micro front endsMicroservices enable independent app-dev teams, asynchronous app updates and precise troubleshooting. If these benefits sound good for your UI, consider a micro front end. Continue Reading 
- 
			Apache, Spring and Mule: Explore 3 top integration frameworksA good integration framework should underpin every application strategy. Apache Camel, Spring Integration and Mule ESB can simplify integration at scale. We deconstruct them here. Continue Reading 
- 
			The basics of software coupling metrics and conceptsTo move toward a distributed, modular architecture, development teams need to carefully investigate software coupling concepts and learn how to measure dependency complexity. Continue Reading 
- 
			A lesson on how to test microservices locallyMicroservices are small pieces of a big picture, so they're difficult to test in isolation. Use these tips to run unit and integration tests locally on microservices. Continue Reading 
- 
			MVC vs. MVVM: 2 architecture patterns for modularityBoth 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 
- 
			Learn the benefits of microservices orchestrationOrchestration plays a vital role in a microservices architecture, especially when it comes to communication, workload management and architecture readability. Continue Reading 
- 
			A primer on the clean architecture pattern and its principlesStability is a crucial aspect of application architecture. Learn how clean architecture can straighten out your dependencies and make an app that is built to last. Continue Reading 
- 
			Orchestration vs. choreography in microservices architectureOrchestration and choreography are related, but they each have their own role to play. Get to know the basics of these service call approaches, including the use cases for each. Continue Reading 
- 
			Styles, protocols and methods of microservices communicationAs application architectures grow in complexity, messaging must become a priority. Review the two types of microservices communication and the primary protocols involved. Continue Reading 
- 
			A developer guide to software localizationSoftware 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 
- 
			Explore 10 popular open source development toolsWhether 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 
- 
			10 of the best programming languages to learn in 2020Different 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 
- 
			Decomposing a monolithic database for microservicesWhen breaking up a monolith, it's critical to decompose your database alongside your new distributed services. We explore how to do this and avoid creating a distributed monolith. Continue Reading 
- 
			Navigate service discovery in a microservices architectureMicroservices move rapidly, making streamlined service discovery a must. Learn more about the specific types of discovery approaches and how to determine a strategy. Continue Reading 
- 
			Craft an application integration strategy and pick the best toolApplication integration is easier said than done. Learn how to navigate this challenging process -- particularly, if you're integrating legacy applications with new applications. Continue Reading 
- 
			A comparison of 6 top programming languagesChoosing 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