aster.cloud aster.cloud
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
    • Learning
  • Tools
  • About
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
    • Learning
  • Tools
  • About
aster.cloud aster.cloud
  • /
  • Platforms
    • Public Cloud
    • On-Premise
    • Hybrid Cloud
    • Data
  • Architecture
    • Design
    • Solutions
    • Enterprise
  • Engineering
    • Automation
    • Software Engineering
    • Project Management
    • DevOps
  • Programming
    • Learning
  • Tools
  • About
  • DevOps
  • Practices
  • Programming
  • Tools

Reasons To Flatten Your Source Code

  • Ackley Wyndam
  • February 20, 2021
  • 3 minute read

The decades pass, but we still write software in the same way as in the XX century.

Our software is a large castle, formed by several layers superimposed and mixed, in order to facilitate its own maintenance, but which, in fact, end up creating the opposite effect: a true monolith.


Partner with aster.cloud
for your next big idea.
Let us know here.



From our partners:

CITI.IO :: Business. Institutions. Society. Global Political Economy.
CYBERPOGO.COM :: For the Arts, Sciences, and Technology.
DADAHACKS.COM :: Parenting For The Rest Of Us.
ZEDISTA.COM :: Entertainment. Sports. Culture. Escape.
TAKUMAKU.COM :: For The Hearth And Home.
ASTER.CLOUD :: From The Cloud And Beyond.
LIWAIWAI.COM :: Intelligence, Inside and Outside.
GLOBALCLOUDPLATFORMS.COM :: For The World's Computing Needs.
FIREGULAMAN.COM :: For The Fire In The Belly Of The Coder.
ASTERCASTER.COM :: Supra Astra. Beyond The Stars.
BARTDAY.COM :: Prosperity For Everyone.

Whaaaattt?

Oh yes! Class structures, complex domain hierarchies and extrinsic aspects incorporated into the code make it expensive, and difficult to maintain and operate.

In this article, I want to focus only on the “extrinsic aspects” of the source code, that is, those things that shouldn’t be “embedded” within the source code.

According to Oxford Dictionary:

ex·trin·sic: not part of the essential nature of someone or something; coming or operating from outside.

 

Extrinsic factors might affect time budgets

There was a time when we started to identify these “extrinsic aspects” as just “aspects”, especially in the Java world, where Aspect-Oriented Programming techniques emerged.

“In computing, aspect-oriented programming (AOP) is a programming paradigm that aims to increase modularity by allowing the separation of cross-cutting concerns. It does so by adding additional behavior to existing code (an advice) without modifying the code itself, instead separately specifying which code is modified via a “pointcut” specification, such as “log all function calls when the function’s name begins with ‘set'”. This allows behaviors that are not central to the business logic (such as logging) to be added to a program without cluttering the code core to the functionality. AOP forms a basis for aspect-oriented software development.”

Although well-intentioned, this practice only “masked” the “extrinsic aspects”, keeping them inside the source code in some way, and helping to increase the complexity of maintaining the software. While there are those who disagree with this statement, this is easily proven when trying to maintain AOP-based software from 10 years ago.

Read More  Delivering Data-Driven IT And Networks, Google Cloud Expands Its Analytics Partner Ecosystem For Telecommunications

 

What are we talking about? Give me examples!

Of course! Here are some examples of extrinsic aspects that are easier to identify: Security, scalability, high availability. However, there are others more “exotic” such as: Discovery and control of services.

Exemplifying the issue of high availability and scalability, we have the insistent use of multithreaded programming as a mechanism to parallelize processing.

And we can cite several examples of “extrinsic aspects” incorporated in the software, as in this list:

  • Internally controlled elasticity: When a program decides to increase or decrease the consumption of resources by scaling a number of threads or processes internally.
  • Remote service control: When a program stores a list of names or addresses of other servers, using it for load balancing or task distribution.
  • Internal workflow control: When a program controls stages of complex processing using its own internal structures.

Many bad ideas arise from good intentions

Programmers often like to solve problems themselves, without relying on other people and other tools, bringing responsibility for things they shouldn’t have into the source code.

This type of attitude is seen as “proactivity” or “agility”, a characteristic often appreciated by short-term vision managers.

 

Why is this a bad thing?

I can name a few simple reasons, but there is a very clear reason: Your software must become cloud-based, and these “extrinsic aspects” make it difficult or impossible to make the best use of this technology.

Cloud-based software does not necessarily need to be hosted by a cloud service provider, such as AWS or Google Cloud.

Techniques such as: Virtualization, Infrastructure as Code, Immutable Servers, Service Discovery, Service Choreography, and many others are becoming the standard in progressive and modern companies, and in order to be successful in their use, it is necessary that your code be the most simple and functional as possible, ie: Flat.

Read More  Policy Troubleshooter For BeyondCorp Enterprise Is Now GA!

I say simple, capisci?

Today there are tools to assist interconnection and scalability such as: Kubernetes, RabbitMQ, and Apache Zookeeper. You should let tools like these take care of the “extrinsic aspects” of your software, focusing only on the functional aspect of every program you create.

Every time you think about adding new threads to your program, you are embedding things in it that should be external, increasing its complexity and maintenance cost. Even if it seems like a good idea, think about the operation and the complexity of what you are doing now.

Letting “extrinsic aspects” be externally managed gives Devops greater freedom to provide your solution more efficiently, lowering costs and increasing the economic and operational efficiency of the software.

This article is republished from hackernoon.com


For enquiries, product placements, sponsorships, and collaborations, connect with us at [email protected]. We'd love to hear from you!

Our humans need coffee too! Your support is highly appreciated, thank you!

Ackley Wyndam

Related Topics
  • AWS
  • devops
  • Google Cloud
  • Kubernetes
  • RabbitMQ
  • Source code
You May Also Like
View Post
  • Technology
  • Tools

IBM Launches Enterprise Advantage Service to Help Businesses Scale Agentic AI

  • January 19, 2026
Users with laptops working with database. Data storage and organization, information access and management, big data protection concept. Vector isolated illustration.
View Post
  • Architecture
  • DevOps
  • Technology

What is application migration? Examples and best practices

  • August 18, 2025
aster-cloud-sms-pexels-tim-samuel-6697306
View Post
  • Programming
  • Software

Send SMS texts with Amazon’s SNS simple notification service

  • July 1, 2025
aster-cloud-website-pexels-goumbik-574069
View Post
  • Programming
  • Software

Host a static website on AWS with Amazon S3 and Route 53

  • June 27, 2025
notta-ai-header
View Post
  • Featured
  • Tools

Notta vs Fireflies: Which AI Transcription Tool Deserves Your Attention in 2025?

  • May 16, 2025
zedreviews-Apple-iPhone-16-Pro-finish-lineup-240909
View Post
  • Featured
  • Gears
  • Tech
  • Technology
  • Tools

Apple debuts iPhone 16 Pro and iPhone 16 Pro Max

  • September 10, 2024
zedreviews-Apple-AirPods-Active-Noise-Cancellation-240909
View Post
  • Featured
  • Gears
  • Tech
  • Technology
  • Tools

Apple introduces AirPods 4 and the world’s first all-in-one hearing health experience with AirPods Pro 2

  • September 10, 2024
View Post
  • DevOps
  • Engineering
  • Platforms

How To Fail At Platform Engineering

  • March 11, 2024

Stay Connected!
LATEST
  • 1
    Expectations vs. Reality: The AI We Thought We’d Have in 10 Years
    • June 19, 2026
  • digital-nomad-freelancer-worker-2151205464 2
    One paperwork problem – Get your Digital Nomad Visa employment documents fast from UK, EU or Singapore
    • June 16, 2026
  • 3
    Samsung Art Store Brings Art Basel to Homes Worldwide With New Curated Collection
    • June 15, 2026
  • 4
    You Do Not Need to Invest in the IPO of SpaceX, Anthropic, and OpenAI
    • June 10, 2026
  • 5
    The consequences of relying on AI for accurate news
    • June 10, 2026
  • 6
    Connecting AI agents with unstructured data using Google Cloud Storage MCP Servers
    • June 10, 2026
  • 7
    WWDC26: Apple unveils next generation of Apple Intelligence, Siri AI, powerful parental controls, and an expansive set of software improvements
    • June 8, 2026
  • 8
    IBM and Google Cloud Announce Strategic Partnership to Scale AI with Human Expertise and AI‑Powered Delivery
    • June 4, 2026
  • Data center 9
    Data Sovereignty in Spain. It’s Not Just About the Law, It’s About Efficiency
    • June 3, 2026
  • 10
    Ink vs Pixels. What you miss versus what you are actually missing.
    • June 1, 2026
about
Hello World!

We are aster.cloud. We’re created by programmers for programmers.

Our site aims to provide guides, programming tips, reviews, and interesting materials for tech people and those who want to learn in general.

We would like to hear from you.

If you have any feedback, enquiries, or sponsorship request, kindly reach out to us at:

[email protected]
Most Popular
  • 1
    Banks race to patch new cyber vulnerabilities, and other cybersecurity news
    • May 25, 2026
  • pope-leo-xiv-cq5dam-1500.844 2
    Pope Leo XIV to Publish First Encyclical on Artificial Intelligence and Human Dignity on 25 May
    • May 22, 2026
  • 3
    Portfolio to Clients, and is Strengthened by Ongoing Project Glasswing Work
    • May 20, 2026
  • reMarkable Paper Pure 4
    Everything The reMarkable Paper Pure Actually Does
    • May 14, 2026
  • 5
    Scaling cloud and AI: Microsoft Azure’s commitment to Europe’s digital future
    • May 11, 2026
  • /
  • Technology
  • Tools
  • About
  • Contact Us

Input your search keywords and press Enter.