23 Years of Keeping Local Food Communities Connected

Most tech platforms chase growth, raise venture capital, and exit within a decade. LocallyGrown.net has been doing the opposite since 2002: staying small, staying sustainable, and staying committed to the same mission—helping farmers markets and local food communities thrive online.

This is the story of how a failed wholesale cooperative accidentally became agricultural infrastructure, survived three recessions and a pandemic, nearly died from its own success, and was completely rebuilt to last another 23 years.

Where It Started: A 1970s Homestead Kid

My story with local food didn't begin in 2002. It began in the 1970s as a child of "back to the land" parents. I grew up on a small homestead with a large garden, poultry, milk goats, and the joy that comes from tasting fresh food grown close at hand.

That sensibility never left me. By 1999, I was renting a hundred-year-old farmhouse outside Athens, Georgia, with my own garden providing the fresh ingredients I couldn't find at any store. In fall 2001, I got married and bought a patch of land with the dream of having our own small market farm.

I started attending planning meetings of the small Athens farmers markets that existed at the time, immersing myself in the local food community. I was a brand new farmer and a software developer—a rare combination that would turn out to matter more than I knew.

2002: The Failed Experiment That Changed Everything

It was at one of those farmers market meetings that Dan and Kris Miller, who ran their small farm Heirloom Organics, approached me with a problem: how could small local growers cooperate to reach more customers while staying independent?

Their original idea was straightforward—pool produce, create a single point of sale, focus on restaurants. They weren't looking forward to managing spreadsheets to keep everything organized, but maybe, they wondered, I could help them make a better way.

I built them a simple system using OSCommerce, a free open-source e-commerce platform. Dan and Kris valiantly ran their cooperative for two years, but the restaurant wholesale model didn't work—Athens was too inexpensive, and the farms were too small to supply commercial kitchens reliably.

But something unexpected happened during that failed experiment.

Individual customers started placing small orders through the primitive system I'd cobbled together. What began as a wholesale platform accidentally became something entirely new: what I believe was the world's first online farmers market.

2004: The Business Handoff

By 2004, Dan and Kris recognized that the technical platform and market management had become the heart of the operation. They handed the entire business over to me, and they remained as vendors—growing and selling their produce through the system.

This transition made me not just the platform developer, but the owner-operator of what would become the flagship Athens Locally Grown market. I was building e-commerce infrastructure for a movement that barely existed, during the dial-up internet era, before "farm-to-table" was mainstream.

2005–2006: Farmers Conferences and a Critical Realization

By 2005, our Athens market was attracting nationwide attention. I was being invited to farming conferences across the country—including the Southern Sustainable Agriculture Working Group (SSAWG) in New Orleans—to show off our system.

My initial advice was always the same: use the open-source tools I used (OSCommerce) and build your own version.

But conversations with farmers and market organizers quickly revealed how rare my combination of skills was. They had the agricultural expertise and community connections, but lacked the technical background to build and maintain complex e-commerce systems.

What they really needed wasn't advice on replicating our approach—they needed someone to build a system they could all use.

This realization changed everything. I wasn't just maintaining a local platform anymore; I was potentially building infrastructure for a nationwide movement toward local food systems.

2006: Betting Everything on Rails

Ruby on Rails had just hit version 1.0. Despite its newness, I saw the potential. Rails promised rapid development, elegant code, and the ability to build complex web applications quickly.

More importantly, Rails was perfect for the complex business model I was now tackling: multiple independent markets, each with their own growers, customers, pricing, and branding, all sharing the same underlying platform.

I made the decision to completely rewrite Athens Locally Grown in Rails. This wasn't a simple migration—it was a ground-up rebuild that took months of development.

2006–2011: When Everything Worked Perfectly

The Rails platform launched in 2006, and for five years, it hummed along perfectly. By 2010–2011, the numbers told the story:

Athens Market Alone

  • 60 active growers
  • 1,500 regular customers
  • 200+ weekly orders
  • $10,000–$12,000 in weekly sales

National Platform

  • 100+ markets across North America
  • Each market with its own subdomain
  • Independent branding and pricing
  • Shared technical infrastructure

The business model was elegant: no upfront costs, just 3% of sales, pay-as-you-go. I never had to market the platform heavily—the system grew organically through word-of-mouth in the local food community.

2011–2025: When Success Became a Prison

Rails 3.0.20 was released in 2011, and I successfully migrated to it. This would be my last major Rails upgrade for 14 years.

This wasn't due to neglect—I tried. My repo tells the story: multiple branches, months of weekend work attempting to upgrade to Rails 4, Rails 5, Rails 6. Each attempt failed due to critical dependency compatibility issues and the complex customization system that markets depended on.

The architectural decisions that had enabled rapid growth in 2006—deep Rails integration, custom HTML/CSS/JS injection, complex ActiveRecord relationships—became barriers to modernization.

Rails 3.0.20 worked, was stable, and served its purpose. But each failed upgrade attempt made the next one more daunting. Technology doesn't stand still, and the gap between my platform and the modern Rails ecosystem grew wider each year.

The Slow Slide Into Obsolescence

2015

Rails 4 required significant changes. I postponed the upgrade.

2017

Rails 5 introduced major architectural changes. The upgrade looked daunting.

2019

Rails 6 was released. I was now three major versions behind.

2020

COVID-19 changed everything overnight.

Traditional farmers markets closed down across the country. Markets everywhere turned to online models, fast. My system saw an influx of new markets that put tremendous strain on the aging infrastructure.

The technical debt that had been a nagging concern became a crushing weight. I kept a laptop within arm's reach no matter what I was doing—ready to clear session directories from grocery store parking lots, throw up emergency firewall rules, watch server metrics while other shoppers walked past my car.

2021

December 2021: Closing Athens Locally Grown

I was still, after all these years, the manager of Athens Locally Grown—responsible for both the technical platform serving markets nationwide and the physical safety of my local community during COVID.

The double burden took its toll physically and mentally. By late 2021, as other area markets returned to normal and customers had reasonable alternatives—and with my eldest kid starting college and my youngest about to start high school—the time seemed right.

In December 2021, I made the difficult decision to close Athens Locally Grown after 19 years.

With that closure, LocallyGrown.net lost its biggest, oldest, and most important customer: my own market. The platform that had started as infrastructure for the local community was now serving everyone except the community that created it.

2024

The system was running on Ruby 2.0.0 (from 2013) and Rails 3.0.20 (from 2011). Dependencies were breaking. Security vulnerabilities had no patches. The infrastructure was held together by digital duct tape and increasingly desperate workarounds.

January 2025: Rebuild or Die

By January 2025, I faced a stark reality: the system that had worked for 19 years was about to become extinct. Not broken—extinct.

Ruby 2.0.0 wouldn't compile on modern systems. If my servers failed, I couldn't rebuild them. Rails 3.0.20 had dozens of known security vulnerabilities with no available patches. Spam bot attacks regularly generated 500,000+ session files, exhausting filesystem limits and requiring manual intervention.

The constant vigilance was draining everything.

I Had Three Choices

1. Migrate to a Competitor

Abandon 23 years of custom business logic and force all markets to start over. Every row in my database represented growers, customers, and years of trust. Losing that wasn't an option.

2. Shut Down the Platform

Let the infrastructure fail and walk away from my life's work. Watch dozens of markets lose their entire online presence overnight.

3. Complete Modernization

Rebuild everything from scratch while keeping the business running. With a full-time job. With no budget. In six months.

Most consulting firms would quote six figures and six months with a full team. I had evenings, weekends, and no budget.

I chose the impossible option.

I couldn't bear the thought of abandoning everything I'd worked so hard to build. The alternative—watching 23 years of agricultural innovation disappear because I couldn't maintain obsolete code—was unacceptable.

Quietly, I gave myself until June to prove it could work. If not, 2025 would be the final year for LocallyGrown.net. I began working in secret, not wanting to signal that the platform was in trouble.

Just like those 4 AM development sessions back in 2006, it would take personal sacrifice to build something bigger than myself.

February–July 2025: Rebuilding Everything

I chose SvelteKit—a modern framework I'd been using in my day job as VP of Technology at a software consultancy. I knew it inside and out. If I was going to rebuild 23 years of software architecture while working part-time, I needed to go with the tools I knew best.

The Numbers

1,865 Commits over 6 months
3,000+ Automated tests written
100% Feature parity achieved
0 Data loss

July 2025: Launch Day

I'd taken two days off from my regular job, planning to relax, handle a few tech support requests, maybe squash a bug or two.

Instead, I got maybe eight hours of sleep total over the next four days.

The first manager email arrived within hours. Then another. Then another. Desktop views showing blank pages. The three-dollar flat fee disaster (charging $3 instead of 3%). Invoices no longer grouped by grower. Permissions bugs hiding essential buttons.

For two weeks, I fought fires. Fixed bugs. Deployed patches. Stayed up until dawn troubleshooting. But the platform stayed up. Markets kept running. Orders kept flowing.

By week three, the crisis was over. LocallyGrown.net wasn't just surviving—it was thriving on modern infrastructure that could last another 23 years.

Today: Built for the Next 23 Years

The 2025 rebuild wasn't just about fixing old code. It was about laying the foundation for the next two decades.

Today, LocallyGrown.net runs on modern infrastructure:

  • Fast, mobile-optimized SvelteKit frontend
  • Secure, well-tested TypeScript backend
  • Modern MySQL database
  • Clean architecture that's maintainable for decades

More importantly, it's still the same mission it's always been: helping farmers markets and local food communities thrive online.

Why This Matters to You

Longevity You Can Trust

23 years isn't luck—it's commitment. LocallyGrown has survived three recessions, a pandemic, and multiple waves of VC-funded competitors. The 2025 rebuild proves I'm not going anywhere.

I Understand Your World

I'm not a Silicon Valley tech bro who thinks farmers markets are trendy. I grew up homesteading. I've managed a farmers market for 19 years. I know what you need because I've lived it.

Solo Founder = Responsive Support

When you email me, you're talking to the person who wrote every line of code. No support tickets lost in a queue. No "we'll forward this to engineering." Just direct access to someone who cares.

Sustainable Funding = Sustainable Platform

I charge 3% of sales because that's what it takes to keep the platform running well indefinitely. Not to maximize profits. Not to satisfy investors. To serve farmers and markets for decades, not years.

The Next Chapter: Your Market

For 23 years, I've been building infrastructure that helps local food communities connect. The platform has evolved from OSCommerce to Rails to SvelteKit. Markets have come and gone. My own Athens market closed after 19 years.

But the mission has never changed: making it simple for farmers to sell online and neighbors to buy fresh.

The 2025 rebuild means LocallyGrown.net is positioned for another 23 years of serving local food communities. Modern technology. Proven business model. Unwavering commitment.

If your market is looking for a platform built to last—not just built to exit—I'd love to talk.

Compare us to alternatives →