Learning Path for Solar Automation
A guided curriculum for solar engineers who want to automate AutoCAD drafting with Python, C#, or both. Start with the foundation, pick a track, ship a script.
Foundation
Install the tools. Two posts. Plan for an afternoon. Every track below assumes you finished one of these.
Getting Started with Python for AutoCAD: From Zero to a Working Script in 45 Minutes
A walkthrough for solar engineers who've never written Python — install Python, set up VS Code, and run a script that reads panel coordinates from an AutoCAD CSV export. Pre-warned for every install gotcha.
Getting Started with Visual Studio for AutoCAD: From Zero to a Working Plugin in 60 Minutes
A walkthrough for AutoCAD engineers who've never written C# — install Visual Studio, set up an AutoCAD plugin project, and load a working Hello World command via NETLOAD. Pre-warned for every install gotcha.
Pick a track
Three parallel paths through the curriculum. Take the one that fits the work in front of you. They share the same foundation and crosslink where it makes sense.
Python
From your first script to a production PDF parser and 200-line stringer. For solar engineers who already know AutoLISP.
Python Functions, Classes, and Dataclasses for AutoLISP Programmers
How Python's def, class, and @dataclass map to AutoLISP defun and list-based data — translated for solar engineers who think in LISP and need to read modern Python code for AutoCAD work.
Reading SolarEdge PDFs in Python: A Beginner's Guide to pdfplumber
How to install pdfplumber, open a SolarEdge Designer PDF, and extract text and tables for AutoCAD import — a friendly introduction before tackling the production pitfalls.
Shipping Python Scripts for Solar: From VS Code to a Coworker's Desktop
How to run a Python solar script outside VS Code, package it for a coworker who doesn't have Python installed, and schedule it to run overnight — the three deployment paths every solar engineer needs.
Parsing SolarEdge Designer PDFs for AutoCAD with Python and pdfplumber
How to extract panel positions, string assignments, and inverter mappings from a SolarEdge Designer report PDF for AutoCAD import using Python — and the four pitfalls that will bite you.
Stringing Solar Panels for AutoCAD with Python: A 200-Line Solver You Can Run Today
A working Python solver for grouping solar panels into strings for AutoCAD drafting — what it does, what it leaves on the table, and why production tools stack four algorithms instead of one.
K-Means for AutoCAD Solar Homerun Routing: When It Works, When It Fails, and What to Use Instead
Why k-means is the wrong tool for grouping solar homeruns in AutoCAD the moment your roof has obstructions, plus the upgrade path that actually handles capacity constraints.
C#
From a Hello World plugin to a real AutoCAD solar drafting plugin with auto-load. The .NET path for AutoLISP veterans.
How to Write a Custom AutoCAD Solar Plugin in C# with Claude as Your Pair Programmer
A working guide for solar engineers who want to build their own AutoCAD plugin in C# — the setup that compiles, the Transaction trap, the selection-set wall, and where Claude actually helps versus where it hallucinates LISP from 2005.
Why Your Solar AutoLISP Routines Break on AutoCAD 2024+ (And How to Migrate to .NET)
AutoCAD 2024 quietly broke selection set calls that worked since 2003. Here's what changed, why (command) is 66x slower than entmake, and the migration path solar engineers actually need.
Concepts
The algorithms that power every solar stringing plugin, explained without the code. Read these before the deep-dives.
What is an Auto-Stringer? The Algorithm Behind Every Solar Stringing Plugin for AutoCAD
A plain-English explanation of what auto-stringers actually do under the hood — why solar stringing is computationally hard, and the algorithmic ingredients production tools use to solve it.
K-Means Clustering Explained for Solar Engineers: How It Groups Panels (and Where It Fails)
A no-math explanation of how k-means clusters solar panels into groups for AutoCAD homerun routing — and why it produces wrong answers on real rooftops with obstructions.
Or skip the curriculum entirely
Branch is the finished plugin. Drafting automation that runs inside AutoCAD without you writing a line of Python or C#. We do the drafting. You do the engineering.
See how Branch works