DEV Community

Sukhpinder Singh profile picture

Sukhpinder Singh

A questionable humor from a developer who’s convinced his bugs are funnier than yours.

Education

M.Tech & B.Tech Computer Science

Pronouns

he/him

Work

Technical Lead at SourceFuse

Five Year Club
April Fools Challenge Completion Badge
C#
Four Year Club
Web Game Challenge Completion Badge
8 Week Community Wellness Streak
Three Year Club
Coze AI Bot Challenge Completion Badge
100 Thumbs Up Milestone
Icebreaker
4 Week Community Wellness Streak
Frontend Challenge Completion Badge
A Million v7 GUIDs and Half Were Still Out of Order

A Million v7 GUIDs and Half Were Still Out of Order

1
Comments
6 min read

Want to connect with Sukhpinder Singh?

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

Already have an account? Sign in
I Sorted Two Million Rows to Keep Ten

I Sorted Two Million Rows to Keep Ten

1
Comments
4 min read
One Endpoint Filter, Six Fewer Guard Clauses

One Endpoint Filter, Six Fewer Guard Clauses

1
Comments
4 min read
175 MB of Substrings to Read One Column

175 MB of Substrings to Read One Column

1
Comments
5 min read
I Re-Encoded the Same Eight Bytes Four Million Times

I Re-Encoded the Same Eight Bytes Four Million Times

1
Comments
5 min read
The Array Hiding in Every params Call

The Array Hiding in Every params Call

1
Comments 1
5 min read
800 MB of Arrays Nobody Asked For

800 MB of Arrays Nobody Asked For

Comments
5 min read
My IEnumerable Parameter Boxed 80 MB. PGO Clawed Back 85%.

My IEnumerable Parameter Boxed 80 MB. PGO Clawed Back 85%.

Comments
5 min read
I Cached One Page and Stored It 248 Times

I Cached One Page and Stored It 248 Times

Comments
5 min read
I Allocated 65 MB of Strings to Read Three Numbers

I Allocated 65 MB of Strings to Read Three Numbers

1
Comments
5 min read
I Expected string.Create to Be Faster. It Just Stopped Allocating.

I Expected string.Create to Be Faster. It Just Stopped Allocating.

2
Comments
5 min read
My Struct Update Copied 64 Bytes Twice

My Struct Update Copied 64 Bytes Twice

2
Comments
5 min read
I Threw Away 786 MB of Scratch Buffers

I Threw Away 786 MB of Scratch Buffers

1
Comments
4 min read
I Summed 400,000 Rows on Every Refresh

I Summed 400,000 Rows on Every Refresh

1
Comments
5 min read
I Parsed the Same Format String Five Million Times

I Parsed the Same Format String Five Million Times

Comments
4 min read
A New JsonSerializerOptions Every Call Cost Me 120x

A New JsonSerializerOptions Every Call Cost Me 120x

Comments
4 min read
I Stamped Every Row With DateTime.Now and Paid Twice

I Stamped Every Row With DateTime.Now and Paid Twice

1
Comments
4 min read
I Expected a 100x JSON Slowdown. I Got 1.9x.

I Expected a 100x JSON Slowdown. I Got 1.9x.

1
Comments
5 min read
I Changed object to Lock and Stopped Paying the Monitor Tax

I Changed object to Lock and Stopped Paying the Monitor Tax

Comments
6 min read
The Handler Signature That Kept Growing

The Handler Signature That Kept Growing

Comments
5 min read
133,334 Projections for 66,667 Receipts

133,334 Projections for 66,667 Receipts

Comments
5 min read
I Drained a List From the Front. It Shifted Five Billion Elements.

I Drained a List From the Front. It Shifted Five Billion Elements.

Comments
5 min read
My Extension Method Became a Property and Lost Nothing

My Extension Method Became a Property and Lost Nothing

Comments
5 min read
One Contains Call, 375 Million Comparisons

One Contains Call, 375 Million Comparisons

Comments
5 min read
SortedDictionary Kept Sorting My Insertion Order Away

SortedDictionary Kept Sorting My Insertion Order Away

Comments
5 min read
My Struct Key Boxed Itself Two Million Times

My Struct Key Boxed Itself Two Million Times

Comments
5 min read
I Knew the Count and Let the List Guess Twenty Times

I Knew the Count and Let the List Guess Twenty Times

Comments
6 min read
Four Million Checks for Two Million Orders

Four Million Checks for Two Million Orders

Comments
5 min read
I Only Wanted Six Sums. GroupBy Gave Me 100 MB

I Only Wanted Six Sums. GroupBy Gave Me 100 MB

Comments
4 min read
The Backing Field a Typo Could Reach

The Backing Field a Typo Could Reach

Comments
4 min read
I Clamped Two Million Readings and Nothing Happened

I Clamped Two Million Readings and Nothing Happened

Comments
5 min read
GetOrAdd Ran My Factory Three Times

GetOrAdd Ran My Factory Three Times

Comments
5 min read
OrderBy().First() Wasn't Sorting Anything

OrderBy().First() Wasn't Sorting Anything

Comments
5 min read
440 MB of Closures on Pure Cache Hits

440 MB of Closures on Pure Cache Hits

1
Comments 1
4 min read
I Split Two Million Rows and the GC Noticed

I Split Two Million Rows and the GC Noticed

1
Comments 1
4 min read
Every Comma Was Costing Me an Array

Every Comma Was Costing Me an Array

Comments
4 min read
My Logging Middleware Ate the Request Body

My Logging Middleware Ate the Request Body

Comments
4 min read
StartsWith Was Asking ICU Every Time

StartsWith Was Asking ICU Every Time

1
Comments
4 min read
The GUID That Sorts Itself (Until It Doesn't)

The GUID That Sorts Itself (Until It Doesn't)

1
Comments
5 min read
My /robots.txt Was Paying Full Pipeline Price

My /robots.txt Was Paying Full Pipeline Price

Comments
4 min read
I Booted a Whole Web Server to Check a 404

I Booted a Whole Web Server to Check a 404

Comments
4 min read
616 Bytes to Add Up Sixteen Numbers

616 Bytes to Add Up Sixteen Numbers

Comments
5 min read
Sorted Fine at 16, Broke at 17

Sorted Fine at 16, Broke at 17

Comments
4 min read
I Allocated 1.5 GB Just to Add Vectors Together

I Allocated 1.5 GB Just to Add Vectors Together

1
Comments
5 min read
The string.Create I Didn't Need

The string.Create I Didn't Need

Comments
4 min read
The VaryBy Line That Served Everyone Page 1

The VaryBy Line That Served Everyone Page 1

1
Comments
4 min read
My 'Cached' Endpoint Ran the Handler Ten Times Anyway

My 'Cached' Endpoint Ran the Handler Ten Times Anyway

1
Comments
5 min read
40 Bytes a Call, Just to Pass Four Ints

40 Bytes a Call, Just to Pass Four Ints

1
Comments
5 min read
48 Bytes a Call I Kept Handing the Garbage Collector

48 Bytes a Call I Kept Handing the Garbage Collector

2
Comments 1
4 min read
I Added One ? and 1,000 Method Calls Vanished

I Added One ? and 1,000 Method Calls Vanished

1
Comments
4 min read
500 Async Calls, One Number That Explains Why

500 Async Calls, One Number That Explains Why

2
Comments
5 min read
The Tidy Helper That Made JSON Serialization 60x Slower

The Tidy Helper That Made JSON Serialization 60x Slower

Comments
5 min read
120 Bytes Per Log Line Nobody Read

120 Bytes Per Log Line Nobody Read

Comments
5 min read
The Lock Type Didn't Make My Locks Faster

The Lock Type Didn't Make My Locks Faster

Comments
5 min read
MCP Python SDK Extension Method Collisions: Fail Before the Server Starts

MCP Python SDK Extension Method Collisions: Fail Before the Server Starts

5
Comments 1
4 min read
.NET 10 Generic Math Shift Masking: Catch Overshifts That Now Wrap

.NET 10 Generic Math Shift Masking: Catch Overshifts That Now Wrap

6
Comments 1
4 min read
EF Core 10 Named Default Constraints: Preview the Migration SQL Before Deploying

EF Core 10 Named Default Constraints: Preview the Migration SQL Before Deploying

7
Comments
4 min read
OpenAI Responses API previous_response_id Instructions: Repeat Policy on Every Turn

OpenAI Responses API previous_response_id Instructions: Repeat Policy on Every Turn

5
Comments
4 min read
.NET 10 InlineArray Explicit Size: Fix TypeLoadException with a Wrapper

.NET 10 InlineArray Explicit Size: Fix TypeLoadException with a Wrapper

5
Comments 1
4 min read
.NET 10 LDAP VlvRequestControl Validation: Stop Sending Replacement Bytes

.NET 10 LDAP VlvRequestControl Validation: Stop Sending Replacement Bytes

5
Comments
4 min read
loading...