Sr. Content Developer at Microsoft, working remotely in PA, TechBash conference organizer, former Microsoft MVP, Husband, Dad and Geek.
148601 stories
·
33 followers

Why long-running tasks carried out by agentic AI aren't the future of doc work, and might just be an illusion

1 Share
As AI agents become more capable, there's growing eagerness to develop long-running tasks that operate autonomously with minimal human intervention. However, my experience suggests this fully autonomous mode doesn't apply to most documentation work. Most of my doc tasks, when I engage with AI, require constant iterative decision-making, course corrections, and collaborative problem-solving—more like a winding conversation with a thought partner than a straight-line prompt-to-result process. This human-in-the-loop requirement is why AI augments rather than replaces technical writers.

Read the whole story
alvinashcraft
19 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Random.Code() - Reviewing PRs and Milestones and Addressing Issues

1 Share
From: Jason Bock
Duration: 1:33:39
Views: 0

In this stream, I'll look at a PR and clear out milestones in the packages I support.

Read the whole story
alvinashcraft
19 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

"Sell the alpha, not the feature": The enterprise sales playbook for $1M to $10M ARR | Jen Abel

1 Share

Jen Abel is GM of Enterprise at State Affairs and co-founded Jellyfish, a consultancy that helps founders learn zero-to-one enterprise sales. She’s one of the smartest people I’ve ever met on learning enterprise sales, and in this follow-up to our first chat two years ago (covering the zero to $1 million ARR founder-led sales phase), we focus on the skills founders need to learn to go from $1M to $10M ARR.

We discuss:

1. Why the “mid-market” doesn’t exist

2. Why tier-one logos like Stripe and Tesla counterintuitively make the best early customers

3. The dangers of pricing your product at $10K-$20K

4. Why you need to vision-cast instead of problem-solve to win enterprise deals

5. Why services are the fastest way to get your foot in the door with enterprises

6. How to find and work with design partners

7. When to hire your first salesperson and what profile to look for

Brought to you by:

WorkOS—Modern identity platform for B2B SaaS, free up to 1 million MAUs

Lovable—Build apps by simply chatting with AI

Coda—The all-in-one collaborative workspace

Where to find Jen Abel:

• X: https://x.com/jjen_abel

• LinkedIn: https://www.linkedin.com/in/earlystagesales

• Website: https://www.jjellyfish.com

Where to find Lenny:

• Newsletter: https://www.lennysnewsletter.com

• X: https://twitter.com/lennysan

• LinkedIn: https://www.linkedin.com/in/lennyrachitsky/

In this episode, we cover:

(00:00) Welcome back, Jen!

(04:38) The myth of the mid-market

(08:08) Targeting tier-one logos

(10:50) Vision-casting vs. problem-selling

(15:35) The importance of high ACVs

(20:45)  Don’t play the small business game with an enterprise company

(25:09) Design partners: the double-edged sword

(28:11) Finding the right company

(36:55) Enterprise sales: the art of the deal

(43:21) The problem with channel partnerships

(44:41) Quick summary

(50:24) Hiring the right enterprise salespeople

(56:49) Structuring sales compensation

(01:01:01) Building relationships in enterprise sales

(01:02:07) The art of cold outreach

(01:07:31) Outbound tooling and AI

(01:14:08) Lightning round and final thoughts

Referenced:

• The ultimate guide to founder-led sales | Jen Abel (co-founder of JJELLYFISH): https://www.lennysnewsletter.com/p/master-founder-led-sales-jen-abel

• Mario meme: https://www.linkedin.com/pulse/missing-meme-led-me-woman-johann-van-tonder-im6df

• Kathy Sierra: https://en.wikipedia.org/wiki/Kathy_Sierra

• Cursor: https://cursor.com

• The rise of Cursor: The $300M ARR AI tool that engineers can’t stop using | Michael Truell (co-founder and CEO): https://www.lennysnewsletter.com/p/the-rise-of-cursor-michael-truell

• Justin Lawson on X: https://x.com/jjustin_lawson

• Stripe: https://stripe.com

• Building product at Stripe: craft, metrics, and customer obsession | Jeff Weinstein (Product lead): https://www.lennysnewsletter.com/p/building-product-at-stripe-jeff-weinstein

• He saved OpenAI, invented the “Like” button, and built Google Maps: Bret Taylor on the future of careers, coding, agents, and more: https://www.lennysnewsletter.com/p/he-saved-openai-bret-taylor

• OpenAI’s CPO on how AI changes must-have skills, moats, coding, startup playbooks, more | Kevin Weil (CPO at OpenAI, ex-Instagram, Twitter): https://www.lennysnewsletter.com/p/kevin-weil-open-ai

• Anthropic’s CPO on what comes next | Mike Krieger (co-founder of Instagram): https://www.lennysnewsletter.com/p/anthropics-cpo-heres-what-comes-next

• Linear: https://linear.app

• Linear’s secret to building beloved B2B products | Nan Yu (Head of Product): https://www.lennysnewsletter.com/p/linears-secret-to-building-beloved-b2b-products-nan-yu

• Gemini: https://gemini.google.com

• Microsoft Copilot: https://copilot.microsoft.com

• How Palantir built the ultimate founder factory | Nabeel S. Qureshi (founder, writer, ex-Palantir): https://www.lennysnewsletter.com/p/inside-palantir-nabeel-qureshi

• McKinsey & Company: https://www.mckinsey.com

• Deloitte: https://www.deloitte.com

• Accenture: https://www.accenture.com

• Building a world-class sales org | Jason Lemkin (SaaStr): https://www.lennysnewsletter.com/p/building-a-world-class-sales-org

• Peter Dedene on X: https://x.com/peterdedene

• Hang Huang on X: https://x.com/HH_HangHuang

• Hugo Alves on X: https://x.com/Ugo_alves

• A step-by-step guide to crafting a sales pitch that wins | April Dunford (author of Obviously Awesome and Sales Pitch): https://www.lennysnewsletter.com/p/a-step-by-step-guide-to-crafting

• Clay: https://www.clay.com

• Apollo: https://www.apollo.io

• Jason Lemkin on X: https://x.com/jasonlk

• Gavin Baker on X: https://x.com/GavinSBaker

• Jason Cohen on X: https://x.com/asmartbear

Baywatch on Prime Video: https://www.primevideo.com/detail/Baywatch/0NU9YS8WWRNQO1NZD5DOQ3I8W6

• Playground: https://www.tryplayground.com

• ClassDojo: https://www.classdojo.com

• Jason Lemkin’s post about Replit: https://x.com/jasonlk/status/1946069562723897802

Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@lennyrachitsky.com.

Lenny may be an investor in the companies discussed.



To hear more, visit www.lennysnewsletter.com



Download audio: https://api.substack.com/feed/podcast/177909982/7930cad72c68cf7f2bb4cb5598843995.mp3
Read the whole story
alvinashcraft
19 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Episode 40 – The Art of Virtual Synth Design II : Surge XT : Open Source Powerhouse !

1 Share

The Art of Virtual Synth Design II :  Surge XT : Open Source Powerhouse !

"It's fun working on stuff that works!"

Hosted by Vin Curigliano of AAVIM Technology, I am joined by guest co-host Pete Brown of Microsoft and special guest Paul Walker, aka BaconPaul , who is a maintainer and one of the largest contributors on the Surge Synthesizer Team, and also a contributor to several other open source audio projects, including the CLAP plugin standard

We discuss Pauls early history with music and technology , and how he found his way to joining and forming the Surge team, and his ongoing role there.

We cover the history of Surge XT, and its initial development by Claes Johanson which he sold as a commercial product via his original company Vember Audio ( Released in 2005).  We discuss how the development eventuated going the open source route , and how that makes it unique regards allowing access to the source code to all developers, over more traditional closed loop development of other major synths.

We discuss how the Surge Synth Team formed, the importance of the team dynamic and tools, (both technological and sociological) , other projects in the Surge Synth Team beyond Surge XT, and the constantly expanding catalogue.

We take a deeper dive into the features and direction of Surge XT, its unique architecture and feature set, and discuss area's like MPE, CLAP, MT-ESP (Microtuning ), accessibility, etc.

We also discuss the current state of Music Technology and the incoming zeitgeist being driven by AI, and much much more. 

Host & Guest Links :

AAVIM Technology : www.aavimt.com.au

DAWbench : www.dawbench.com

Microsoft : www.microsoft.com

Pete Brown : https://twitter.com/Pete_Brown

Surge Synth Team : https://surge-synth-team.org/

VO :

Andrew Peters : www.andrewpetersvo.com

Music Themes :

Original DAWbench VI Theme Music composed by Rob John : Independent Music Productions : http://www.indmusicprods.com

DAWbench Radio Show ReMix by Erin McKimm : www.erinmckimm.com


All Rights Reserved : © AAVIMT 2025





Download audio: https://traffic.libsyn.com/secure/dawbench/DAWbench-Radio-Show-E40.mp3?dest-id=1394774
Read the whole story
alvinashcraft
19 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Deploying Dev Box Catalogs and Synchronizing with GitHub using Terraform

1 Share

In our previous article Microsoft Dev Box Creation using Terraform, we explored how to create Microsoft Dev Boxes using Terraform. Now, we’ll take the next step: **deploying Dev Box catalogs and synchronizing them with a GitHub repository**. This ensures that your development environments remain consistent, version-controlled, and easily maintainable across teams.

In this article, we will extend the setup by:

  • Deploying Dev Box Catalogs using terraform.
  • Synchronizing these catalogs with GitHub for version control.
Why Dev Box Catalogs?

Dev Box Catalogs enable organizations to define, manage, and share standardized development environments — tailored to specific teams or projects. A catalog acts as a blueprint, containing Dev Box definitions, base images, pre-installed tools, and necessary configurations to ensure every developer has a consistent setup.

What Makes Dev Box Catalogs Valuable?

By leveraging Dev Box Catalogs, teams can streamline how they deliver and maintain development environments. This approach ensures developers can focus on writing code instead of setting up and troubleshooting local configurations.

A Dev Box Catalog allows you to:

  • Define customized development environments with pre-installed tools and dependencies
  • Maintain consistent configurations for specific projects or teams
  • Use version-controlled templates to manage changes over time

You can read more about Dev Box Catalogs in Microsoft documentation: Add and configure a catalog from GitHub 

Pre-Requisites

Before deploying catalogs, ensure the following:

General Requirements

  • Azure Subscription with Dev Box enabled.
  • Terraform installed locally or via Azure Cloud Shell.
  • Azure CLI installed and authenticated.
  • GitHub repository for catalog synchronization.
Resources from Previous Blog

You should have already created:

  • Resource Group
  • Virtual Network and Subnet
  • Network Connection
  • Dev Center
  • Project
  • Dev Box Definition
  • Dev Box Pool

Now we will create the below set of resources as part of this deployment:

  • Dev Box Catalog

  • Azure Key Vault

Deploy the Dev Box Catalog and Key Vault to the 'West Europe' location.

Step 1: Create a Dev Box Catalog using Terraform

# This Terraform script creates a Dev Center Catalog in Azure. #Creating a Dev Center Catalog resource "azurerm_dev_center_catalog" "catalogs" { name = "devCenterCatalog" resource_group_name = azurerm_resource_group.resourceGroup.name dev_center_id = azurerm_dev_center.devCenter.id catalog_adogit { branch = "feature/devCenterCatalog" path = "/catalog" uri = "https://github.com/devCenter-org/devCenter-catalog" key_vault_key_url = "https://${azurerm_key_vault.this.name}.vault.azure.net/secrets/Pat" } }

**Explanation of Parameters: **
- `name`: Name of the catalog
- `resource_group_name`: Name of the Resource group
- `dev_center_id`: ID of the Dev Center resource
- `uri`: URL of your GitHub repository
- `branch`: Branch to sync (e.g., `main`)
- `path`: Directory inside catalog
- `key_vault_key_url`: Secure token for GitHub authentication

Step 2: Create Key vault and secure Your GitHub Token

resource "azurerm_key_vault" "this" { name = "devCenterCatalog-keyv" location = azurerm_resource_group.resourceGroup.location resource_group_name = azurerm_resource_group.resourceGroup.name enabled_for_disk_encryption = true tenant_id = data.azurerm_client_config.current.tenant_id soft_delete_retention_days = 7 purge_protection_enabled = false enable_rbac_authorization = true sku_name = "standard" } resource "azurerm_key_vault_secret" "github_pat" { name = "Pat" value = var.devops_pat key_vault_id = azurerm_key_vault.this.id lifecycle { ignore_changes = [ value ] } }

Step 3: Synchronize Catalog with GitHub

Once the catalog is linked to GitHub:

- Any changes in the GitHub repo will automatically sync to the Dev Center

- Developers can use updated definitions without manual intervention

Conclusion:

By deploying catalogs and syncing them with GitHub, you ensure:

- Consistent Dev Box environments

- Easy collaboration

- Automated updates

Read the whole story
alvinashcraft
20 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Mocking Statics in .NET – We Made the Impossible Possible

1 Share

The Untold Story Behind Typemock’s Breakthrough


🚧 The Problem Every Developer Knows

“You can’t mock statics.”
“You can’t test private methods.”
“You have to refactor first.”

Every .NET developer has heard it.
You hit a wall: a static class buried deep in legacy code, a private call controlling your logic, and a testing framework that just shrugs.

This is the story of how we made mocking statics in .NET possible, and why it changed everything.

public static class LicenseChecker
{
    public static bool IsValid()
    {
        return ExternalService.Ping();
    }
}

You can’t replace that call.
You can’t fake it.
You can’t test it – not without rewriting half your system.

Except… you can.


⚡ The Breakthrough in Mocking Statics in .NET

When Typemock started, we wanted to do something outrageous — mock what everyone said was unmockable.
We didn’t want developers to be punished for using statics or privates.
We wanted testing freedom.

So we did what every great engineer does when told “you can’t.”
We found a way.

Isolate.WhenCalled(() => LicenseChecker.IsValid())
       .WillReturn(true);

One line.
The static vanished.
Your test took control.


🧠 How It Works

Most mocking frameworks take the “safe” route. They force you to change your software to make it testable.

You add interfaces.
You create wrappers.
You invent abstraction layers that exist only for the sake of testing.
You manage endless versions of the same logic.

On paper, it looks clean. In practice, it’s fragile, complex, and full of mental overhead.
Every new developer has to understand a maze of fakes and indirections before they can even read your code.

That’s not engineering — that’s bureaucracy.

Complexity is not control.
Simplicity is.

Typemock took the opposite approach.
We intercept the actual method calls inside the CLR – not through proxies, not through code generation, but through direct runtime interception.

Instead of rewriting your code to make it testable, Typemock lets your code stay simple and still be fully testable.
That’s the power behind mocking statics in .NET without refactoring

This innovation was so novel it was granted a U.S. Patent for its design – recognizing it as a new kind of runtime interception technology.

The result?
Tests that respect your design instead of dictating it.
Fewer abstractions. Fewer layers. More clarity.
The simplicity that makes great software readable and great tests possible.


🔍 Why It Still Matters

Most frameworks evolve around language features.
Typemock evolved around developer intent – the belief that you should test any code you own, even if it was written years ago, by someone else, under impossible constraints.

That’s why the same engine that once shocked .NET developers now powers AI-assisted test generation, Insights visualization, and deterministic test execution – all still built on that original, impossible idea.

We didn’t just make testing faster.
We made it simpler.


💡 Try It Yourself

Stop rewriting code just to test it.
Experience the freedom that started it all.

👉 Download Typemock Isolator Free

No wrappers. No refactoring. Just control.

The post Mocking Statics in .NET – We Made the Impossible Possible appeared first on Typemock.

Read the whole story
alvinashcraft
20 minutes ago
reply
Pennsylvania, USA
Share this story
Delete
Next Page of Stories