Hacker News new | past | comments | ask | show | jobs | submit login

How would you fix it?

I could imagine a competitive process, e.g. pay a number of different companies to start producing their solution in parallel. And then at the end of 3 months, pick the one(s) that looks the most promising and pay them to continue with it. It sounds wasteful, but I just don't see a better way, because people seem incapable of judging beforehand which companies are actually capable of providing on their promises.




There are two things which need to change: the first is that the government needs to hire more technical staff – years of alleged cost-savings mean that most agencies cannot hire skilled staff and so they lack skilled internal advisors to help review contracts. You can do things like hire contractors to oversee the other contractors — and hope that they're going to actually speak rather wait for quid pro quo next time their companies’ respective situations are reversed. Fixing this requires a change in Congress because the trend since the 90s has been to “save” by hiring contractors instead of staff; since contractors generally cost more per hour, this is rarely a win except for very short-term contracts.

There's a cruel irony in the procurement process where most of the efforts aimed at reducing cost and risk actually increase both by limiting the number of choices and increasing the pain of switching: when everyone knows it'll take months or years to start over with a new vendor only the most egregious failures will be declared unacceptable. I'd tackle this by giving government managers both more discretion and responsibility: more freedom on how their budgets are spent but audit a percentage of expenses every year to review results and conflicts of interest.

The key part of this would be figuring out a good mechanism to reward savings so someone has an incentive to make long-term good decisions. In some cases that might be things like hiring a solid in-house development team to work on a core function of the agency; in others that might be realizing that a service satisfies the most important needs rather than paying to build a completely custom solution.


Generally: get government out of the business of procuring custom software and shift to procuring outcomes.

Something like these healthcare exchanges should have been put to the market in a from where the revenue is directly tied to the end goal: The successful purchase of health insurance by customers (or whatever is the case here, I'm not intimately familiar with the mechanics). Have providers bid on the full thing by revenue pr. successful transaction + an SLA that deducts an appropriate penalty if it isn't met.

Ideally, you don't even need to pick a winner, you can just say that any provider that successfully operates such a marketplace will get the revenue per transaction and let the market sort it out. End users will gravitate towards the sites that are fast and easy to use, "Consumer Reports" will test them etc. Lean, agile shops will win. Clunky, well-connected, but technically unsophisticated government contractors will fail.


Yeah, because you're going to get the highest quality from firms that want to do completely speculative work. That's why 99 designs has the best designs, right? If you know you're the best, you'll compete for free!


It's not speculative? If the work achieves the stated end-goal-metric ("A citizen of the state of South Tennechigan can purchase a health insurance plan subject to the given constraints.") the operator is awarded the revenue offered ("$150 per successfully sold health insurance plan").

Think of it as a feed-in tariff. If you successfully purchase, install and connect a solar panel, and the panel feeds power into the grid, you're paid. If not, because you screw up any of these steps, you don't get paid. If you make a substandard installation (say, in the shadow or on a north-facing roof), you get paid less. The only thing that matters is the desired end goal: solar power is fed into the grid. You carry the risk, you get paid for the result.

The idea is that (at least in these cases) it's much, much easier to describe and document a desired outcome than to accurately describe and anticipate all the variables that potentially affects the outcome.


The problem comes in when you factor in the danger of ever changing political and project climates. In this case if the Republican party had been successful in revoking the ACA whatever work the contractors were doing was now completely wasted through no cause or fault of their own.

In your analogy it would be like you're successfully installing the panel and suddenly there's a massive tree completely shading the solar panels or the power company suddenly refusing to accept feed-in power from residential structures.


That's a risk of doing business. AirBnB and Uber are running similar risks against the political system (probably worse - they don't have ~half of the political system in their corner). Every other business is always risking that nobody will buy their product. Having any kind of promise of a guaranteed sale is a pretty luxurious position for any business.

If the risk is large enough that nobody takes it, then the procurement office can look at sweetening the deal (perhaps by increasing the payment per transaction, perhaps by offering some compensation for good faith effort if the legislation is revoked).

There is enormous overhead in bidding on and winning a government project. They're the reason the "37signals" of the world isn't doing them even even though they could probably execute much better on them.


If a client came to us and said "hey, we have a project for you. You just have to build it and we can split whatever profit you make off of it", you can guess where we'd tell them to go. It's very different from basic business risk.


I think that this plus open source. If anything should be open source it's anything built for governments.

I should note that the project I'm on did use this approach, but having picked winners it then proceeded to monkey with the teams constantly and generally screw everything up anyway.


Sounds awesome! I'll put in a bid, then hire the cheapest programmers I can to make it look like I did some work, then of course I'll lose the competition and still get paid for 3 months. Repeat and you have a viable business. And you never need to actually support software after the 3 months is up.


Well, you wouldn't let anyone enter the process: there'd still have to be an initial filter. After that, presumably promise of much much higher future profits for the full contract and prestige (i.e. the free advertising that would come from having done it) would be sufficient. But it was just an idea anyway.


My point was mainly that there are plenty of bad actors out there, and any procurement system has to protect against them as a major goal.


I'm all for it -- good old free market and whatnot, but... how exactly would one pick the most promissing project? Do we have any undisputable metric of project progress (both completeness and quality) yet?

Would we judge competing projects by kLOC? By percentage of code coverage? By extensibility of architecture? By percentage of GUI widgets already laid yout (even if just mocked up)? Or perhaps by conformance to an arbitrary test suite -- which raises the good old `Quis custodiet ipsos custodes?' problem?


Idea for a bidding model: Bidders for government contracts would need to put a large amount of money in trust. The government pays them interest on this, plus alpha. If they weren't meeting targets, then the government could just eat into the trust money.

Now the risk management is no longer being done by government, but by the banks who lend you the money. They specialise in such work. This a similar dynamic to film financing.

Imagine the secondary market that would pop up for the risk underlying such projects.


Some bids actually work kind of like that, especially in the realms or architecture and urban planning. However the money you get paid for those 3 month is often not enough to cover the expenses of doing a good job. So if you want to stand a chance of winning you end up having to work for 'free' and just hope you win so you can recoup those costs.


That did not work very well with the F-35 joint strike fighter. The requirements where/are unreasonable




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: