Skip to main content

Command Palette

Search for a command to run...

IvanTheGeek Development Philosophy

Updated
•10 min read
đź’ˇ
Links may have referral or affiliate codes. This is not an endorsement of the product or service. If you do end up signing up, please consider supporting me and my efforts by using the provided link or codes.

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:

  1. Development insights - helps me improve the software

  2. 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