Skip to content

Feasibility Forecast

This document presents the feasibility analysis for migrating ERPNext from Python to Go, incorporating 3 weeks of observed intern velocity data from 7 teams (40-50+ interns). The core question: Can 3-5 interns migrate ERPNext in 3 months with unlimited AI credits?

DimensionCountMigration Implication
Python LOC316,679Core business logic to translate
JavaScript LOC73,932Frontend to rebuild or replace
Unique doctypes521Each needs model + logic + tests
API endpoints768Each needs equivalent in target language
Reports~177Each needs query + formatting logic
Shared controllers16 files, 23,212 linesDeep inheritance; most complex to migrate
Modules21Each with cross-module dependencies
COCOMO estimate~216 person-yearsTraditional development effort

A full ERPNext migration requires Frappe framework replacement, 521 doctype translations, 768 API endpoints, 177 reports, 73K lines of frontend, regional compliance, data migration tooling, and third-party integration points.

Reference Implementation (Experienced Engineer)

Section titled “Reference Implementation (Experienced Engineer)”
IterationPython SourceGo OutputTestsCalendar Time
Mode of Payment66 lines518 lines19~1 day
Tax Calculator1,334 lines1,240 lines24~1 day
GL Entry Engine878 lines2,608 lines32~1 day

Rate: ~760 lines of Python source per day per person. Code expansion factor: ~1.9x.

TeamActive ContributorsPrimary OutputVelocity Assessment
Epsilon3CI-ready parity tests, Groq integration, 6 PRsHigh
Zeta1 (solo)100% tax parity, RAG, Streamlit, TS SDKHigh
Beta2VS Code extension (1,700 LOC), Redis cache, 7 PRsHigh
Gamma2GraphRAG eval, Sales Invoice 89.1% coverageMedium-High
Alpha4RAG + Streamlit + submodule executionMedium
Delta3Python-Go transpiler, 3-phase analyzerMedium
Eta2RAG evaluation pipeline onlyLow
FactorOriginal EstimateObserved Reality
Intern vs experienced engineer0.3x0.2-0.5x (wide variance by team)
Learning curve (first 2-4 weeks)0.5x during ramp-upConfirmed — Weeks 1-2 were onboarding
AI tooling acceleration3-5x3-5x confirmed
Review and rework cycles0.7x0.5x (no systematic code review for most teams)
Coordination overheadNot estimated0.6x (significant for 40+ interns)
API quota / tooling frictionNot estimated0.8x (recurring blocker)
Net effective velocity~0.5-1.0x~0.3-0.8x of experienced engineer

Scenario A: Full ERPNext Replacement (3 months, 3-5 interns)

Section titled “Scenario A: Full ERPNext Replacement (3 months, 3-5 interns)”

Verdict: Not feasible.

Work ItemEffort Estimate
521 doctypes8-12 months
Framework replacement6-12 months
768 API endpoints2-3 months
177 reports1-2 months
Frontend (73K JS lines)4-6 months
Regional compliance2-3 months
Data migration1-2 months
Integration testing2-3 months
Total26-43 months of work

Even with unlimited AI credits and 5x acceleration, architectural decisions, domain understanding, and integration testing cannot be compressed below 5-6 months for a skeleton with major gaps.

DimensionGoKotlin
Type systemSimple, explicitRich (nullable, sealed classes)
Error handlingExplicit returnsExceptions + Result type
ConcurrencyGoroutines + channelsCoroutines
ORM ecosystemsqlx, GORM, EntExposed, Spring Data
Web frameworkChi, Echo, FiberKtor, Spring Boot
AI training dataModerateHigh (Java/Kotlin ecosystem)
ERP domain fitGood for microservicesBetter for full framework replacement
Existing work3 iterations completeNone

Recommendation: Go for microservice-style extraction (proven patterns). Kotlin if building a full Frappe framework replacement (Spring Boot ecosystem provides ORM, permissions, workflow out of the box).

UsageMonthly Estimate
Claude API (code translation, review, test gen)$2,000-5,000
GPT-4 API (alternative/comparison)$1,000-3,000
Embedding/indexing$200-500
MLflow + evaluation$100-200
Total AI per month$3,300-8,700
RoleCount3-Month Total (INR)
Interns53.75-6.0 lakh
Senior architect (part-time)11.5-3.0 lakh
Total5.25-9.0 lakh (~$6,300-10,800 USD)
CategoryLowHigh
AI credits$10,000$26,000
Human cost$6,300$10,800
Infrastructure$500$1,500
Total$16,800$38,300

Risk Assessment (Updated with Observed Data)

Section titled “Risk Assessment (Updated with Observed Data)”
RiskProbabilityImpactEvidence
Framework replacement underestimatedHighCriticalNo team attempted framework-level work
Controller inheritance complexityHighHighGamma’s golden dataset: 1/5 on GL precision
Self-reported accuracy inflationHighHighAlpha ~70% vs Epsilon/Zeta “100%” claims
Quality variance across teamsHighHigh5x quality gap between best and worst teams
Intern attrition / skill gapsHighHighEta inactive 2+ weeks, exam conflicts
API quota exhaustionMediumMediumMultiple teams reported rate limits
Regional compliance gapsMediumHighOnly Indian GST attempted
Data migration breaksMediumMediumNot yet attempted
PhaseCompressible?AI Impact
Understanding legacy codeYes (5-10x)High
Mechanical translationYes (10-50x)High
Test generationYes (3-5x)Medium-High
Architecture decisionsNoNone — needs human judgment
Domain validationPartiallyAI drafts, human verifies
Framework designNoNone — needs senior engineering

For a full ERPNext equivalent:

  • Traditional (no AI): ~5-8 years with a team of 10
  • AI-assisted: ~12-18 months with a team of 8-12
  • AI-assisted (interns only, core modules): ~3-6 months with a team of 5

The right question: “What is the minimum viable extraction that delivers production value?” For most businesses using ERPNext, the accounting engine IS the product. A Go accounting engine with clean APIs, extracted with full parity testing, deployed alongside ERPNext via Strangler Fig — that is achievable in 3 months with a focused team.

Key recommendation from observed data: Optimize for team quality over team size. A focused pod of 3-5 high-engagement interns with enforced PR review, provisioned API keys, and weekly parity checkpoints outperforms a 40-person cohort with variable commitment.