IvanTheGeek Development Philosophy
Who I Am
I'm IvanTheGeek, and I build software in public. Everything I create is driven by one simple principle:
I build what I actually need to use.
If I'm frustrated with existing tools, I build better ones. If I need it, chances are others do too.
My Software Ecosystems
I'm building across two major domains:
Cheddar - Financial & Business Tools
Cheddar is my answer to the chaos of managing money and finances—both personal and business.
Managing money is hard and time-consuming. Between paychecks, insurance premiums, taxes, food costs, utilities, investments, important documents, estate planning, and more—it's overwhelming. Add in a business or side hustle? Now you're spending more time managing the business than running the business.
I want technology to handle this. Not through expensive, limited, data-mining subscription traps, but through open, honest, practical tools.
Cheddar is a comprehensive suite of financial tools covering many aspects of life and business:
Business Accounting:
- CheddarBooks - Complete business accounting system. Direct competitor to QuickBooks and Xero. For side hustles, micro businesses, and small businesses.
Personal Finance:
- Cheddar Money/Cash - Personal finance management: paychecks, spending tracking, net worth (assets & liabilities), budgeting, and more.
Specialized Tools:
LaundryLog - Expense tracking for professional drivers (solves the "no receipt" problem)
Cheddar Kitchen - Track groceries and food inventory
Cheddar Shopping - Compare products and pricing across stores
Cheddar Recipes - Store recipes, integrate with Kitchen for meal planning
Cheddar Menu/Restaurant - Point-of-sale for restaurants and food trucks
Cheddar Trade - Interface with brokers (like Schwab and Alpaca) for stock/ETF trading
Cheddar Tax - Real-time US tax calculations for personal and business
Cheddar Legal - Business compliance, formation documents, stock ledgers
Education:
PersonalFinance.Exposed - Educational content about personal finance
Accounting.Exposed - Educational content about accounting and business finance
FnTools - Developer & Technical Tools
FnTools focuses on technical infrastructure and developer-oriented projects:
MCP servers
Email servers
DNS servers
API libraries
Networking tools with particular interest in OpenWRT and making it easier to use
Other technical utilities and infrastructure
Both ecosystems follow the same core principles but serve different audiences—Cheddar for everyday people and businesses, FnTools for developers and technical users.
Core Principles
1. Open Source & Free Software
All my software is licensed under AGPLv3 (or as appropriate).
Free as in beer: No cost to use
Free as in freedom: Source code available, modify as you wish
Forever yours: Your copy, your control
Why this matters personally:
I'm tired of being exploited. I pay QuickBooks licensing fees for four micro businesses just to access the features I need. This isn't sustainable, and it's a primary motivator for building CheddarBooks.
The choice of AGPLv3 is strategic: it prevents big companies from taking my code, wrapping it in proprietary licensing, and creating the same locked-in revenue traps I'm trying to escape. If they want to use this code commercially, they must contribute back or negotiate. This creates a viable alternative to the subscription exploitation model.
I believe in the open and free exchange of information. Projects like Linux, Framework laptops, and countless open source tools prove this model works and can compete with—and often surpass—proprietary alternatives.
2. Privacy & Data Ownership
Your data belongs to you. Period.
Local-first: Data stored on your device by default
Portable: Export anytime in open formats
Offline-capable: Works without internet connection
Cloud sync when you need it:
I'm not against cloud functionality—I'm for user control. When you need remote access, syncing, or multi-device support:
Option 1: Use my provided servers - Convenient, managed, may have reasonable fees
Option 2: Self-host - Run your own server for complete privacy and control
Option 3: Local-only - Stay entirely offline if that's your preference
The key is you decide where your financial data lives and who has access to it.
3. User Experience is Critical
I get extremely frustrated using apps from large, profitable organizations that deliver horrible, frustrating user experiences. McDonald's app? Terrible. QuickBooks? Infuriating.
Good UX is a core principle, not an afterthought:
Intuitive interfaces that respect your intelligence
Thoughtful design appropriate to the use case (mobile-first where it makes sense, desktop-first where it doesn't)
Large, thumb-friendly controls for mobile experiences
Fast, responsive, pleasant to use
No deceptive or manipulative design practices
If I won't tolerate bad UX in my own tools, you shouldn't have to either. Building what I actually want to use means building apps that are genuinely pleasant to interact with.
4. Education & Knowledge Sharing
I've benefited enormously from information freely available on the internet since 1994. For over 30 years, I've learned from others who took the time to share their knowledge.
Now I want to give back.
Through PersonalFinance.Exposed, accounting.exposed, and integrated help within the apps themselves, I'm creating educational content that:
Makes hard-to-learn topics understandable
Links directly from apps for contextual, just-in-time learning
Helps people become more self-sufficient and independent
Empowers users to make better financial decisions
Hopefully helps people become more profitable
This isn't just documentation—it's about paying forward the help I received and breaking down barriers to financial literacy and business knowledge. Future generations will benefit from what we share today.
5. Data Contributions & Community Datasets
How data sharing works:
When users choose to share data, it serves two purposes:
Development insights - helps me improve the software
Community datasets - builds shared resources everyone can benefit from
Important clarifications:
Private data is redacted (not just anonymized)
Sharing is always opt-in
Reciprocal access model - you can use community data if you also contribute
Data is never sold or used for marketing
Example: LaundryLog's community location database. If you share your laundry location data, you gain access to the community's shared knowledge about where laundry facilities are and typical costs. Don't want to share? You can still use your own private data locally.
6. The Influence System
When considering any project, these factors are always involved: time, expertise, knowledge, money (resources), and motivation. Understanding this framework helps explain how influence works.
Ways to earn influence:
Expertise - Real-world accounting, bookkeeping, legal advice, technical knowledge (often MORE valuable than cash!)
Knowledge - Domain expertise in finance, taxes, business operations, networking
Time - Contributing code, writing documentation, helping other users in forums
Resources - Contributing financially through gifts or sponsorships
How influence affects my motivation:
The "motivation" factor in the framework is about what motivates ME to work on things. Your influence level and the type of influence you've earned directly affects my motivation to prioritize your requests.
Influence in practice - scenarios:
Scenario 1: Low/No Influence
User with no history: "I want to be able to do X"
Unless the idea appeals to me personally → likely ignored
Scenario 2: Medium Influence
Active forum member who regularly answers other users' questions
Has earned influence through helping the community
Their feature request → gets serious consideration
Scenario 3: High Influence
User creates mockup screens (even hand-drawn!) showing what they want
Explains the "why" - their use case and reasoning
Details the expected benefits
Arranges screens chronologically to show the flow
Much higher chance of incorporation
Important note on mockups: The fidelity doesn't matter. Polished Penpot prototypes are great, but hand-drawn boxes on paper (photographed and arranged) are equally valuable. It's not about design skill—it's about clearly communicating:
What would be expected
How it should work
Why it's needed
The more thought and effort put into explaining the request, combined with the influence a user has earned, the more likely it gets built. A well-documented request IS a form of contribution.
Why this matters:
Open source can be challenging. I'm building what I want first. If you want specific things, earn influence by contributing in ways that match your skills and resources. Show me you're invested, and I'll be motivated to help you.
7. Maximum Freedom & Practical Capitalism
I believe in maximum user freedom and choice, combined with practical, ethical capitalism.
The software is always free. Services and convenience may have costs.
Optional Hosted Services:
Some features benefit from shared infrastructure (like LaundryLog's community location database):
Option 1: Use my hosted service - May have reasonable fees covering hosting and maintenance
Option 2: Self-host - Server software is open source; run your own for free
Option 3: Don't use it - All apps work fully offline and locally
Funding Mechanisms:
There are three ethical ways to support development:
1. Paid Services
Traditional fee-for-service model
Hosting, managed infrastructure, premium features
You pay for convenience, not for the software itself
2. Business Sponsorships
Businesses can sponsor development as "Advertising"
Tax-deductible expense for the business
I receive it as advertising income through one of my micro-businesses
Both parties benefit tax-wise
Avoids sales tax complications
Earns significant influence
3. Personal Gifts
Individuals can gift me personally up to $19,000 in 2025 (per IRS annual gift tax exclusion)
IRS definition: "any transfer where full compensation is not received in return"
Not taxable income for me
No tax filing required for either party if under the limit
Earns influence, but I still choose how to use it (it's a gift, not payment for services)
If I can provide genuine value and people want to pay for it, that's fair and sustainable. This isn't about exploiting users—it's about creating a viable path to continue building great tools.
8. Practical, Not Dogmatic
F# development: Type-safe, functional, practical—but I'll use what works best
Import strategies: Free for manual imports and direct APIs; optional paid services like Plaid for auto-import
Hosting options: Desktop apps, mobile apps, server deployments, cloud hosting—whatever fits user needs
US tax focus: Because that's what I need; others can contribute international support
Pragmatism over purity. Results over ideology.
Who This Is For
My tools target people often overlooked or exploited by traditional software:
Cheddar users:
Hobbyists turning passion into income
Solopreneurs running one-person operations
Micro and small businesses (no or few employees)
Independent contractors (truckers, freelancers, gig workers)
Families trying to manage household finances
Anyone intimidated by traditional accounting software or frustrated by expensive subscriptions
FnTools users:
Developers building applications
System administrators managing infrastructure
Network administrators working with OpenWRT
Technical users wanting control over their tools
You deserve real tools that respect your intelligence, your privacy, and your wallet.
Friendly, Not Intimidating
Financial software doesn't have to be scary or corporate.
Cheddar brand identity:
Approachable, friendly tone (no jargon)
CheddarCat mascot for guidance and tips
CheddarBot for automation features
Orange/cheese color theme (warm, familiar)
"Cheddar" = slang for money, but also friendly and approachable
The goal is making financial management feel less daunting.
Building in Public
All development happens openly:
Transparent process: Development visible to everyone
Community-driven: Feedback and contributions welcome
Shared learning: The development journey is documentation
Iterative design: Real-world testing, continuous refinement
Building in public creates trust, enables collaboration, and ensures everyone benefits—not just me.
Want to participate?
Use the apps and share feedback
Contribute code, docs, or designs (even hand-drawn mockups!)
Share your expertise (accounting, legal, business, technical, networking)
Write articles or create videos
Help other users in forums
Fund development through gifts or sponsorships
Participate in community features (like shared location data)
Opt-in to share analytics (earns influence!)
Your level of involvement is up to you. Contribute what you can, in ways that match your skills and interests.
The Long View
This isn't a startup rushing to monetization or exit. This is:
Sustainable: Built to last, funded ethically
Incremental: Features added as genuinely needed
Patient: Quality over speed
Honest: Solving real problems, not chasing trends
My software grows organically, driven by real use and real needs.
Join the Journey
Whether you use the apps, contribute code, share analytics, write documentation, offer expertise, help in forums, or support through gifts or sponsorships—you're part of making better tools for real people.
This is software by people like us, for people like us.
Cheddar: Honest tools for honest work.
FnTools: Technical infrastructure that respects your freedom.
Built in public by IvanTheGeek