Peyvand
Rebuilding the DOS software my father wrote for lending funds, without losing a single rule
Peyvand is the banking software that more than a thousand of Iran's interest-free credit funds use every day: neighbours lending to neighbours, with a proper ledger. My father wrote it more than thirty years ago, in FoxPro, for DOS. I am rebuilding it without losing thirty years of rules nobody ever wrote down.
The DOS screen, as tellers still see it every morning
Image coming soon
It was a very good program, and nobody has been able to replace it. My father stopped working as a developer long ago, so he never upgraded it either. He has known for years that the funds were still using it, and he never had the chance to go back and start the upgrade.
The teller counter
Image coming soon
At each fund, someone records members' payments, loans and instalments on the old DOS screen and prints a receipt. Every fund runs the program with its own rules, and the new version has to do exactly the same for every one of them before anyone is asked to switch. The first piece is already built: PeyvandCloud sends members text-message reminders for their loan instalments, using each fund's own records.
The map recovered from the old system
Image coming soon
Nobody had the manual. Thirty years of each fund's own adjustments lived in the system's files and in the habits of the people using it, and rebuilding from the screens would have thrown all of that away. So before building anything, I wrote tools that read the original system's files directly and turned them into a complete map of how it works. Then I checked that map against real data from the funds.
Old and new side by side in shadow mode
Image coming soon
The move is planned in careful stages, with the new system running quietly alongside the old one until every fund's numbers match. Seventy-two funds' data has already been recovered into PeyvandCloud. It is the only project where the client is my father. I want to keep his legacy going.
PeyvandCloud: installment reminders by SMS
Image coming soon
A reminder arriving on a member’s phone
Image coming soon
Under the hood
A Python toolchain that reads FoxPro DBF, CDX, MEM and PRG files, including the old Iran System text encoding; 437,954 lines of source mapped; 11.8 million statements round-tripped without a single mismatch; PeyvandCloud on Laravel and Vue.
Integrations
- Asanak
- FoxPro 2.6 / DBF
- Excel import/export