conv.

All stories
TechActive · 33h

FoxDev Studio revives Visual FoxPro, 19 years after Microsoft killed it

A new IDE promises to run decades-old FoxPro projects unchanged, with 64-bit support and a Rust-based runtime.

What to know

  • FoxDev Studio claims to run Visual FoxPro projects from 1990s–2007 unchanged, supporting 64-bit file operations and avoiding costly rewrites.
  • The project inherits a critical security vulnerability from FoxPro's Database Container design: stored procedures stored as plain text can be trivially modified to execute arbitrary Win32 code.
  • Real-world impact: Ohio's voter registration database still runs on VFP with nominal MFA, making it vulnerable to direct file access attacks.
  • Developer sentiment is split: nostalgia for FoxPro's superior IDE and rapid development tools versus frustration with architectural limits that forced migrations decades ago.

The dispute Whether FoxDev's superior backward compatibility and revival of lost tools can overcome the platform's fundamental architectural weaknesses and security vulnerabilities that forced the industry to migrate away from FoxPro two decades ago. · positions read across 51 posts and comments

many voices

FoxPro's superior IDE and rapid development experience made it exceptional; its tools were never matched by .NET successors.

  • “I loved VFP so much, not for the language but for the tools, the screen designer, the db browser, the sql queries, all that power and user love was dumped in the trash can”

    Kuyawa · Hacker News ↗
many voices

FoxPro's architectural limitations (network file locking, 2GB table limits, single-user design) made it unsuitable for professional applications and forced migration to proper client/server systems.

  • “The low barrier to entry, high developer productivity… sucks when one of these systems outgrows the capabilities of the underlying platform…Seamless remote access to applications is the exact recipe Visual FoxPro apps fail at.”

    EvanAnderson · Hacker News ↗
some voices

FoxDev's revival is undermined by inherited security flaws in DBC design that allow trivial code injection and arbitrary execution.

  • “There's a huge security hole in the Database Container (DBC) design. For DBCs to be useful, they must be read/write to all users (there is no permissions scheme)…With a little technical knowledge, one can modify that INSERT trigger to…”

    mikestew · Hacker News ↗

boredjohnny FoxDev Studio creatormikestew Security researcher, former FoxPro developerMicrosoft FoxPro publisher (discontinued 2007)

How it unfolded 4 developments, newest first · click a bar or a number to jump articlespostscomments

Peak 5 pieces in one half hour at Yesterday, 2 AM; 55 pieces over 34 hours (2 articles · 2 posts · 51 comments) Sep 22, 4:56 PM — 3 pieces · 2 articles · 1 post — Newswires 2, Hacker News 1Sep 22, 5:26 PM — 3 pieces · 3 comments — Hacker News 3Sep 22, 5:56 PM — 3 pieces · 3 comments — Hacker News 3Sep 22, 6:26 PM — 2 pieces · 2 comments — Hacker News 2Sep 22, 6:56 PM — 3 pieces · 3 comments — Hacker News 3Sep 22, 7:26 PM — 1 piece · 1 comment — Hacker News 1Sep 22, 7:56 PM — 3 pieces · 3 comments — Hacker News 3Sep 22, 8:26 PM — quietSep 22, 8:56 PM — 1 piece · 1 comment — Hacker News 1Sep 22, 9:26 PM — 2 pieces · 2 comments — Hacker News 2Sep 22, 9:56 PM — quietSep 22, 10:26 PM — 2 pieces · 2 comments — Hacker News 2Sep 22, 10:56 PM — 1 piece · 1 post — Mastodon 1Sep 22, 11:26 PM — quietSep 22, 11:56 PM — 3 pieces · 3 comments — Hacker News 3Yesterday, 12:26 AM — 2 pieces · 2 comments — Hacker News 2Yesterday, 12:56 AM — quietYesterday, 1:26 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 1:56 AM — quietYesterday, 2:26 AM — 5 pieces · 5 comments — Hacker News 5Yesterday, 2:56 AM — quietYesterday, 3:26 AM — quietYesterday, 3:56 AM — 2 pieces · 2 comments — Hacker News 2Yesterday, 4:26 AM — quietYesterday, 4:56 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 5:26 AM — 2 pieces · 2 comments — Hacker News 2Yesterday, 5:56 AM — quietYesterday, 6:26 AM — quietYesterday, 6:56 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 7:26 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 7:56 AM — quietYesterday, 8:26 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 8:56 AM — quietYesterday, 9:26 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 9:56 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 10:26 AM — quietYesterday, 10:56 AM — 1 piece · 1 comment — Hacker News 1Yesterday, 11:26 AM — quietYesterday, 11:56 AM — 3 pieces · 3 comments — Hacker News 3Yesterday, 12:26 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 12:56 PM — 2 pieces · 2 comments — Hacker News 2Yesterday, 1:26 PM — quietYesterday, 1:56 PM — quietYesterday, 2:26 PM — quietYesterday, 2:56 PM — quietYesterday, 3:26 PM — quietYesterday, 3:56 PM — quietYesterday, 4:26 PM — quietYesterday, 4:56 PM — quietYesterday, 5:26 PM — quietYesterday, 5:56 PM — quietYesterday, 6:26 PM — quietYesterday, 6:56 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 7:26 PM — quietYesterday, 7:56 PM — quietYesterday, 8:26 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 8:56 PM — 1 piece · 1 comment — Hacker News 1Yesterday, 9:26 PM — quietYesterday, 9:56 PM — quietYesterday, 10:26 PM — quietYesterday, 10:56 PM — quietYesterday, 11:26 PM — quietYesterday, 11:56 PM — quietToday, 12:26 AM — quietToday, 12:56 AM — quietToday, 1:26 AM — quietToday, 1:56 AM — quietToday, 2:26 AM — quiet 12–4
yesterday8 AM4 PMnow · 2:56 AM ET
  1. 4

    Creator commits to adding DBC security hardening

    The FoxDev creator (boredjohnny) responded to the security concern by proposing to hash stored procedure text and embed it in the executable to prevent tampering, treating the runtime as the place where the inherited vulnerability can be fixed.

    “I would put in a hash of the stored procedure text into the built executable and refuse to run a container whose procs don't match.”
    — boredjohnny
    • >, Visual FoxPro, Visual Basic, Flash. I used to think one day we will have something that is not only faster, easier and scalable replacement of those.A person's perspective on the older dev tools being "superior" to today's newer tools depends on the things they want to build.I had jobs working on Foxbase/FoxPro for DOS and migrated those apps…

      jasodeHacker News21h agoview on Hacker News ↗
    2 more of the top 3 · 41 posts in this stretch
    • Flashback. When I was an adolescent, the dBase and Fox products were my first paid software development, and they were surprisingly accessible to even kids.I was only supposed to help assemble computer furniture, and maybe install networked Unix and PC software, but the retired Marine my mom worked for thought I had potential. "Hey, Kid", he would…

      neilvHacker News1d agoview on Hacker News ↗
    • Great job with this project, I bet there are VFP apps still running or even DOS FP apps.This takes me back to the first commercial software i ever worked on around 19 years ago, it was an accounting software written in Visual FoxPro. It's a super easy language to get started with programming and the fact that you can drag your widgets on the…

      pi-victorHacker News17h agoview on Hacker News ↗
    all of them →
  2. 3

    Election security concern: Ohio voter database runs VFP with weak MFA

    A commenter disclosed that Ohio's voter registration database is still running on Visual FoxPro and has TOTP-based MFA that can be bypassed by directly opening the underlying database files, illustrating the real-world security implications of the revival.

    “One of the "certified" (wrong terminology) Board of Elections voter registration databases for Ohio is written in VFP and has TOTP 'MFA' to comply with a Secretary of State mandate. You can just open the database files directly.”
    — EvanAnderson
    • Thanks, this is the most useful comment here. FoxDev reads the DBC the same way VFP does, so today it inherits the hole exactly. The runtime is actually the one place it can be fixed. I would put in a hash of the stored procedure text into the built executable and refuse to run a container whose procs don't match. Adding it to the list. Would you…

      boredjohnnyHacker News1d agoview on Hacker News ↗
    1 more of the top 2 · 2 posts in this stretch
    • One of the "certified" (wrong terminology) Board of Elections voter registration databases for Ohio is written in VFP and has TOTP 'MFA' to comply with a Secretary of State mandate.You can just open the database files directly.I hang my head.

      EvanAndersonHacker News1d agoview on Hacker News ↗
    all of them →
  3. 2

    Security researcher flags DBC stored procedure vulnerability

    A commenter identified a critical security design flaw in FoxPro's Database Container (DBC) format: stored procedures are stored as plain text in memo fields and run with full Win32 API access, allowing trivial modification of triggers and code execution. The FoxDev creator acknowledged the issue and committed to adding runtime verification.

    “There's a huge security hole in the Database Container (DBC) design…With a little technical knowledge, one can modify that INSERT trigger to whatever you like.”
    — mikestew
    • I worked with a physician's office in 2006, and the lead physician had cobbled together a system for patient tracking using Visual FoxPro. It was a monstrosity, and using it over a network drive gave all sorts of file locks and issues with multiple people changing the same record (usually the physician and front of house staff when checking the…

      progmetaldevHacker News1d agoview on Hacker News ↗
    2 more of the top 3 · 5 posts in this stretch
    • Here’s my problem with reviving FoxPro in any form: there’s a huge security hole in the Database Container (DBC) design. For DBCs to be useful, they must be read/write to all users (there is no permissions scheme). DBCs have stored procedures that can run any FoxPro code, including Win32 calls made from the FoxPro runtime. The stored procedures…

      mikestewHacker News1d agoview on Hacker News ↗
    • Hey, I got to mention this recently! One of my bizarre claims to fame was writing this little tool[0] a few employers back to convert Visual FoxPro database files to PostgreSQL as part of a migration. For a while we had to run it as a cron job so that people could to data entry in an old VFP app but others could run fast reports on our web app…

      kstrauserHacker News1d agoview on Hacker News ↗
    all of them →
  4. 1

    Hacker News users debate FoxPro nostalgia and practical concerns

    The announcement prompted mixed reactions from former FoxPro developers expressing nostalgia for the language's developer experience while raising concerns about its architectural flaws—network file locking issues, security vulnerabilities in stored procedures, and scalability limitations that pushed many away decades ago.

    “FoxDev Studio opens the projects, forms and tables you already have and runs them the way you remember: no rewrite, no conversion, no export step.”
    — FoxDev Studio documentation · source
    • The low barrier to entry, high developer productivity, and bespoke and "highly conforming to proprietary business processes" nature of resulting applications are all really cool, but man, it sucks when one of these systems outgrows the capabilities of the underlying platform.I shudder at the though of businesses trying to access DBF files on…

      EvanAndersonHacker News1d agoview on Hacker News ↗
    2 more of the top 3 · 3 posts in this stretch
    • All these years later, Microsoft Access is still alive and kicking, and just three years ago, the 32bit version got Large Address Aware (LAA) support! Technically my very first software job was writing VBA in Microsoft Access for a few weeks and they're probably still running it (there's no drop in replacement for it or cheap way to migrate away)

      jordandHacker News1d agoview on Hacker News ↗
    • My father built several projects in FoxPro. I was too young in the ’90s to remember much of it, but I’m sure he’ll be super happy to check this out. The kicker is that we’ll probably need to buy a floppy disk drive and dust off some old boxes to find them.

      meeritaHacker News1d agoview on Hacker News ↗
    all of them →
  5. background

    FoxDev Studio launches as Visual FoxPro revival — FoxDev Studio, a new IDE, is announced at foxscript.org with the promise of running existing Visual FoxPro projects unchanged. The tool reads files directly from disk without conversion, supports 64-bit architecture to overcome original 32-bit limits, and uses a Rust-based runtime compiled to WebAssembly to maintain compatibility with legacy code.

Also covered reported alongside — the timeline has no entry for these yet

  1. first by HN Best, 1d ago · also HN Frontpage

What people are saying 15 voices from 1 site · best of 51 · verbatim

Still unanswered
  • Will the FoxDev creator's proposed DBC hashing solution adequately prevent stored procedure tampering?
  • Are there other critical vulnerabilities in the FoxPro design that FoxDev has inherited?