DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Offline-First Patch Management for 10,000 Edge Nodes: A Practical Architecture That Scales
  • DevOps and Platform Engineering Readiness Checklist: Everything Needed for a Scalable, Secure, High-Velocity Delivery Platform
  • Architecting an Embedded Efficiency Layer: A Platform Deep Dive into Day-Two Operational Tuning
  • Product-Led Software Delivery: Intelligent Platforms for DevOps at Scale

Trending

  • Advanced Error Handling and Retry Patterns in Enterprise REST Integrations
  • Good Data, Bad Metric: A Mutation Testing Pattern for Analytics Engineering
  • How to Save Money Using Custom LLMs for Specific Tasks
  • Mastering Fluent Bit: Beginners' Guide for Contributing to Our CNCF Project Website
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. DevOps and CI/CD
  4. Instant DevOps

Instant DevOps

The reasons why DevOps is useful is because it gives us "instant feedback", and if it doesn't it's broken! In this article I propose "instant DevOps", implying getting completely rid of pipelines, deployments, and everything that slows the process down.

By 
Thomas Hansen user avatar
Thomas Hansen
DZone Core CORE ·
Feb. 16, 22 · Opinion
Likes (3)
Comment
Save
Tweet
Share
9.7K Views

Join the DZone community and get the full member experience.

Join For Free

I once worked for a company where I had to wait for 45 minutes every time I merged a pull request before I could test it in our development environment. Needless to say probably, but this annoyed me and became frustrating over time. Having to wait 45 minutes before you know if you broke something or not, is everything but DevOps.

One of my first tasks at this company as their architect was therefor to break up their monolithic code from one single project into 5 sub projects, creating 5 different Git repositories, and 5 separate pipelines, using constructs such as Git sub-modules, adding more solutions to the project, and separating a single pipeline into 5 different pipelines. At the end of this process, we were averaging 5 minutes deployment time before we could test things in our development environment.

5 minutes? Too slow!

However, even 5 minutes is too slow for me. Science has shown us that the resources required to fix a bug increases exponentially according to how much time passes from we introduce the bug until we realise we've added a bug. And, there are no reasons why bugs shouldn't be visible immediately if you think about it. This is actually quite easily achieved by changing the way we work. For instance, why is our development environment and development testing environment two separate things? Why can't we just simply edit our code directly in our test environment and immediately get feedback? Well, with a web based IDE and runtime, this is actually quite easily achieved. The screenshot below is from our own Hyper IDE. Hyper IDE being a web based development environment, fused with its runtime, allows you to edit your code, save your file, and within milliseconds see if you introduced a bug or not. No pipelines, no deployments, no compilation, no problem!

Hence, instead of having to wait for 5 minutes, or 45 for that matter (shivers!), I can test my code in less than one second after having edited my code - And if my code breaks something, it also breaks our test environment, directly on our dev server, providing me with "instant feedback".

This process of course implies there's no time for compilation, or TypeScript transpilation for that matter. No time for creating artefacts, or uploading artefacts to some dev server. It literally implies editing the file in our dev environment directly, without anything needing to happen before the code can be tested. Such a process of course is only possible with dynamic programming languages, such as PHP, Python, JavaScript, Hyperlambda, etc - And you might not always want to throw out static compilation or transpilation for other reasons - But when you can do so, you get what I refer to as "instant DevOps", making you 100 times more productive.

When you save your file in your IDE, the code is in DEV

Literally, zero seconds pipelines ...

DevOps

Opinions expressed by DZone contributors are their own.

Related

  • Offline-First Patch Management for 10,000 Edge Nodes: A Practical Architecture That Scales
  • DevOps and Platform Engineering Readiness Checklist: Everything Needed for a Scalable, Secure, High-Velocity Delivery Platform
  • Architecting an Embedded Efficiency Layer: A Platform Deep Dive into Day-Two Operational Tuning
  • Product-Led Software Delivery: Intelligent Platforms for DevOps at Scale

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook