DEV Community

Bala Paranj profile picture

Bala Paranj

404 bio not found

Joined Joined on 
Visual Regression Testing for CLIs with VHS

Visual Regression Testing for CLIs with VHS

Comments
4 min read

Want to connect with Bala Paranj?

Create an account to connect with Bala Paranj. You can also sign in below to proceed if you already have an account.

Already have an account? Sign in
Z3 Can Prove Your Cloud is Unsafe. It Can't Tell You Why.

Z3 Can Prove Your Cloud is Unsafe. It Can't Tell You Why.

Comments
8 min read
Proof, not prediction: where formal verification beats AI in cloud security

Proof, not prediction: where formal verification beats AI in cloud security

Comments
9 min read
Zero-cost abstractions in Go: deleting your way to better code

Zero-cost abstractions in Go: deleting your way to better code

Comments
4 min read
The $0 cloud infrastructure security stack

The $0 cloud infrastructure security stack

Comments
9 min read
Your Go Golden Tests Don't Need to Regenerate Everything

Your Go Golden Tests Don't Need to Regenerate Everything

Comments
5 min read
9 Go Performance Patterns That Don't Need a Profiler to Find

9 Go Performance Patterns That Don't Need a Profiler to Find

Comments
8 min read
Two Problems, Two Tools: Why AI-Assisted Scanning and Configuration Verification Solve Different Things

Two Problems, Two Tools: Why AI-Assisted Scanning and Configuration Verification Solve Different Things

Comments
10 min read
go:embed in a CLI: Schemas, Controls, Templates, and Pack Registries

go:embed in a CLI: Schemas, Controls, Templates, and Pack Registries

1
Comments
4 min read
Your Private API is Currently Safe. One Developer Change Away From Unsafe.

Your Private API is Currently Safe. One Developer Change Away From Unsafe.

Comments
8 min read
Global State in Go: 5 Kinds We Found, 3 We Eliminated, 2 We Kept

Global State in Go: 5 Kinds We Found, 3 We Eliminated, 2 We Kept

Comments
6 min read
The dog that didn't bark: finding security holes in what's missing, not what's misconfigured

The dog that didn't bark: finding security holes in what's missing, not what's misconfigured

Comments
7 min read
Fuzz Testing a Go Security CLI: 8 Targets that Found What Unit Tests Missed

Fuzz Testing a Go Security CLI: 8 Targets that Found What Unit Tests Missed

1
Comments
8 min read
Functions vs Methods in Go: 6 Decision Criteria With Code Examples

Functions vs Methods in Go: 6 Decision Criteria With Code Examples

Comments
7 min read
Stop Indenting — 6 Patterns for Flattening Nested if/else in Go

Stop Indenting — 6 Patterns for Flattening Nested if/else in Go

Comments
8 min read
7 Filesystem Attacks Your Go CLI is Vulnerable To — And How to Fix Them

7 Filesystem Attacks Your Go CLI is Vulnerable To — And How to Fix Them

Comments
8 min read
5 Fat Structs We Split — And the Go Patterns That Replaced Them

5 Fat Structs We Split — And the Go Patterns That Replaced Them

Comments
6 min read
5 Factory Patterns in Go That Aren't the Gang of Four

5 Factory Patterns in Go That Aren't the Gang of Four

Comments
7 min read
Error Handling in a Go CLI That Security Researchers Trust

Error Handling in a Go CLI That Security Researchers Trust

Comments
8 min read
Your Go Structs Are Leaking: 6 Encapsulation Fixes From a Security CLI

Your Go Structs Are Leaking: 6 Encapsulation Fixes From a Security CLI

Comments
5 min read
Every scanner checks what exists. Nobody checks what's missing

Every scanner checks what exists. Nobody checks what's missing

Comments
10 min read
Debugging theory solved our security triage problem

Debugging theory solved our security triage problem

Comments
6 min read
The Airgap Test: Refactoring a Cobra CLI into a Library API

The Airgap Test: Refactoring a Cobra CLI into a Library API

1
Comments
7 min read
The Bucket You Deleted is Still in Your DNS: S3 Bucket Takeover at Bime

The Bucket You Deleted is Still in Your DNS: S3 Bucket Takeover at Bime

Comments
5 min read
8.7 billion records leaked from one misconfigured cluster. Eight findings would have prevented it.

8.7 billion records leaked from one misconfigured cluster. Eight findings would have prevented it.

Comments
7 min read
Your security tool should tell users what to change, not just what's wrong

Your security tool should tell users what to change, not just what's wrong

Comments
7 min read
AWS patched the logging. Your data already left.

AWS patched the logging. Your data already left.

Comments 1
9 min read
Design by Contract in Go: Panics, Preconditions, and checkContracts()

Design by Contract in Go: Panics, Preconditions, and checkContracts()

Comments
8 min read
The Most Important Refactoring Was Deleting 500 Lines I Was Proud Of

The Most Important Refactoring Was Deleting 500 Lines I Was Proud Of

Comments
4 min read
We Forgot defer — 6 Resource Leaks We Found During Refactoring

We Forgot defer — 6 Resource Leaks We Found During Refactoring

Comments
7 min read
Value Objects, Entities, and Aggregates in Go — Without a Framework

Value Objects, Entities, and Aggregates in Go — Without a Framework

Comments
6 min read
Subdomain Takeover is Not Just Phishing: How Acronis Nearly Lost Authenticated API Access

Subdomain Takeover is Not Just Phishing: How Acronis Nearly Lost Authenticated API Access

Comments
6 min read
8 Coupling and Cohesion Fixes That Made a Go CLI Navigable

8 Coupling and Cohesion Fixes That Made a Go CLI Navigable

Comments
6 min read
Compound Risk is a Bigger Problem Than Missing Checks

Compound Risk is a Bigger Problem Than Missing Checks

Comments
5 min read
Generate Terminal Recordings for Your CLI Docs Without Touching asciinema

Generate Terminal Recordings for Your CLI Docs Without Touching asciinema

1
Comments
3 min read
Applying clig.dev to a Go CLI — With an Automated Compliance Test

Applying clig.dev to a Go CLI — With an Automated Compliance Test

Comments
8 min read
5 Builder Patterns in Go — None of Them Are the Textbook Version

5 Builder Patterns in Go — None of Them Are the Textbook Version

Comments
8 min read
4 Builder Patterns in Go That Aren't the Builder Pattern

4 Builder Patterns in Go That Aren't the Builder Pattern

Comments
6 min read
Boolean Blindness in Go: When true, false, true Tells You Nothing

Boolean Blindness in Go: When true, false, true Tells You Nothing

Comments
6 min read
One Test File That Prevents All Architecture Regressions

One Test File That Prevents All Architecture Regressions

Comments
4 min read
Accept Interfaces, Return Structs: 5 Patterns From a Go CLI

Accept Interfaces, Return Structs: 5 Patterns From a Go CLI

1
Comments
7 min read
Designing Errors Out of Your Go CLI

Designing Errors Out of Your Go CLI

Comments
5 min read
Why the Capital One Breach Wasn't About One Misconfiguration

Why the Capital One Breach Wasn't About One Misconfiguration

Comments
5 min read
loading...