The first 30 days of a software project: what good looks like

Delivery · 5 min read

The first 30 days of a software project: what good looks like

AK
Aamreen Khan
Managing Member · October 2026

You’ve signed. Now what? The first month sets the tone for everything after — and it’s also when you can still tell, cheaply, whether you hired well. Here’s what the first 30 days look like when a project is run properly, week by week, so you know what to expect and what to demand.

Week 1: Names, access, and a working rhythm

Kickoff is logistics done seriously: one named owner on each side, a shared channel where questions live (not scattered emails), access granted to the systems and data the work needs, and the release calendar on paper — dates you can hold everyone to. Boring, and it prevents half of all project drama.

Weeks 1–3: Discovery in the rooms where work happens

Workshops with the people who do the job, artifacts collected, the requirement document and wireframes taking shape and coming back to you for correction. Your effort peaks here — a prepared client makes these weeks sing. Expect drafts you can mark up, not silence.

Week 4: The signed blueprint and the first real slice

By the end of the month: a requirement both sides read and signed, wireframes of every screen, a ranked feature list, the confirmed price and phase plan — and development starting on the first slice, with the first working release scheduled just weeks out. From here, the rhythm is set: build, review, adjust, repeat.

The early-warning signs, while leaving is cheap

Thirty days in, worry if: nobody has interviewed the people who’ll use the system; questions get answered with reassurance instead of documents; there’s no date on which you’ll touch working software; or scope conversations feel slippery already. These rarely improve at month six. The inverse — named owners, written artifacts, a visible calendar, honest “here’s what we don’t know yet” — is what hiring well looks like up close.

The 30-day scorecard: an owner on each side, discovery done with the real users, a requirement you read and signed, and a date — weeks away, not months — when you touch working software.

What we ask of you in return

The first month is a partnership audition for both sides: we need your people in the workshops, your honest corrections on the drafts, and an hour of attention when a release lands. Give a good vendor that, and the next eleven months are mostly the calm repetition of month one — which is exactly the point.

Ready for a month one like this?

Start with the call that starts the calendar.

Book a free consultation

Legacy software: when to modernize, and when to leave it alone

Custom Software · 5 min read

Legacy software: when to modernize, and when to leave it alone

SS
Shubham Semwal
Full Stack Developer · October 2026

Every established business has one: the old system. Written years ago, understood by one person, powering something important. Vendors love to say it “needs modernizing” — usually right before quoting a rewrite. The truth is more useful: some legacy systems genuinely need replacing, some need a careful renovation, and some are best left exactly where they are. Here’s how to tell which one you own.

Leave it alone when it’s quietly winning

Old is not the same as broken. If the system is stable, does its one job well, changes rarely, and the platform still receives security updates — the boring move is the right one. “It’s not modern” is an aesthetic complaint, not a business case. Spend the money where a problem actually lives.

Modernize around it when the core is sound

The most underrated option is the middle one: keep the reliable core and build modern pieces around it. A web portal in front of an old database. An integration that frees its data for other systems. A new module for the workflow that changed, while untouched workflows stay untouched. This is renovation instead of demolition — a fraction of a rewrite’s cost and risk, and often it buys the old system another productive decade.

Replace it when the ground is shifting

The genuine replacement signals: the platform no longer gets security patches; the one person who understands it is retiring; every business change takes months because nobody dares touch the code; or the system actively blocks what the business needs next. When those stack up, a rewrite stops being vanity and becomes maintenance — and it should be done the way any build should: discovery first, data migrated like a release, and the old system retired module by module, not in one heroic weekend.

Three honest questions: Is it still safe to run? Can anyone maintain it? Does it block what the business needs next? Three good answers — leave it. One bad one — renovate around it. All three bad — replace, carefully.

Beware the rewrite reflex

Developers (yes, us included) are drawn to clean slates; businesses are better served by working software. When we assess a legacy system, the deliverable is a recommendation with the trade-offs and prices attached — including, regularly, “keep it, and here’s the small thing to fix.” A vendor whose every assessment ends in a rewrite isn’t assessing; they’re selling.

Got an old system and a decision?

We’ll assess it honestly — even if the answer is “keep it.”

Book a free consultation

How to budget for a software project (the worksheet our accountant uses)

Consulting · 6 min read

How to budget for a software project (the worksheet our accountant uses)

FM
Farheen Mirajkar
Accountant · September 2026

Most software budgets are one number: the build quote. Then reality invoices you for everything around it, and the project that was “on budget” somehow isn’t. Here’s the worksheet I actually use — five lines instead of one — so the number you approve is the number you spend.

Line 1: Discovery — small, fixed, first

A fixed-price discovery engagement produces the requirement, wireframes, and the real build quote. Budget it separately and treat it as de-risking money: whatever you decide afterward, the blueprint is yours, and it’s the reason lines 2–5 are facts instead of hopes.

Line 2: The build — phased, not swallowed whole

Discovery ranks features by business value, which lets you budget phase one around the features that carry the return and park the rest. A phased budget also matches spending to evidence: each release shows working software before the next check clears. Cash flow prefers this; so does risk.

Line 3: Contingency — 10–15%, written down

Something true will be discovered mid-build — a workflow nobody mentioned, an edge case that matters. A written contingency turns that moment from a crisis into a line item. If discovery was thorough, you often don’t spend it; if you didn’t budget it, you spend it anyway, plus stress.

Line 4: The year-two line

Hosting, updates, watching, and small fixes: plan 15–20% of build cost per year. I’ve written a whole maintenance budget guide; the summary is that software you don’t maintain doesn’t get cheaper, it gets brittle. Put the number in the approval memo so nobody is surprised by year two.

Line 5: The people cost on your side

The budget line everyone forgets isn’t money — it’s hours. Someone on your team reviews releases, answers questions, tests with real data, and champions the rollout. Roughly an hour or two per release, plus training time at launch. Budgeting it makes it happen; projects where the client has no time are the ones that drift.

The five-line budget: discovery + phased build + 10–15% contingency + 15–20%/year to run it + your team’s hours. If a proposal shows you only line 2, you’re looking at a fraction of the truth.

The payoff of budgeting this way

A five-line budget makes vendors comparable (ask each one for all five), makes the ROI conversation honest (returns get measured against the whole cost), and — my favorite part — makes the project boring financially. Boring budgets are the ones that finish.

Want all five lines quoted?

We budget the whole truth — discovery through year two.

Book a free consultation

Email marketing for service businesses: the unglamorous channel that still wins

Marketing · 5 min read

Email marketing for service businesses: the unglamorous channel that still wins

AK
Abid Kini
Marketing & SEO · September 2026

Social platforms change their rules every quarter. Ad costs only go up. Meanwhile the channel with the most boring name keeps quietly outperforming both: a list of people who asked to hear from you, reached in the inbox they check every day. For service businesses — where buying cycles are long and trust decides — email is usually the highest-return marketing you’re not doing properly.

Why it works when the sales cycle is slow

Nobody hires a software firm, a law office, or a contractor the day they first hear of them. The gap between “interesting” and “ready” can be months — and email is how you stay usefully present through it. When the moment comes, the business they’ve been learning from for six months has an unfair advantage over the one they’d have to Google.

The formula: one useful email, on a schedule you can keep

Forget daily blasts. A monthly note that answers one real customer question — the same discipline as publishing answers, not announcements — beats any clever campaign you’ll abandon by March. If you already write articles, you’re 90% there: the email is the article’s best idea in three paragraphs, with a link. Ours takes an hour a month because the blog does the heavy lifting.

Building the list without being creepy

The list is permission, so earn it: a simple signup on the website (“one useful email a month, no spam”), an invitation at the end of every project, a checkbox on the contact form. Never purchased lists — they poison deliverability and trust in one move. A few hundred people who chose you outperforms ten thousand who didn’t.

Measure it like everything else

Opens are vanity; replies, clicks and booked calls are the score. Track email as a source in the same four-number framework as every channel — leads, source, cost per lead, close rate — and give it two quarters before judging. Compounding channels start slow; that’s the price of channels you own.

One honest email a month, to people who opted in, measured on replies and booked calls. Unglamorous — and after a year, often the channel with the best cost per lead on the sheet.

Want the machine set up?

Signup, list, monthly send, tracking — we’ll build the whole loop.

Book a free consultation

Website security basics every business owner should know

Security · 5 min read

Website security basics every business owner should know

PB
Pracheta Bidarkar
Quality Assurance Manager · September 2026

You don’t need to become a security expert to run a safe website — but you do need to know which five questions to ask, because most small-business breaches aren’t clever attacks. They’re bots walking through doors nobody remembered to close. Here’s the owner’s checklist, in plain language.

1. Updates are the whole ballgame

The overwhelming majority of website compromises exploit a known hole in an outdated plugin, theme, or platform — a hole that was patched months before, by an update nobody applied. Someone must own the monthly ritual: update, then click through the site. Unmaintained plugins are worse than outdated ones; if it hasn’t seen an update in a year, replace it. (This ongoing care is precisely the “keeping the lights on” bucket from our maintenance budget guide.)

2. Logins: unique passwords, second factor, fewer admins

Bots try stolen password lists against your login page around the clock. A password manager, two-factor authentication for every admin account, and a hard look at who actually needs admin rights closes that door. Departed employees and old vendor accounts should lose access the day the relationship ends.

3. Backups you’ve actually restored

A backup you’ve never test-restored is a hope, not a plan. You want automatic daily backups, stored somewhere other than the website’s own server, and one rehearsed restore so you know the recovery takes an hour — not a panicked weekend. Ask your host or your developer to show you, not tell you.

4. HTTPS everywhere, forms included

The padlock isn’t decoration — it encrypts what visitors type into your forms. Every page should force HTTPS, and anything a form collects should arrive by an authenticated route (and only collect what you actually need — the safest data is the data you never stored).

5. Someone is watching

Uptime monitoring, login-attempt limits, and a monthly glance at users and file changes turn “we were hacked for six weeks” into “we caught it Tuesday.” None of this requires enterprise budgets — it requires an owner: a person (or your development partner) whose job description includes these five items.

Five questions for whoever runs your site: Who applies updates, and when? Is two-factor on? When did we last restore a backup? Is HTTPS forced? Who would notice a break-in? Confident answers to all five put you ahead of most of the internet.

Nobody owns these five?

We’ll take ownership — updates, backups, monitoring, done.

Book a free consultation

Mobile app or mobile website? How to pick for your business

Mobile · 5 min read

Mobile app or mobile website? How to pick for your business

SB
Sandeep Bisht
Front End Developer · September 2026

“We need an app” is often the opening line — and sometimes the right one. But an app is a commitment: stores, updates, and convincing people to install one more thing. Frequently the same goal is met by a great mobile website for a fraction of the cost. Before anyone debates native versus cross-platform, this is the decision that comes first.

The one-question shortcut

How often will the same person use this — and will they use it enough to install it? Daily or weekly use by the same people (your crews, your repeat customers, your warehouse floor) earns a home-screen icon. Occasional use by ever-new people — finding you, reading about services, requesting a quote, even placing the odd order — belongs on the mobile web, where there’s nothing to install and every visitor from Google can act immediately.

What only an app can do

Choose an app when you need what the browser can’t reliably give: barcode scanners and printers, dependable offline work in a warehouse with dead zones, push notifications that actually get seen, or deep camera/GPS workflows. That’s why our field and floor tools are apps — the native or cross-platform question comes after this one, and only if the answer here is “app.”

What the mobile web does better than people think

A well-built mobile site — fast, thumb-friendly, with login where needed — handles browsing, ordering, booking, payment and account management beautifully. It’s one codebase, updated instantly for everyone, indexable by search engines, and shareable as a plain link. A customer portal on the mobile web often beats an app nobody installs; the best app in the world converts nobody if it sits uninstalled.

Rule of thumb: new and occasional users → mobile website. The same users, frequently, or hardware and offline needs → app. Many businesses rightly end up with both — a web portal for customers, an app for the crew.

The budget angle

Starting on the mobile web is also the cheaper way to be wrong: you learn what users actually do, and if usage patterns scream “app,” you build it then — informed, and for the workflows that proved themselves. That sequencing has saved our clients real money more than once, and it’s the kind of call we’ll make with you honestly, even when it’s the smaller project.

App, site, or both?

Bring us the goal — we’ll pick the platform together.

Book a free consultation

The anatomy of a requirement your team will actually read

Discovery · 5 min read

The anatomy of a requirement your team will actually read

AK
Aamreen Khan
Managing Member · August 2026

Most requirement documents die unread. Forty pages of “the system shall,” a glossary nobody consults, and by page six every reviewer is skimming — which defeats the entire point, because a requirement only protects you if both sides actually absorbed it. After years of writing these for real projects, here’s what the readable kind looks like.

It’s organized by what people do, not what the system has

Chapters like “Receiving a shipment,” “Quoting a customer,” “Closing the month” — not “Module 4: Data Layer.” When the document mirrors the workday, the person who does that job can read their chapter in ten minutes and tell you exactly what’s wrong with it. That correction, made on paper, is the cheapest fix your project will ever get.

Every requirement answers three questions

Who does this, what do they accomplish, and how do we know it worked. “The warehouse lead scans a pallet and the system assigns it a bin; the pallet appears in bin inventory immediately” — testable, unambiguous, and readable by anyone. If a sentence can’t be turned into a test, it isn’t a requirement yet; it’s a wish. This is exactly what our QA team builds test cases from, which is why testing starts before the code does.

The pictures carry half the weight

Wireframes of every screen sit next to the words. People who would never catch a missing field in prose will spot it instantly in a picture of “their” screen. The rule we hold ourselves to: if a screen exists in the plan, it exists as a drawing both sides signed.

It says what’s out, not just what’s in

The most valuable page is often the one titled “Not in this phase.” Scope disputes don’t come from what was written down; they come from what each side silently assumed. Writing the exclusions — with a parking lot for phase two — turns future arguments into calm roadmap conversations.

The test of a requirement document isn’t completeness — it’s whether the people who’ll live in the system read it, understood it, and corrected it before anyone wrote code.

Why this is worth insisting on

This document is what discovery produces, what the price is built on, what each release is tested against, and what keeps everyone honest for the life of the project. Whoever builds your software, insist on one you can actually read — and read it. The hour it takes is the best-leveraged hour in the whole budget.

Want one for your project?

Discovery produces exactly this document — and it’s yours to keep.

Book a free consultation

What an AI receptionist actually does for a small business

AI Implementation · 5 min read

What an AI receptionist actually does for a small business

SS
Shubham Semwal
Full Stack Developer · August 2026

Every inquiry your business misses has the same shape: it arrived outside office hours, or while everyone was busy, or as the fourth identical question of the day that nobody raced to answer. An AI receptionist exists for exactly those moments — a conversational assistant on your website that greets visitors, answers the questions you’ve taught it, and captures the lead while interest is hot. Here’s what that actually means in practice, without the hype.

What it does well

The strong suits are consistency and availability. It answers instantly at 11 p.m. on a Sunday. It gives the same accurate answer about your services, hours, and process the hundredth time as the first. It qualifies visitors with a few polite questions — what they need, what problem they’re solving — and books the follow-up or captures contact details, so your team walks into every conversation already briefed. For a business whose leads arrive through the website, that’s the front desk that never steps away.

What it shouldn’t do

An AI receptionist should not improvise prices, make commitments on your behalf, or bluff past questions it can’t answer. The honest design — the one we build to — keeps it inside the knowledge you’ve given it and hands off gracefully: “that’s one for the team, let me set up a call.” The goal isn’t replacing the humans who close business; it’s making sure they only spend time on conversations worth having.

The math that justifies it

Count your missed calls and after-hours form abandonments for a month, multiply by what a customer is worth, and the case usually makes itself. Like every AI project we take on, it should start from a cost you can measure — this is a textbook case of the pattern from our where AI pays off article: a priced workflow, embedded where the work already happens, with humans kept on the judgment calls.

A good AI receptionist is judged on two numbers: inquiries that used to be missed and are now captured, and hours your team used to spend on repeat questions. Both are measurable within the first month.

See one working right now

You don’t have to imagine it — the chat assistant in the corner of this very page is our own AI receptionist at work. Ask it about our services, our process, or tell it what you’re trying to build. And if you’d like one trained on your business, answering your customers’ questions on your website, that’s a conversation we’d genuinely enjoy — it’s software we use ourselves.

Missing after-hours inquiries?

Get an AI receptionist trained on your business.

Book a free consultation

Is your marketing working? The numbers that actually matter

Marketing · 5 min read

Is your marketing working? The numbers that actually matter

AK
Abid Kini
Marketing & SEO · August 2026

Marketing reports love big numbers: impressions, followers, sessions, reach. They go up and to the right, everyone nods, and nobody can say what they bought. If you run a business, you need exactly four numbers — and the discipline to ignore most of the rest.

1. Leads: how many people raised a hand

Form submissions, calls, chat conversations, booked consultations — actions by a real person who wants to talk. This is the first number that means anything, and it’s why your website’s forms and phone number need tracking before your marketing does. Traffic that never becomes a lead is scenery.

2. Source: where each lead came from

Google search, a referral, a LinkedIn post, the article they read first — without the source, you can’t repeat what worked or cut what didn’t. This is what tools like Google Analytics (wired through Tag Manager) are actually for: not admiring traffic, but attributing leads. Ask “which channel produced the customers, not the clicks?”

3. Cost per lead, by channel

Divide what you spend on a channel — ads, content, tools, time — by the leads it produced. Suddenly the comparison is honest: the “cheap” channel producing nothing is expensive; the “pricey” one filling your calendar is a bargain. This single division settles most marketing arguments.

4. Close rate: which leads become customers

The final honesty check. A channel can produce plenty of leads that never buy — and a quiet channel can produce three leads a month that all close. Track leads through to won/lost, even in a simple spreadsheet, and the picture often flips.

Leads, source, cost per lead, close rate. Everything else — impressions, followers, bounce rate — is diagnostic detail, useful only when one of the four moves.

The monthly habit

Once a month, one page: the four numbers by channel, this month vs last. Double down where cost per lead is low and close rate is high; fix or cut the rest. It takes twenty minutes and beats any dashboard — because it ends in a decision, not a scroll. If your current setup can’t produce that page, that’s the first thing to fix; it’s exactly the plumbing we set up in our marketing engagements.

Can’t produce the one-pager?

We’ll set up tracking that ends in decisions, not dashboards.

Book a free consultation

From spreadsheet to system: migrating your data without losing your mind

Quality Assurance · 5 min read

From spreadsheet to system: migrating your data without losing your mind

PB
Pracheta Bidarkar
Quality Assurance Manager · August 2026

The new system is built, tested, ready — and then comes the moment everyone underestimated: getting years of data out of the old spreadsheets and into it. Data migration is where good projects earn their reputation or lose it, because the first thing users do in a new system is look up something they already know. If it’s wrong, trust dies on day one. Here’s how we keep that from happening.

Your data is messier than you think — and that’s normal

Every spreadsheet that’s lived a few years contains the same fossils: the customer entered three ways (“ACME”, “Acme Inc”, “acme houston”), dates in two formats, the notes column doing the work of five real fields, and rows nobody dares delete. None of this means your team was careless — spreadsheets simply don’t enforce rules. The migration is the moment those rules finally get applied, so we start with a profiling pass that surfaces every inconsistency before anyone writes import code.

Decide what moves, what merges, what dies

Not everything deserves to make the trip. Duplicates get merged by rules you approve (“same email = same customer”). Dead records get archived, not imported. Ambiguous rows go on an exceptions list for a human — usually far shorter than feared — instead of silently importing as garbage. The output of this stage is a written mapping: every old column, where it lands, and what happens to the misfits. It’s the requirement document of the migration.

Rehearse it like a release

We treat migrations exactly like software releases, because they are: run the full import on a copy, verify the counts (every row accounted for — imported, merged, or exception-listed), then have the people who know the data spot-check the records they know best. The go-live migration should be a rerun of a rehearsal that already passed — boring by design. And the old spreadsheet? Kept read-only, as the audit trail, never as the working copy.

The rule that saves migrations: nothing disappears silently. Every record is imported, merged by an approved rule, or on a named exceptions list. If the numbers don’t reconcile, you don’t go live.

Why this is a QA story

In our warehouse work, migrated inventory data had to match the physical shelves — there’s no hiding from a floor team with a scanner. That standard travels to every project: the migration is tested against reality, not against “it ran without errors.” Plan it early, budget real time for it, and day one becomes an anticlimax — which is exactly what you want.

Years of data to move?

We migrate it like a release — rehearsed, reconciled, boring.

Book a free consultation