Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

Not sure, I think with socio-political frameworks - as with programming - the devil is in the detail. Everybody is equal no matter what? Sounds great, but the detailed implementations of that have sucked so far and didn't match the interface spec anyways. As a matter of fact even smaller legislations in the sphere of taxes might need a lot of people doing a lot of calculations behind the scenes. It's not that a single politician comes up with a new tax scheme including a percentage and this just works. If done properly, it needs to be checked if it can actually be financed.


sort by: page size:

Why? The more equitable the tax code the more complex it becomes. And assuming you're aiming for the most fair system I don't understand only applying our computational resources to rendering superheroes and recommendation engines, when we could scale the tax code complexity (and fairness) relative to our compute resources.

A complicated tax system is perfectly fine if its control logic is algorithmic and its parameters are easily found by the taxpayer. That's already somewhat true, since tax law is written by lawyers and accounts, who make excellent programmers if given appropriate training. Unfortunately, for me at least, legal English is 1000x harder to parse and understand than any nonesoteric programming language.

Writing the tax code to have the correct effect on the economy, and writing it to be easily navigable by normal people, are two separate problems. It's better to use software to decouple them (if you have to) so you can focus on the first.

Not that I wouldn't like it to be simpler. I would. But even with a completely optimal and just tax system, there still might be a place for such software.


I feel like this is a kind of XY problem that could be solved theoretically by agreeing on a more streamlined tax-regulation. It will take away the ability to fine tune tax deducts and so forth, but in return we can more easily design software to handle our taxes. I find that not having this automated nowadays with the advancement in computing resources that we have at disposal today is surprising.

True, but if the lawmakers writing the tax code bear more of the pain of the complexity of the tax-code (i.e. get complaints and warnings of their own devs that have to implement that API) then they might write better tax codes.

My wife is a tax accountant. From a software perspective taxes are a nightmare. I made a service BasisCalc (https://basiscalculator.com/) to automate just one little part of the big multi-dimensional elephant that is the tax code and it was terrifically hard to implement. I can't imagine doing the entire tax stack. There's local, state, federal, and international. The code changes all the time. The dates change all the time. There are real substantial penalties for being late. There are so many data sources to integrate. She spends thousands a year and many hours of her time simply on tax code updates. She has serious legal liability for her work. So will your software. I would pick an easier target, like solving world hunger or world peace. Taxes will be simpler when politicians want them to be simpler and there's no profit in that.

We haven't even solved the problem of ensuring that implementations match requirements, or even that requirements are non-conflicting, for purely logical systems such as software. How would you propose to do so for the tax code, beside drastically simplifying it?

Btw, I actually do not believe that the majority of governments are evil in intent on tax law. I keep seeing instances where their intentions are clearly "good" but nobody seems to appreciate the true cost of complexity.

The metaphor for me is that you have a code base with 1000 contributors, minimal pr reviews, no integration testing at all, and lots of global state. It is spaghetti and nobody is incentivised to simplify it


Not just developers, but lawyers, accountants, analysts... I think you grossly underestimate complexity of this thing.

We implemented relatively simple income tax reform a few decade ago in small EU jurisdiction. But law makers were very vague in some important details, and there were about 8 different interpretations. We had to implement, run and support all 8 versions for couple of years, until they decided on final interpretation. Non compliance would be fine of couple of million euro.

And that was tiny country of 5 million people with clean newly written laws. Not babylon with 300 years of baggage like US.


Yes, the problem is that things become much more complicated very quickly, and all real-world implementations do not match theory.

What that means is that principles matter. Taking this back to my original point, and follow-up point, which had nothing to do with taxes: problem solving is many times a search for definitions. Once definitions are agreed on, all solutions become a matter of applying various principles in various degrees. Real-world solutions never match the terms that the original problem is presented in. In fact, good solutions usually involve creation of a new language.

But without mutual clearly-understood terms, you never get there.


I think the key takeaway here is that complexity is a completely different thing than policy.

We've had all sorts of politicians make all kinds of great speeches about various policies to implement with the tax code.

All that got us was a complex mess. Inside that mess was a lot of corruption paid for by lobbiests. You can hide a lot of cronyism in a tax code. I think no matter what you want the tax system to do, as technologists we can ask you to make it do that in a very simple, understandable way. So I support a flat tax, but not because it's "fair." I care about structure, I don't care about fair. Make it understandable, and then we can all decide whether it's fair or not. We'll vote people in and out of office depending on whether it's fair or not. Make it complex and we're stuck just voting on tax code depending on how emotionally somebody's speech appeals to us. We've found that while this will work for a few decades, it's not scalable over longer periods of time.


It's such a weird concept to me that it's up to individuals and companies to figure out how much tax to charge.

Since the governments are collecting taxes it should be their responsibility to provide all the plugins and integrations needed to do it seamlessly.


I've often wondered about this issue in regards to tax code. Does a massive, labyrinthine system encourage legislators to add still more layers of complexity?

Yes, software can be much simpler if the real world wasn't so complex.

The reality is that governments use taxation as one of their tools to reward certain behaviors and population segments and to discourage/punish others. Simplifying taxation is taking that power away from governments. Why would any government choose to divest itself of those powers?


If those represent major complexities maybe there can be open source tax software that serves 80% of people, I.e. people in coastal cities that have one job, and then the remaining 20% have to pay for their software?

Yeah, this is basically what got me to that idea of separating formula from parameter: whenever politics should care about some quality of a formula, it gets completely drowned in the noise of people screaming at each other trying to drag the parameters one way or the other. As evidenced by every single discussion about UBI. Sometimes the formula still turns out ok, but far too often not ok at all.

It was in my second or third programming side job when I was asked by the ramshackle finance marketing upstarts I was working for if it was possible to implement the almighty Income Tax Table (in Access, obviously). I had heard scary things about that beast. A few minutes of googling (I think was already Google?) and I realized that the law in question defined a simple linear factor that increases at certain thresholds, with a tax-exmpt base per threshold to correct for any jumps. I was so disappointed! Not so much by a scary mad beast that turned out to be all tame and reasonable but by the professions of finance marketers and tax consultants who routinely acted as if it was some arbitrary monstrosity that could only be dealt with in a lookup table.


This is the problem with a complex and byzantine tax code: entities that can manage and manipulate the complexity profit by it. Entities that don't have those kinds of resources are stuck.

It would be good if folks from all political walks of life could come together for some kind of tax simplification. I highly doubt this will ever happen, though, as tax law is used as just another club by big businesses to beat down the small. They have the money, and they're willing to pay-off the political class to make various arguments about how simplifying things would be bad for the little guys. That's not changing. (This has nothing to do with current politics, by the way. I am not following the U.S. tax discussion and it's not relevant to my point. My point is that whether it's business, tech, or government, complexity itself is an enemy)


So if it can't be perfectly exact, we better not even try?

Tax codes (or other laws) don't need to be executed by a computer. They need to be executed by an accountant/auditor/judge. So you can rely on well-defined but still human concepts like "security", "place of residence", "child care", "employment", "property improvement", "dependent", "exchange of goods", etc.

Just because it can't be fully specified in x86 doesn't having a clearly defined tax code is an absurd idea.


No, the complexity comes from people, both the taxed, and those who impose them, and those who manipulate the legal process for relief. Computers actually give the sums a chance to be somewhat correct.
next

Legal | privacy