[HN Gopher] A Canadian payroll dependency chart
___________________________________________________________________
A Canadian payroll dependency chart
Author : djha-skin
Score : 270 points
Date : 2024-01-02 16:26 UTC (6 hours ago)
(HTM) web link (www.daemonology.net)
(TXT) w3m dump (www.daemonology.net)
| faustocarva wrote:
| "except anyone resident in Quebec, Nova Scotia, Yukon, or
| Ontario"...it is essentially 75% of Canada!
| munk-a wrote:
| Quebec is essentially a different country altogether - there
| are a legion of strange HR rules and requirements that are
| entirely specific to QC.
| tharmas wrote:
| Yes, and heavily subsidized by other parts of Canada via
| transfer payments.
| munk-a wrote:
| Well transfer payments are a lot more complicated than some
| folks would have you believe - Canada as a nation benefits
| from all our parts being within a common business zone so
| while some areas are mineral rich other areas have strong
| service economies that have needed help through the
| pandemic.
| switchbak wrote:
| "Needed help" because the powers of the day decided to
| lock down the economy far past any reasonable length of
| time. I suppose if I quit my job I "need help" feeding
| myself too.
|
| Another example is Quebec sitting on a gargantuan natural
| gas reserve, but preferring to keep it in the ground
| because it's more advantageous to simply receive payments
| from other provinces (Alberta). Carbon/emission
| considerations aside, this shows just how broken the
| incentive structure is for equalization payments between
| provinces.
|
| But that's just the tip of the iceberg as far as Canadian
| governmental issues go, and it's hard to know where to
| start improving things.
| p_j_w wrote:
| >Carbon/emission considerations aside
|
| This seems like a massive thing to just throw aside.
| cmrdporcupine wrote:
| He's also neglecting to mention what a mammoth
| hydroelectric powerhouse Quebec is, because of that, they
| have a giant surplus of electricity that makes their
| utility bills extremely cheap relative to anywhere else
| in North America, helps manufacturing businesses and
| gives them the ability to export power, to boot.
|
| Meanwhile Alberta burns (and leaks) natural gas and coal
| and gripes because the rest of the country is punishing
| them for it, and complains to high heaven that we're not
| making new markets for them (or others) to burn and leak
| more of it.
|
| Quebec and Ontario have prioritized manufacturing over
| resource extraction, and that benefits their population.
| CarRamrod wrote:
| Well, if Quebec is the economic powerhouse you claim it
| is, then surely they will be just fine if the
| equalization payments stop, right?
| cperciva wrote:
| To be fair, Nova Scotia, Yukon, and Ontario each only add a
| handful of extra nodes. I just didn't want to bother with those
| because I'm in BC.
|
| Quebec is a different matter; far more complicated to calculate
| payroll deductions for there.
| cmrdporcupine wrote:
| And if the crazy proposal from the UCP in Alberta to divorce
| from the CPP and have their own pension system (like Quebec)
| is successful, it will get even crazier.
|
| Imagine the complications of moving back and forth between
| provinces. Or seasonal work, etc.
| cperciva wrote:
| There's several pages of formulas for dealing with people
| moving between CPP and QPP. So glad I don't have to deal
| with those.
| cmrdporcupine wrote:
| I was born in Alberta and lived there for the first 24ish
| years of my life, I didn't contribute _much_ when I was
| there, but it would be something. I shudder to imagine
| the complications of trying to claim the amounts from
| that once I retire -- if that proposal happens. Pure
| insanity.
| bigdict wrote:
| Would be nice to have an open source implementation of this.
| jqpabc123 wrote:
| Yes but unlikely because this is an example of the Open Source
| "black hole" where nothing escapes because developers don't
| find such specialized business applications very interesting.
|
| This requires constant updating and maintenance because tax
| laws are always changing.
| busterarm wrote:
| This kind of thing is the bread and butter of SaaS companies
| though.
|
| It's also exactly the kind of thing companies _wouldn't_ use
| open source for because if the code gets the tax law wrong
| they have nobody to transfer liability to. Once you have a
| corporate entity backing a subscription service, insurance
| underwriters can understand what's going on and you can
| finally manage your risks.
| mmastrac wrote:
| It's a shame that we don't have open formulas in code form
| published by the government. The only way that I know how to do
| this reliably is using the web form provided by the CRA here:
| https://www.canada.ca/en/revenue-agency/services/e-services/...
|
| As you can imagine, doing this by hand is quite painful and
| error-prone.
| Topgamer7 wrote:
| I want something similar for my mortgage calculation. For
| example I cannot get my bank (TD Canada) to inform me of how
| much each payment goes towards my principal. I'm pretty sure
| I've calculated it properly, however the number is often in the
| 10's of dollars off from what the bank reports my outstanding
| balance is after a payment is made.
|
| Also don't get me started that I can't use an api to get my
| account details and statements in Canada.
| MattGaiser wrote:
| Anecdotally, the bank often cannot tell you how much. It has
| come up multiple times on /r/personalfinancecanada that the
| bank isn't really sure or generates a few different
| calculations. I also worked for a mid sized Canadian bank
| where the advisors couldn't consistently do it either.
| bluefirebrand wrote:
| If you're on a fixed rate mortgage it seems like this
| should be trivial...?
|
| Variable rate throws it out of whack of course.
| ponector wrote:
| Having a mortgage with 3-months variable rate bank sends
| a new schedule everytime rate changes.
|
| New schedule is calculated with new rate and consists of
| payments till the end of the term, with additional info
| about interest and principal amounts.
|
| Same if you do additional payment into the principal -
| they will give you a new schedule.
| mikepurvis wrote:
| That seems odd given that you can walk into your branch any
| time and get a payout statement that will tell you a total
| outstanding number. The statement is valid for the next 30
| days or whatever, and any fees or penalties are itemized on
| it-- anyone who has paid off their mortgage due to either
| windfall or sale will have gone through this process.
| ipaddr wrote:
| What is your mortgage amount and what is rate?
|
| Say your mortgage is 300,000 and rate 5%. You would pay
| 15,000 in interest. Subtract from your total yearly payment
| say 25,000. You pay back 10,000 a year divide by 12 for
| months or payment period to get the amount.
| prosaic-hacker wrote:
| There is a twist in Canadian law regarding mortgages.
| Quoting from the page linked below. --- Canada's Interest
| Act states the following about amortizing mortgages: "...
| the principal money and the rate of interest chargeable on
| that money, calculated yearly or half-yearly, not in
| advance." --- This page does go into the detail a little
| more. https://wowa.ca/how-is-mortgage-interest-calculated
|
| It may not be authoritative but you can start with
| https://laws-lois.justice.gc.ca/eng/acts/i-15/page-1.html
| which should be.
| j45 wrote:
| Canadian mortgages are a bit different than the US.
|
| First, they renew their interest rates every 5 years over a
| 20-30-40 mortgage. Think of it as mandatory refinancing.
|
| Unlike the US where a homeowner can lock in a low interest
| rate for a very long time.
| guhidalg wrote:
| That sounds terrifying. Do people just pay them off
| within quickly if interest rates rise?
| mikem170 wrote:
| It would be terrifying for any bank to give people 30
| thirty year loans at historically low interest rates
| (because of the interest rate risk - rates have nowhere
| to go but up, and the bank could easily be upside down
| for most of the loan), so the U.S. government
| subsidizes/backs most mortgages (fannie and freddie).
| This tends to increase the cost of housing while
| taxpayers are taking on the interest rate risk instead of
| the banks.
|
| The U.S. is an anomaly with these loans. Most countries
| don't do this 30 year fixed low rate mortgages like the
| U.S. It simply doesn't make sense for lenders to
| underwrite long loans at low rates.
| throw0101d wrote:
| > _That sounds terrifying. Do people just pay them off
| within quickly if interest rates rise?_
|
| Variable rate mortgages were a better bet 88% of the time
| between 1950 and 2000:
|
| * https://wowa.ca/static/fixed-vs-variable-study.pdf
|
| Post-2000 variable did fairly well as well.
|
| It's the recency bias of the last 1-2 years that have
| people really freaking out about it.
| cperciva wrote:
| FWIW, being off by 10s of dollars sounds to me like different
| ideas of how to count days. Banks sometimes use calendar
| days, sometimes business days, and sometimes a fictitious
| calendar with 12 months of 30 days each.
| fadesibert wrote:
| BTW - the fictitious calendar is very often used in bond
| repayments - e.g.
| https://www.lawinsider.com/dictionary/bond-payment-dates
|
| It has historically been used to allow for bonds to have
| uniform repayments across maturities (when the principal of
| a bond becomes due) - useful in the context of a bank
| wanting to hedge risks such as interest rate risk,
| repayment risk (if the bond is callable it can be paid back
| early, which means the bondholders have cash yielding ~0%
| instead of whatever the bond yield was)
|
| Mortgages, though not traditional bonds (in that it's not a
| sophisticated company borrowing) are, depending on the
| jurisdiction, treated as bonds because they get packaged up
| and sold as bonds - the underlying bit of financial
| engineering that, after serious perversion, gave us the
| 2008 credit crisis
| throw0101d wrote:
| > _BTW - the fictitious calendar is very often used in
| bond repayments -
| e.g.https://www.lawinsider.com/dictionary/bond-payment-
| dates_
|
| Some sample calculations at:
|
| * https://www.bondsavvy.com/bonds/accrued-interest-
| calculation
|
| See also perhaps:
|
| * https://www.investopedia.com/terms/d/daycount.asp
| jbs769 wrote:
| Having been through this exercise as a former employee of a
| bank calculating this exact thing, this makes sense to me
| so is hopefully helpful for the poster.
| burnished wrote:
| Yes, you'd call that the calendar convention if I remember
| correctly. The one you are referencing is called 30/360 for
| 30 days in a month, 360 days in a year.
| MichaelZuo wrote:
| Would different departments within a bank use different
| calendar conventions?
| cperciva wrote:
| Absolutely. Even within one department, since accounts
| often originated from different institutions.
| humanlion87 wrote:
| I was in the same boat. I ran into similar discrepancies
| until I realized that I was not accounting for the number of
| days in the month correctly.
|
| One option is to call the mortgage department and ask them to
| provide the split. When I asked the agent why I couldn't see
| it online, she mentioned their system is not setup to show
| this information. No idea why. Pretty frustrating.
| cachvico wrote:
| Also don't get me started that I can't use an api to get my
| account details and statements in Canada.
|
| Anyone know if there's any ongoing effort to this effect -
| i.e. to force banks to implement a common API for querying
| data held in their accounts?
|
| A brief search reveals that Canada is of course missing from
| https://en.wikipedia.org/wiki/Open_banking
| itsoktocry wrote:
| > _Anyone know if there 's any ongoing effort to this
| effect - i.e. to force banks to implement a common API for
| querying data held in their accounts?_
|
| Literally in the news as we speak!
|
| https://globalnews.ca/news/10195005/canada-banking-
| changes-2...
|
| What it ends up looking like, who knows.
| j45 wrote:
| Canada is working on Open Banking from what information is
| out there - although it will be important to confirm that
| the Canadian interpretation of Open Banking is the same or
| compatible with other nations, which in no way is
| guaranteed just because it's called the same thing.
| ensemblehq wrote:
| Consulted in the space about 3 years ago. Regulatory powers
| lack tooth. Most large banks are not ready (i.e. poor
| security, complex backend, no scalability, etc.) and are
| scrambling to find solutions while begging for my time.
| Also, lots of discussion and jostling and fear of what
| might happen when it goes live. No one can truly agree on
| the legal framework as well so feels like much work to be
| done.
|
| Was also part of the implementation phase in the UK and the
| regulatory powers there definitely sped things up.
| franga2000 wrote:
| Don't be fooled by the "open banking" propaganda, we've had
| it in the EU for years and we're still scraping web apps
| like in the old days.
|
| <Rant> I tried to get API access to my bank account and was
| told by my bank that Open Banking is not for physical
| persons. I tried to the same for my nonprofit and was told
| that only licensed PSD2 TPPs ("third-party providers") can
| use it. The national bank issues those licenses, but
| provides no information on what the process for obtaining
| one is. I called some friends and got in touch with someone
| at a major payment services provider, who explained that to
| get their license, the national bank insisted on them
| having essentially unlimited-coverege insurance - something
| no insusrer in the country was even willing to sell at any
| price. They managed to get the insurance from elsewhere in
| the EU and whole process cost them "six figures". Even
| after that, you still don't get full access to their own
| accounts, because the whole API is built on the idea of
| connecting customers with fintech apps, so there are a
| bunch of limitations intended for privacy and security that
| don't make any sense in a "I want full access to my own
| account" scenario. All the advice I got was "just keep
| scraping". How the fuck do they dare call that "open"
| banking?!? </Rant>
| axus wrote:
| Crypto-currency was a test-run for what happens when you
| put a financial transaction API on the public Internet.
| And those servers were written by smart people with no
| regulatory compliance to worry about.
| franga2000 wrote:
| Cryptocurrency is so wildly different from normal money
| in so many ways, that any attempt to look at just the
| "open API" aspect of it is futile.
|
| Or do you see any conclusions about "money APIs" that can
| be reasonably made from crypto?
| j45 wrote:
| While open banking is on it's way in Canada it still might be
| a few years until the API is available.
|
| Mortgage Calculators are sadly something that appear to need
| to be build by hand in Excel
| rootusrootus wrote:
| Is this something particular to how Canada does mortgages? In
| the US, a bog standard mortgage is 12 payments a year, with
| all interest for the month accruing on the 1st day of each
| month. It's pretty trivial to put that into Excel and use the
| IPMT function (and related ones like PMT) to spit out the
| interest being paid in a given month. It's always been dead-
| on accurate for me.
|
| Maybe this is just one little upside of mortgage terms in the
| US being dictated mostly by the gov't through fannie mae and
| freddie mac.
| franga2000 wrote:
| > Also don't get me started that I can't use an api to get my
| account details and statements in Canada.
|
| Can you do that anywhere else? Even under the EU's "open
| banking" system, this is basically impossible unless you use
| an intermediate that charges absurdly high fees, because they
| themselves had to pay hugr licensing and insurance fees to be
| granted access to the "open" APIs. The only other way is
| scraping, which I imagine is just as possible in Canada as
| everywhere else.
| ape4 wrote:
| Apologies if you're already aware... In Canada you'll get an
| annual statement showing how much principal is paid off. So
| you can interpolate future payments from that. (Of course, it
| could be better)
| burnished wrote:
| Are you using the correct date convention? That can cause
| small differences in both the duration of the interest
| accrual period as well as the daily interest rate for that
| period
|
| If they aren't providing you complete information there is
| probably a Canadian authority you can reach out to, though
| you may just need to go higher up the food chain at your bank
| - accounting can be a little arcane and the people you are
| speaking to may simply not know.
|
| That being said being off by tens of dollars is absurd, the
| error is likely in your calculations, and I feel it is their
| duty to make how they calculate your interest owed plain to
| you.
| abe_m wrote:
| First of all: I fully agree with you. The calculation should
| be listed explicitly in the mortgage documents.
|
| I've also struggled through figuring it out on my own, and
| the two things that got me to less than a dollar of
| difference were: 1) "Mortgage" in Canada is a specific legal
| term used for fixed term mortgages that compounds every 6
| months. Therefore, to get your effective annual you take you
| have to convert it: ((1 + nom_rate/2)^2)-1 2) You then take
| your effective rate, divide by the days in the year to get
| your daily rate. You then take your daily rate, multiply it
| by your outstanding principle, and multiply it by the number
| of days since your last payment. That result is the amount of
| interest you pay, and the rest of your payment goes to pay
| down principle.
|
| In practice, I have a monthly payment, and just divide my
| annual effective rate by 12, and call it close enough. The
| extra precision of daily vs monthly isn't worth the extra
| complexity in the spreadsheet.
| FpUser wrote:
| Same here. I just take the form
| j45 wrote:
| It could be a github repo.
|
| There are likely some digital government projects and software
| providers who's software might be a good fit for this kind of
| thing.
| yard2010 wrote:
| Why stop there, one monorepo could hold all the laws and
| receive PRs from the ppl, cutting down the middle man
| (politicians) leaving just the bureaucracy
| brailsafe wrote:
| It's worth noting that the Government of Canada and various
| other gov orgs do have GitHub repos where they already host a
| variety of algorithms, configs, the design system, and a few
| others, so it would be good to add something like this.
|
| https://github.com/canada-ca https://github.com/statcan
|
| The Bank of Canada even has one where they host various
| economic models
|
| https://github.com/bankofcanada
| Galanwe wrote:
| The issue is too pervasive, having a formula published won't
| solve it.
|
| You will need the historical formulas, as well as all the
| underlying data, not even accounting for the publication delays
| and errors, missing informations, discretionary
| classifications, etc.
|
| What we need is all that data and code in an introspectable
| flow of code and data:
|
| <downvote>a blockchain, containing both your data and the smart
| contract used to perform the computations</downvote>.
| patrickmay wrote:
| All laws should be expressed in code. It would quickly show how
| many either conflict with each other or are incoherent.
| penguin_booze wrote:
| This exists, but I haven't dug deep enough to know better:
| https://github.com/CatalaLang/catala.
| kelseyfrog wrote:
| It wouldn't even work if the universe was expressed as data.
|
| Unfortunately there will be an input layer that requires
| predicates or measurements that cannot avoid ambiguity.
|
| Ignoring that, there's Godel's Incomplete Theorem to deliver
| the final blow. If integer arithmetic cannot be complete and
| consistent, a set of laws governing society has no hope. If
| you disagree, you'd at least have to admit that such a set of
| laws could not include integer arithmetic, and could
| certainly be no more complex than integer arithmetic. I'd
| posit that such a restriction renders such a project
| impossible.
|
| We've chosen completeness (every action can be rendered legal
| or illegal) over consistency. The alternative - consistency -
| would make some actions legally undecidable.
| layer8 wrote:
| Germany has been publishing standardized flowcharts with named
| variables and formulas for payroll calculation for a long time
| (at least since the 1970s -- hence the notation employed):
| https://www.bundesfinanzministerium.de/Content/DE/Downloads/...
| gorky1 wrote:
| That's very cool, but that's taxes only.
|
| For social security, you have to get certified by a
| completely different set of bureaucrats with partially
| incompatible requirements:
|
| https://gkv-ag.de/
|
| The simplifications, they are additional! (Usually.)
| akira2501 wrote:
| > It's a shame that we don't have open formulas in code form
| published by the government.
|
| I completely disagree. Then you're just handing them a
| mechanism to make this as complicated as they possibly can.
| Taxes should be simple enough to be fully understood by the
| people paying them.
|
| I'm not some algorithmic tool for the government to abuse when
| it's failed to balance it's budgets and I should not _need_
| software to figure out something so basic as a deduction in
| wages.
|
| > doing this by hand is quite painful and error-prone.
|
| It's a shame there isn't a law forcing the government to make
| this possible.
| ibejoeb wrote:
| I don't understand what you mean. You're beholden to the law
| regardless of whether you understand it. The government ought
| to be required to create a reference implementation if for no
| purpose other than to prove that it is indeed possible to
| implement.
| phpisthebest wrote:
| the government should be barred from implementing a law or
| regulation that requires "reference implementation " to
| prove it is "possible to implement"
|
| If it needs such a thing it is too complex and should be
| repealed
| crote wrote:
| Over in The Netherlands we're seeing the opposite happen.
| Seemingly trivial laws are getting rejected because the
| responsible Ministry considers it "too difficult". In
| reality it's most likely just politically inconvenient.
|
| For example, it was deemed "impossible" to adjust student
| loan interest rates, because the software would take _two
| years_ to modify. Either they are completely incompetent,
| or they are deliberately lying for political reasons.
|
| So yeah, refusing a law because it is "too complex" won't
| work either.
| ibejoeb wrote:
| OK, well, in spirit I can see how that sentiment arises.
| For practical purposes, though, no matter how simple a
| calculation, if a government requires that I do it, I
| want to see precisely what it's demanding. It is
| unreasonable to be put in the position of guessing.
| gorky1 wrote:
| You're right, and it's extremely hard to undo.
|
| Once you have that complexity, you'll always be taking away
| something from somebody by simplifying.
|
| So all simplifications end up as additional "if" clauses,
| defeating the purpose.
| lozenge wrote:
| Ah yes, because the current system is incentivising them to
| keep it simple... otherwise we'll vote for the simple taxes
| party... which party is that again?
| sdwvit wrote:
| Props to the author. At this point, CRA should just post a
| reference implementation of all the formulas, so that small
| businesses can benefit from it.
| betaby wrote:
| They won't. They have no mandate to provide a clear answer.
| j45 wrote:
| Bureaucracies gotta bureaucracize.
| cmrdporcupine wrote:
| Honestly, I've always found CRA friendly, competent, and
| responsive.
|
| But, I also don't run a small business, and am just a tax
| payer. Though when I _had_ a small consultancy and
| corporation they were also actually fine to deal with.
| cperciva wrote:
| It would be very nice if they would publish a libreoffice
| spreadsheet, yes.
|
| Heck, it would be very nice if they would _create_ a
| libreoffice spreadsheet, even if they don 't publish it. If
| they had to read their own document, it would probably be far
| better written.
| derefr wrote:
| > If they had to read their own document, it would probably
| be far better written.
|
| Perhaps not; I've always had a strong impression, whenever
| reading documents derived from tax policy, that the
| "architecture" of such documents is the way it is mainly for
| _maintainability_.
|
| Which is to say: the effective tax code at any given moment,
| is the emergent result of the interactions of all the current
| tax _laws_ on the books. And there are many such laws. And
| those individual laws can be updated or repealed; and new
| laws can also come in that, through a few simple statements,
| make sweeping changes to the _meanings_ of other laws.
|
| As such, the tax-filing instructions, ideally, have to be
| constructed in such a way that they cope _efficiently_ with
| someone being able to pull a single jenga-block out of the
| tower that is tax law, that topples over a whole slew of
| other instructions and definitions. The team of tax lawyers
| and technical writers that maintain the instructions should
| not have to sit down and rewrite every instruction on every
| schedule /form, just because one of the core definitions
| changes. Because that's gonna happen a lot! Every year, even!
|
| If I was in charge of a team of (automation-minded) lawyers
| and technical writers maintaining the tax-filing instruction
| repository, I'd probably, ideally, want to factor out the
| instructions into separate modular files _per law_ -- with
| each file acting as a sort of Aspect-Oriented equivalent of
| Javadoc. (Or, actually, something very much like Inform 7.
| See e.g. https://i7-examples.github.io/Bronze/source_1.html)
|
| So you'd see:
|
| * Paragraphs that interpolate definitions as constants from
| other laws' modules;
|
| * paragraphs that have implicit AOP hooks for other laws'
| modules to inject additional language into;
|
| * the ability of a law to override specific sentences or
| wording of the language of the laws so far;
|
| ...and so forth.
|
| This would be hell to _read_ , but it'd sure make the job of
| dealing with changes in the law easy. (And it wouldn't be
| something you'd really _read_ anyway -- more often, it 'd be
| something you'd carefully poke at, while watching the
| compiled result change live in a split pane. Like writing
| LaTeX in LyX.)
|
| ---
|
| To be clear, I don't imagine that any _existing_ set of tax-
| form language is actually maintained using some weird AOP
| DSL.
|
| Rather, I imagine that the maintainers are _manually_ doing
| the same _business process_ that use of such an AOP DSL would
| formalize.
|
| They're maintaining a very non-intuitive "storage
| architecture" for all the instructions that go into these
| forms, to minimize re-working when the law changes; and then
| -- _mostly_ manually, but maybe with a bit of Excel --
| collating them together into new schedules and forms each
| year.
|
| And it's that "storage architecture" -- despite not being
| something as rigid as source code -- that still nevertheless
| forces the language of the instructions into the form you see
| at tax-filing time, with the weird grammatical shapes, the
| distant definitions, etc.
| btilly wrote:
| I have a simpler theory.
|
| The law is the way it is because of the influence of
| lobbyists. Those lobbyists include lobbyists for companies
| that do things like payroll. They would like the system to
| be complex to provide a regulatory moat that keeps other
| businesses from competing with them. And by siding with
| this or that special interest that cares about their piece
| more than how sensible the whole is, the law is easy to
| turn into a mess.
| j45 wrote:
| I hadn't considered maintainability as something to
| consider in this area - appreciate the deep dive.
|
| The saying bureaucracy can't help but beget bureaucracy is
| another thing that comes to mind.
| hoosieree wrote:
| Real life is imperative, dynamically scoped, all global
| variables, and every instruction contains an implicit
| branch.
| ska wrote:
| Another comment pointed to this web form:
| https://news.ycombinator.com/item?id=38843556
|
| It's not a downloadable sheet , looks like, but it's something.
| rozap wrote:
| Why would they do that? If it's all out there in the open, then
| everyone can find bugs/issues and then they'd have to deal with
| them.
|
| Also they'd probably lose a lot of revenue they collect from
| fines.
|
| Personal anecdote about how you don't fuck with the CRA. Back
| in college in I got "free" room and board for year because I
| was a resident advisor. When I, an idiot 20 year old, filed my
| taxes, I did them wrong and under reported by around 1k. First
| time doing Canadian taxes as a US citizen. A few years later I
| got a fine for around $5500, which was a huge sum for a college
| kid working part time. Turns out BC can match the fine levied
| by the CRA. In hindsight, I would have been better off just not
| having that job - I think I would have come out ahead. For the
| rest of the time I lived in Canada I hired a CPA.
|
| The IRS is warm and fuzzy by comparison. At least if you screw
| up, the fine is proportional to the amount you under report.
| (unless you're super rich...but that's a different thing)
| nampas wrote:
| That's funny, I made something similar a few years ago for the
| IRS
|
| https://nampas.github.io/tax-map/
| tantalor wrote:
| This is the worst version of Planarity I've ever seen,
| congrats.
| fragmede wrote:
| For those that haven't played it, Planarity is a graph
| untangling game.
|
| https://www.jasondavies.com/planarity/
| mp05 wrote:
| Dear lord, that's frightening.
| mmsc wrote:
| Very very cool. Is there a word for a directional graph in this
| circular form? Also, is every edge unidirectional, or are there
| some bidirectional edges? I would hope (and assume) there's
| nothing bidirectional, but...
| chipaca wrote:
| From the looks of it that's been generated by `circo`, which
| is part of GraphViz and describes itself as a "filter for
| circular layout of graphs" and circo
| draws graphs using a circular layout (see Six and Tollis, GD
| '99 and ALENEX '99, and Kaufmann and Wiese, GD
| '02.) The tool identifies biconnected
| components and draws the nodes of the component on a cir-
| cle. The block-cutpoint tree is then laid out using a
| recursive radial algorithm. Edge crossings
| within a circle are minimized by placing as many
| edges on the circle's perimeter as possible. In
| particular, if the component is outerplanar, the
| component will have a planar layout. If a node
| belongs to multiple non-trivial biconnected components, the
| layout puts the node in one of them. By default, this is the
| first non- trivial component found in the search
| from the root component.
| mmsc wrote:
| Doing a bit more digging, it's using cytoscape[0] which is
| similar to graphviz. If you search your favorite search
| engine with "Cytoscape Session Viewer", you'll find many
| websites displaying the same type of graphs (select layout:
| circle).
|
| FYI, circo doesn't always output a circle. I recently
| created https://github.com/MegaManSec/SSH-
| Snake/blob/main/tools/SSH-... using circo.
|
| [0] https://cytoscape.org/
| Pathogen-David wrote:
| You can generate them using Graphviz's circo layout engine.
| https://graphviz.org/docs/layouts/circo/
|
| According to them/Wikipedia, the layout's name is simply
| "circular layout".
| https://en.wikipedia.org/wiki/Circular_layout
| maelito wrote:
| In France, these rules are available as a website, an API, a NPM
| package, and raw rules in the https://publi.codes language.
|
| https://mon-entreprise.urssaf.fr/developpeur
| spydum wrote:
| thats pretty cool, I wonder though what the implication is if
| there is a bug or package hijacking? Are you expected to cross
| check the calculations and they are only offered as a
| convenience, and not authoritative?
| cbarrick wrote:
| The formulas are published in a programming language called
| M. There is an open source implementation [1].
|
| > There is currently no legal guarantee of any kind about the
| correctness of the code produced by the Mlang compiler, or by
| the results produced by the interpreter of Mlang. However,
| authors have been in contact with DGFiP to validate Mlang,
| and the system passes all the private DGFiP tests as of Sept.
| 2022 for the version of the source files responsible for
| computing the tax on the 2018, 2019, 2020 and 2021 income.
|
| [1] https://github.com/MLanguage/mlang
| adolph wrote:
| MLanguage in this context is not M, aka MUMPS.
|
| _MUMPS ( "Massachusetts General Hospital Utility Multi-
| Programming System"), or M, is an imperative, high-level
| programming language with an integrated transaction
| processing key-value database. It was originally developed
| at Massachusetts General Hospital for managing hospital
| laboratory information systems._
|
| https://en.wikipedia.org/wiki/MUMPS
| mattgrice wrote:
| Useful comment. Unfortunately M or MUMPS is still in
| active use at EPIC, etc. Far too many good grads of
| midwest schools get sucked into working for EPIC or the
| insurance mines in Des Moines, Omaha, etc. UW Madison,
| UIUC, and Michigan are way too good of schools to be
| sending their grads to work on medical records or
| insurance.
| MrPatan wrote:
| Do you also worry that rogue employees or literally anybody
| with the keys to the office of a printer could have been
| changing the texts of laws as printed in official
| publications and books for the past few hundred years?
|
| If not, why not?
| spydum wrote:
| Way? I thought the op was saying the French government
| published the code. Totally different if not.
| ingenika wrote:
| There is also a canada version for simulation:
| `https://www.canada.ca/en/revenue-
| agency/services/e-services/...`
|
| Or Quebec Version
|
| `https://www.revenuquebec.ca/en/online-services/tools/webras/`
| simonw wrote:
| Here's that NPM package: https://www.npmjs.com/package/modele-
| social and https://github.com/betagouv/mon-entreprise
|
| This is incredible. I absolutely love the idea of official,
| government-supported machine readable versions of these kinds
| of rules.
| woobar wrote:
| Is this a toy? I get this warning on the English version of
| that website:
|
| "Calculations are indicative. They are not a substitute for
| actual statements from Urssaf, the tax authorities or any other
| organization."
|
| [1]
| https://mycompanyinfrance.urssaf.fr/developer/iframe?module=...
| maelito wrote:
| The code of this relatively recent project wasn't promoted
| (yet ?) as the internal official closed-source calculator.
| choeger wrote:
| This demonstrates how _any_ algorithm, software or not, works:
| Start with something desirable or necessary and add complications
| until you end up with a mess that can be used to yield arbitrary
| results, drive outsiders into madness, and summon some lesser
| demons if read in a chanting manner.
|
| Now what could be done about this? The obvious answer is
| refactoring. That's what politicians promise in election
| campaigns and junior software developers demand when encountering
| a new code base. It's rarely ever done in practice because no one
| can disambiguate unnecessary from desired features and
| complexities. The second answer would be a clean implementation
| in some more formal framework (a statically typed language, a
| theorem prover, ...). That second solution often fails when
| attempted because the system is already unsound. Fortunately, no
| one cares about those "weird corner cases" and everything is left
| as-is until someone runs away with a million dollars or so.
| cmrdporcupine wrote:
| In actuality the CRA and recent federal gov'ts have done a lot
| to simplify taxes in Canada. It's way simpler these days.
| Though obviously this payroll stuff is an exception.
|
| 10-15 years ago there were piles of special exemptions carved
| out for all sorts of things (mostly to buy votes.) These days,
| if you don't have self-employment or foreign investments, etc
| and are just the typical paycheque-receiving wage slave, filing
| taxes is trivial and mostly automatic.
|
| The bulk of the complication in the above graph seems to do
| with the fact that Canada is a highly federal system, with
| provinces having various relevant powers and oddities carved
| out as a result of that. That, and the existence federal
| employment insurance and pension plan systems.
| switchbak wrote:
| "trivial and mostly automatic" - but not so automatic that
| it's done for you, as in some other countries. And that's by
| design - Intuit still wants their cash cow providing that
| sweet sweet revenue every tax season.
| cmrdporcupine wrote:
| I don't see how Intuit has any pull on Canadian tax law or
| influence with the CRA. And there are plenty of
| alternatives. I used ufile.ca for years, way cheaper. And
| honestly, just picking up the form and doing it yourself is
| all my parents did for years.
|
| I'm pretty sure we'll see what you're asking for within the
| next 5-10 years. With them already having the T4s, etc. I
| don't see why they couldn't have you login to their site,
| confirm everything, and submit.
| rsaz wrote:
| Are there any countries with good, reasonable tax systems? I'm
| only familiar with Canada and the USA, both of which are a bit of
| a mess, though seemingly in different ways. I'd be very
| interested in hearing what the process is like in other places.
| dkga wrote:
| Switzerland tax law is pretty straightforward and the cantonal
| (local government) tax authorities are known for being very
| helpful in explaining things to taxpayers in doubt, an
| experience I had more than once.
| bradley13 wrote:
| I dunno, the sheer size of our personal (Swiss) tax return is
| daunting - and we are pretty ordinary. Maybe not as insane as
| the US, but "simple" would be different.
| jqpabc123 wrote:
| The EU has VAT (value added tax) which is added to each
| purchase.
|
| At the end of the year, there is nothing to report and nothing
| to pay.
|
| It doesn't get much simpler than this.
| koliber wrote:
| The original post is about income tax. While VAT is a tax, it
| is not an income tax.
| jqpabc123 wrote:
| The post I responded to asked: Are there
| any countries with good, reasonable tax systems?
|
| VAT is a reasonable alternative to income taxes but neither
| the question nor my response ever specified "income".
| Fidelix wrote:
| Not even remotely correct.
|
| Each country in the EU has different income tax systems and
| other types of tax. VAT is just one aspect that generally
| doesn't cover even half of the tax burden.
|
| OP is talking about the overall tax system.
| aftbit wrote:
| The EU doesn't have income tax? I think that's false.
| jqpabc123 wrote:
| Neither the question nor my response ever specified
| "income".
| aftbit wrote:
| >At the end of the year, there is nothing to report and
| nothing to pay.
|
| That is what I was reacting to. You still need to file
| taxes in the EU right? I know they have streamlined it a
| lot in most countries, but there is indeed something to
| report, no?
| swamp_donkey wrote:
| I've filed a few returns in new zealand and it seemed pretty
| simple, I was a simple case though
| michael1999 wrote:
| Not sure what good means. Nobody likes to pay tax.
|
| If you mean legible, common-law taxation is going to be messy
| by nature. Civil-law jurisdictions will be more legible. France
| has published formulas for theirs.
|
| If you mean simple, Estonia deliberately chose a simplified
| foundation for their post-Soviet era -- a tripod of land-value
| tax (not a property tax); flat income tax with some basic
| deductions; and VAT. They are new enough that exceptions are
| probably modest.
| https://en.wikipedia.org/wiki/Taxation_in_Estonia
| sira04 wrote:
| The Faroe Islands have the best one according to this article I
| read recently https://prospect.org/world/best-tax-system-on-
| earth-faroe-is...
| xnorswap wrote:
| Depends on your circumstances. The UK seems reasonable for
| most.
|
| For the employed, you let your employer worry about it. You
| might occasionally get given a "tax code" which essentially
| equates to your tax free allowance. If that happens you just
| let your employer know and they'll sort it, and you can confirm
| by checking your payslip.
|
| If you're determined to have over or underpaid tax (e.g. your
| income went down unexpectedly), your tax code for the following
| year will be adjusted so that you'll end up clawing back the
| money over time.
|
| Unless you are self employed or have special circumstances,
| then you'll avoid having to file a "self assessment" form.
|
| And to be clear, the "special circumstances" are nothing like
| the US' system of hundreds of different "deductions".
|
| Even if you do have to fill in a self assessment form, you can
| do so with an online form, which actually takes into account
| answers rather than making you manually have to do things such
| as "Skip section 5 if you have put a number of in section 4b or
| a number less than 3340 in section 2a" that the US forms love
| to make you do.
|
| Filing my US taxes is literally 99% of all paperwork I have to
| do each year, and I don't even earn enough to actually have to
| pay anything. Yet I still have to calculate everything, then
| write down the right numbers in the "foreign earned income
| exclusion" boxes, then tally it all up to make sure it's still
| zero, then make sure I've copied the right numbers to the right
| boxes and haven't mistakenly transposed any numbers, then copy
| those zeroes down to the right boxes through the rest of the
| 1040.
|
| The UK has had this system for decades, it has had online tax
| filing since 3 July 2000. It's had PAYE (pay as you earn tax,
| i.e. tax deduction at source) since 1944.
|
| The UK feels stagnant as heck, so I wouldn't recommend people
| actually move here, but its tax system is trivial to the point
| of ignorable if you're employed.
| Tade0 wrote:
| I can give you a primer on the system for independent
| contractors in Poland:
|
| -Flat minimal monthly pension contribution either filed as a
| business expense or just deducted from gross income - subtly
| different, but functionally the same as long as you have
| income. Calculated as the pension contribution of someone
| making 60% of the average wage - the exact number is published
| on an annual basis.
|
| -Income tax: every January you can select one of several
| schemes:
|
| 1. Two brackets - 17% and 32% with the first 30k PLN ($7k USD)
| tax-free and ability to file taxes together as a married
| couple, in which case you effectively average out your and your
| spouse's incomes and pay taxes accordingly.
|
| 2. 19% flat rate, no tax-free range, no rules like for
| marriages.
|
| 3. 12% flat rate, mostly same as 2., except on top of that you
| can't file business expenses. There a few different rates in
| this scheme, but IT generally falls under the group charged
| 12%.
|
| Healthcare contributions depend on tax scheme chosen above and
| are calculated as a percentage of gross income from the
| previous month minus deductions and expenses.
|
| 1. - 9%, 2. - 4,9%, 3. - 3%.
|
| That is mostly it. Regular employees have more complicated
| rules with employer contributions on top of gross income and
| small deductions like for living sufficiently far from the
| workplace, having an internet connection and whatnot, but they
| don't add up to much.
| pzduniak wrote:
| In Poland there are some complexities when you run a company /
| employ, but as an employee it's relatively straightforward UX
| where you click through a government-operated "income tax
| fillings wizard" and either just OK a pre-filled declaration or
| add a couple missing items. Paper filling is a bit more
| complicated, but I think you can get help at the tax office to
| get 1 or 2 forms sorted out.
|
| For self-employment I send 2 documents per month regarding my
| expenses (which is somewhat easy if you understand the rules),
| plus one or two summaries per year. Hiring is a bit more
| complicated, I only file simplified declarations for employing
| private people as contractors. Otherwise I'm pretty much a
| worst case scenario as I file 7 different yearly declarations
| covering most possible sources of income defined in the law.
| It's not that bad, but it could be better.
|
| Running a company can be practically automated with an online
| accounting SaaS, including payroll. Laws tend to be relatively
| understandable and there isn't much complicated math. Most of
| the recent confusion was around shitty laws poorly implemented
| and then partially reverted by our previous government. I did
| not enjoy that, but there were some decent online writeups
| explaining how to proceed.
| narrator wrote:
| Being someone who has some experience with tax law, the cycle of
| tax complexity goes like this:
|
| 1. Tax law is passed.
|
| 2. Really smart CPAs and Tax Lawyers figure out ways to legally
| avoid paying taxes.
|
| 3. Tax people issue regulations intended to close those
| loopholes.
|
| 4. Administrations change and they want to win votes and tweak
| the economy so they lower some taxes and add tax breaks.
|
| 5. New administration comes in and selectively reverses previous
| administration's program because of politics.
|
| 6. If the tax is international tax, then add really smart tax
| lawyer doing multi-jurisdictional tricks to lower taxes (e.g
| Double Irish With a Dutch Sandwich[1]) , governments trying to
| encourage multi-nationals to do business there by adding
| incentives to their tax code, the OECD coming in and trying to
| standardize tax stuff across jurisdictions to prevent this,
| individual pairs of countries doing tax treaties with each other,
| etc.
|
| [1] https://www.investopedia.com/terms/d/double-irish-with-a-
| dut...
| cperciva wrote:
| None of this complexity is from trying to plug tax loopholes.
| Most of it is from politicians wanting to name things.
|
| For example, for decades Canada has had a "personal amount" tax
| credit -- for arcane reasons, rather than saying "the first $X
| of income isn't taxed", the lowest tax bracket starts at $0 but
| there's a non-refundable credit equal to the lowest tax rate
| times $X. Then a politician came along and said "we should
| increase the personal amount so that people can earn more money
| without paying taxes... but we don't want to decrease taxes on
| the top 1%". So now we have a "personal amount" which depends
| on your income. Similarly, in BC we have the "BC Tax Reduction"
| which is an extra tax credit given to people with incomes
| between (roughly) $22k and $36k.
|
| Both of those examples could have simply been implemented as
| tax brackets but voters get far more excited about a "Tax
| Reduction" than they do about a new tax bracket.
| p_j_w wrote:
| >Both of those examples could have simply been implemented as
| tax brackets but voters get far more excited about a "Tax
| Reduction" than they do about a new tax bracket.
|
| Doesn't sound like the problem is entirely on the politicians
| here.
| jessriedel wrote:
| > None of this complexity is from trying to plug tax
| loopholes. Most of it is from politicians wanting to name
| things.
|
| The effect you describe is very real, but "loop hole closure"
| is certainly a source of complexity too, e.g., the US's
| insane alternative minimum tax (AMT), which nearly duplicates
| the amount of tax work to be done by insisting you compute
| your taxes under a second set of assumptions. The idea was to
| make sure people who were using "loopholes" (or just like,
| reasonable features of the tax system) to pay at least above
| a certain amount.
|
| Of course, the sane solution would have been to choose tax
| policies that combine together reasonably. As always,
| loopholes (in the sense of "unjustly low" amounts of tax) are
| much more likely to be created rather than fixed by
| complexity.
| TimPC wrote:
| AMT is also completely insane when it interacts with
| legitimate deductions and deferrals that aren't loopholes.
| For instance stock options from start-ups for stock that
| can't yet be sold.
| phpisthebest wrote:
| I have a problem with calling explicit exemptions, call outs,
| and other things as "loop holes" as if they were no intended to
| be used to avoid taxation.
|
| This is simply incorrect, organizations, people, and groups all
| lobby the government to include their pet line item as an
| exemption, deduction, or credit.
|
| These are not "loop holes" and a CPA or tax lawyer having the
| knowledge to fully utilize all of them is not " legally avoid
| paying taxes" as those taxes where not owed in the first place.
|
| In order to get to the point where paying the correct amount of
| taxes you owe by law is "using loophole to avoid taxes" one has
| to assume 100% of all income is belongs to the government and
| we are just figuring out how much the government is going to
| allow us to keep. I reject that
| bojangleslover wrote:
| Biggest scam of the century that governments have outsourced tax
| collection. Even my fairly financially literate coworkers have no
| idea what "withholding", "W-2" and "FICA" are. They think the
| employer "match" is "free money" and don't understand the
| fundamentals of a 401k. No idea who manages the money, where it
| goes, etc. And I work at a hedge fund.
|
| They just check their bank account every other Friday. That's it.
|
| Compare this with the self-employed who seem to "obsess" over
| taxes, despite barely paying a higher rate.
|
| The phrase "out of sight, out of mind" doesn't seem to do it
| justice.
| piperswe wrote:
| A 401(k) match _is_ free money though. When you leave the
| company, you can just cash out the account - the penalty will
| still probably be less than the match gave you, so you come out
| ahead.
|
| Of course, it's best to just let it sit in retirement accounts
| until you can take a qualified distribution.
| jacobr1 wrote:
| Only in the sense that you can optionally not accept it. But
| it still is part of your compensation, as is in effect, even
| the "employer-paid" portions of healthcare and other
| benefits. From the perspective of the employer they are part
| of your costs and the direct payments reflect that, likewise
| you would need to pay those costs yourself if you were self-
| employed.
| Spivak wrote:
| So it's a semantic thing, employees know it's not literally
| free and comes from their employer but it's free in the
| sense that it's in excess of their negotiated salary.
| amluto wrote:
| > When you leave the company, you can just cash out the
| account
|
| You can even get fancy and roll it over into an IRA and, if
| you have excess cash, convert it to a Roth IRA.
| soared wrote:
| Im in the same boat - would you mind explaining to us every
| other Friday folk why the employer match isn't free money?
| irrational wrote:
| I'm wondering the same thing. The money has been going into
| my 401k for decades. When I start using it after retirement
| when I am 70 or so years old, is there some gotcha I'm not
| aware of?
| astura wrote:
| No, the only real "gotcha" is some employees have their
| match on a vesting schedule and you lose the non-vested
| portion of the money if your employment ends before the
| vesting schedule. These are typically not that very long -
| a few years.
| astura wrote:
| The above comment is just an incoherent, off topic rant.
| Ignore it - it's verbal diarrhea.
|
| Employer match is "free money" (there's no "gotcha" other
| than vesting schedules) and 401k is a part of the American
| tax code whereas this is an article about Canadian payroll.
|
| I presume they are complaining about the fact that employers
| actually budget their match it as part of total compensation
| or whatever. So it's "really just a part of your salary." Or
| perhaps they are just mad they have to put the match into the
| 401k and can't opt to redirect that part of their salary to a
| non-tax advantaged account. Who knows?
| ska wrote:
| The basic 401(k)/403(b) rough equivalent in Canada is an
| RRSP. They also commonly have employer match sometimes.
| There are differences of course.
| dghlsakjg wrote:
| I'm always surprised at the lack of financial literacy in the
| general population.
|
| It is genuinely shocking to me that there are hedge fund
| employees who don't understand FICA and what a W2 means.
|
| OTOH, having been self employed: I obsessed over taxes not
| because I wanted to, but because it is a tremendous and
| continuous pain in the ass.
| pavel_lishin wrote:
| > _Compare this with the self-employed who seem to "obsess"
| over taxes, despite barely paying a higher rate._
|
| I'd wager that it's because it's hard for me, as an employed
| person, to fuck up my taxes so badly that the tax authorities
| would come gunning for me; _most_ of that is handled by my
| employer 's other employees. I just fill out a pretty basic
| form, and count myself done.
|
| Where as if I were self employed, I'd have to worry about
| quarterly filings (I think?), and the knowledge that there's
| absolutely nobody but me who's checking up on things.
| freeone3000 wrote:
| You are required to have quarterly filings. This happens so
| infrequently with self-employed persons that the IRS has a
| special section for if you were supposed to file quarterly,
| but didn't.
| mixdup wrote:
| it's not super hard as a self-employed person, if you don't
| want it to be. Just setup your business as a real company and
| pay yourself via payroll instead of pass-through
|
| There may be other tradeoffs, but there may also be other
| advantages. the original point of just being aware of both
| sides of the coin is a big part of it, most people don't look
| at the deductions on their paycheck. hell, a significant
| number of people think their entire tax bill is just what
| they have to pay in April
| throw0101d wrote:
| > _The phrase "out of sight, out of mind" doesn't seem to do it
| justice._
|
| Which works the opposite way as well: people not setting aside
| enough, which would probably happen if it was not pre-deducted.
| Just ask then-musician / now-actor Will Smith:
|
| * https://www.youtube.com/watch?v=y_WoOYybCro
|
| * https://www.youtube.com/watch?v=6qCZfS_I-zM
|
| * https://www.thethings.com/will-smith-28-million-irs-tax-
| debt...
| lopkeny12ko wrote:
| If your coworkers don't know what withholding, a W2, and FICA
| are, they are not "financially literate"...
| alfl wrote:
| > Biggest scam of the century that governments have outsourced
| tax collection.
|
| Last century, but yes :)
| lotsofpulp wrote:
| >Even my fairly financially literate coworkers have no idea
| what "withholding", "W-2" and "FICA" are. They think the
| employer "match" is "free money" and don't understand the
| fundamentals of a 401k. No idea who manages the money, where it
| goes, etc. And I work at a hedge fund.
|
| Considering spending 5 minutes on Wikipedia looking up those
| terms would give a pretty good understanding, your coworkers
| only do not know because the do not want to know.
| fasthands9 wrote:
| What part of that is bad? Don't we want a system where
| everything is clear to the taxpayer how much they owe and they
| can be certain how much they receive each pay check?
|
| For those who care about finance and want to know - it is easy
| to figure out where your money is. With a 401k you do have
| basic choices and can monitor things pretty well. Other
| alternatives seem to be pensions (where the employee really can
| see nothing) or leaving it to each person to decide completely
| (which the government doesn't like because a certain amount
| will blow it all and then they will have to pay for them when
| they are old anyways)
| madamelic wrote:
| > Biggest scam of the century that governments have outsourced
| tax collection.
|
| Not sure if this is what you were getting at but in
| Pennsylvania, US, the school and local taxes are collected by a
| variety of law firms / tax firms with no relation to the
| government because they are entirely private firms that have
| been given full reins.
|
| So the municipal tax firm for county A may not be the same for
| county B. What makes this even more terrifying is you only
| learn this when you get your first "pay us or else" letter from
| a law firm that essentially is just "we are your municipal tax
| authority, pay us $600 because we have calculated you are
| wrong".
|
| And apparently they are frequently wrong and assume best case
| scenarios in their favor. There's a huge collection of "Is this
| a scam?" questions about it online. For an example of how
| terrible they are, if you move to PA in May, there is a very
| good chance they'll demand taxes for the year previous to when
| you lived there. That's what happened to me and apparently many
| others.
| concordDance wrote:
| I once made one of these for HMRC's self assessment tax
| calculation[1], it had about a thousand nodes.
|
| [1]
| https://assets.publishing.service.gov.uk/media/5dfa35f4e5274...
| CaliforniaKarl wrote:
| It's charts like this why payroll providers exist. See the
| relevant _Bits About Money_ post at
| https://www.bitsaboutmoney.com/archive/payroll-providers-pow...
| j45 wrote:
| It's still math and the standardizing to ensure what payroll
| providers submit is correct is still checked by the government,
| who could provide said standard.
| worik wrote:
| When things get complex even the payroll providers get it
| wrong
|
| Where I live (New Zealand) holiday pay got complex, and quite
| a few civil service payrolls got it wrong (IIRC by a few
| different providors). It tooke years for anyone to notice,
| and has taken years, and billions, to put right.
|
| Keep it simple. Please
| juujian wrote:
| Very nice chart. Since the bubbles are wider than they are high,
| I would have probably changes the direction from left to right.
| Which in graphviz in theory (but only in theory!) takes just one
| line.
| transcriptase wrote:
| The fun part about being Canadian is that you get to compete with
| the entire world for remote jobs with Canadian companies, but no
| company based outside of Canada wants to deal with hoops required
| to hire a remote employee based in Canada if they don't already
| have a presence here.
| busterarm wrote:
| I know one L.A.-based company that hires tons of remote
| Canadians, especially in engineering, because they're
| cheaper...but they're essentially a payroll/business accounting
| company.
| funksta wrote:
| Try finding work as a sole proprietor contractor, remotely for
| a US company. It's cheaper for them vs hiring an in-office
| employee, and with higher US tech salaries and currency
| conversion, you'll generally come out ahead too
| j45 wrote:
| A foreign company doesn't need to make it easy to hire an
| employee who is a Canadian.
|
| If there is an advantage to a Canadian to be employed from a
| foreign company, it's maybe a bit more up to them if they
| want to do a bit to stand out a lot.
|
| A single person corporation in Canada akin to a professional
| corporation like a doctor or lawyer may have is not out of
| the question, especially with the advantages it can provide.
| ska wrote:
| This is pretty true most places, hiring non contract (e.g. full
| time) employees in a different country is a pain in the ass.
| Europe is trickier than Canada, fwiw, on average at least.
|
| These days there are a number of companies that specialize in
| simplifying this, including liability shields, but of course
| for a fee.
|
| Honestly it's easier to do it as consulting or freelance
| contracts, but that puts the employee in exactly the same
| position as OP. Still, for e.g. typical tech jobs an account to
| sort it all out for you will be maybe 3k or so, many will opt
| for that.
| 1letterunixname wrote:
| This sounds like an under-exploited business opportunity for
| Canadian staffing and consulting companies. Where there is
| difficulty for some, there is defensibility for others.
| dangerboysteve wrote:
| Last time I looked at Canadian payroll services, many were very
| affordable. Why bother spending the time on this ?
| robertlagrant wrote:
| Why should calculating how much money to give the government
| cost money?
| dangerboysteve wrote:
| Because of the time it takes to record and distribute
| everything and pay the government.
| gus_massa wrote:
| He likes solving almost imposible math problems.
| chrisfosterelli wrote:
| Paying for something helps but doesn't entirely free you from a
| responsibility to understand this flow. Because an employee is
| going to ask you why they have X on their payroll and not Y
| like they calculated on their end and then you have to spend an
| afternoon reverse engineering everything the tool did because
| "our payroll tool just did it like that" isn't a very
| professional answer.
| jerf wrote:
| Are there any loops?
|
| I extend this question to all the people who have posted their
| own graphs of other similar things.
| robertlagrant wrote:
| I think what's clear is that regardless of how complex this
| appears, we should never blame mistakes or loopholes arising from
| this complexity on the law makers. Only on tax payers.
| j45 wrote:
| And the cost.
| from-nibly wrote:
| The solution is not to automate or codify any of this, it's to
| remove it. This is utter nonsense. What problem could this
| possibly solve other than widening the equality gap?
| Evidlo wrote:
| Devil's advocate: I have never seen a GraphViz plot that didn't
| look like spaghetti, so the fact that this plot looks like a mess
| doesn't mean much to me.
| orzig wrote:
| I'm in the US but I'll say for sure that things like this are
| about half the reason I haven't hired any employees for my LLC. I
| wish I could, but I'd be de facto hiring an accountant as well!
| jweir wrote:
| If you are considering hiring and the hire is a developer or at
| all involved in research and experimentation make sure you are
| well versed in Section 174.
|
| You could be on the hook for a large tax bill since you have to
| write off developer expenses over 5 years - this is true
| whether an employee or contractor.
|
| Hopefully it will be repealed* - but if not it is one of those
| things that no one would expect to exist since it is in the
| words of Senator Wyden "stupid."
|
| https://www.law.cornell.edu/uscode/text/26/174
|
| * edit It won't be repealed but a law can be created to ignored
| it until a future date. Once on the books, because of
| accounting, it is very hard to remove a tax law.
| shutupnerd0000 wrote:
| My guy, you're replying to someone that said theyre not
| considering hiring
| orzig wrote:
| That's fine, I appreciate it! We're all conversing in
| public, and I'm sure it will be useful to someone.
|
| And besides, this information makes me even more happy with
| an opinion I already have - isn't that what the internet is
| for?
| IG_Semmelweiss wrote:
| If you ever consider to, *given the remote work trends*,
| consider this:
|
| I'd place high importance on the employee state to the state
| you are hiring them out of.
|
| Some states are a nightmare to deal with. For example, NJ, CA,
| NY and OH. Once you are registered in X state, your company is
| fair game to be pursued for any kind of perceived (lack of)
| compliance by that state, long after that employee has left you
| for another job. For example, you could earn a large fine for
| not filing to report you have no staff in the state.
|
| States that I found were lovely to deal with were ID, TN, and
| TX.
|
| Generally speaking, its highly recommendable to hire employees
| from your state only for this reason. I would not hire unless
| you are absolutely needing to.
| pnw wrote:
| I got a notice for unpaid back taxes from some state agency
| in California for a company that had been sold over a decade
| earlier, merely because we had one part-time employee in
| California for a few months.
| newZWhoDis wrote:
| This. I never hire anyone from NY or CA out of principle.
| jjeaff wrote:
| As far as calculating payroll and remitting payments to the
| proper agencies federally and in their respective states, that
| shouldn't be a hindrance at all. There are countless payroll
| service companies that will do all the calculations and
| remittances for $30-$50 a month per employee. You definitely
| don't need an accountant for regular payroll.
| danjc wrote:
| Doesn't a PEO like ADP make this a lot easier?
| hn_throwaway_99 wrote:
| Like another comment said, there are reasons payroll companies
| exist, and these days there are tons of services that make this
| easy to do, compliantly. E.g. there is a good reason like the
| majority of small/medium-ish sized business I know use Gusto
| because they make it really easy to add contractors or
| employees (and I'm not specifically pitching Gusto, there are a
| lot of competitors you can search for). While these products
| aren't free, the benefit of their SaaS model is that it's a
| per-employee cost that can grow with you.
| pnw wrote:
| This is why PEO's like Justworks are great IMHO. You can offer
| the big company benefits experience without getting ground to
| dust by federal/state/local regulations. I can't imagine going
| back to the old way at any small company.
| pcthrowaway wrote:
| If the issue is figuring out payroll (rather than accounting
| complexities that arise from having additional expenses), you
| can also hire via remote.com or deel.com, even if hiring
| domestically, as long as your employee is either salaried or
| operating as an independent contractor (not actually an
| employee in that situation though)
|
| Employers of record ensure compliance with all local laws and
| basically just bill you the employee's fully loaded cost, plus
| their service fee
| neilv wrote:
| Several years ago, I worked through my US IRS tax return forms by
| coding the data and calculations in Scheme. The representation
| ended up being that each form line value was a Scheme procedure
| that called other such procedures, which was one way to enforce
| dependencies. (Fortunately, there were no cycles in the
| dependencies, like the article author found in their CRA payroll
| deductions work.)
|
| I don't have the code handy, but the procedures typically looked
| like this: (define (form-1234-line-22--foo-
| income-dollars) 234.00) (define
| (form-1234-line-23--taxable-bar-income-dollars) (max (+
| (form-1234-line-22--foo-income-dollars)
| (form-1234-line-21--baz-income-dollars)
| (form-1234-schedule-x-line-10--total-blort-dollars))
| 0.00))
|
| It was a lot of work, but (since I used error placeholders for
| many code paths my own data wouldn't exercise) not that much more
| work than I had to do anyway, for doing my returns with just the
| PDF forms and instructions. (The extra work came when I had to
| enter and double-check the form data manually in the official
| format, for this one-off exercise.)
|
| I did this exercise to see what it would look like, would it save
| me time/headache, and did it suggest anything about DSLs for this
| kind of work (say, for domain experts to codify and maintain
| something more formal and checkable than the form instructions or
| tax code).
| cdcarter wrote:
| Did you take advantage of the homoiconicity of scheme to make
| this happen?
| neilv wrote:
| In this case, I was first seeing what could be done with
| basic Scheme algorithmic programming language mechanisms
| (e.g., using procedures and the magic of toplevel
| definitions).
|
| Then, after seeing how tax form logic ended up that way, one
| direction would be to define a DSL that makes that easier to
| work with. For example, if we find everything can be
| implemented as these procedures, or with maybe with an
| additional concept (such as to handle cycles like in the
| article), a simple first step DSL might be another
| s-expression language that has magic variables that are more
| akin to spreadsheet cell references, in that the dependencies
| are evaluated in order. And it might also do things like
| populate a hashtable with the cached values for application
| use (e.g., PDF form-filling). That DSL might be implemented
| as a simple `syntax-case` or `syntax-parse` transformer. If
| that works and could, we could optimally make it more
| palatable/marketable/politic by defining a keywords-and-
| whitespace grammar that parses by transforming those syntax
| objects to syntax objects in our intermediate s-expression
| DSL (which transforms to the basic Scheme code approach we
| worked out originally).
|
| There are other valid ways (say, you want tax law logic to be
| definable dynamically at run time). Though some involve
| `eval`, which I discourage. https://lists.racket-
| lang.org/users/archive/2014-July/063597...
| jdmichal wrote:
| I used to do the same with just Excel. First sheet called 1040,
| one row per line. Schedules and worksheets got additional
| sheets, so I could easily pull in the values from and to other
| sheets.
| sidcool wrote:
| How does one even begin Designing a software system for such a
| complex process! The impact of a bug in such system would be
| huge!!
| jeffrallen wrote:
| I once spent an hour removing a few cents' error in a salary-
| computation and then 2 weeks implementing the correct one-time
| payment to 200 staff in order to make them whole from a couple
| years of incorrect salaries. The whole thing cost about $2000,
| so each individual adjustment was small, but we had to do it
| with transparency and humility to maintain worker happiness.
| j45 wrote:
| It would need to be flexible, auditable, historical (each year
| ran it's version).
|
| So, basically, no software devs really at the business analysis
| layer. The process mapping has to be the code. Decision making
| in the process mapping has to be editable.
|
| It's quite doable and present with some of the current software
| packages that operate in the finance / insurance / banking /
| government / enterprise space.
|
| Imho, how software has historically been created for business
| is now broken. Software used to aim for a fixed, or slowly
| changing operating model, and the pandemic kind of introduced a
| bunch of ongoing change.
|
| Software will become more malleable as a result.
| jeffrallen wrote:
| Would be interesting to have a constitutional requirement on
| government to be able to explain taxes to citizens in a
| declarative language with a max complexity of N bits of
| information.
|
| Railroad unions: you want an exemption for your members? Write a
| diff and go to war with hedge fund managers to get the bits you
| need to implement your boondoggle. :)
|
| I'm reminded of the "delta this build causes in bytes of
| flashrom" reports you see at the bottom of a compile job on
| embedded platforms.
| phailhaus wrote:
| Graphs are terrible for visualizing dependencies. Even a
| reasonable system can "look messy" when rendered this way. I'd be
| more interested in seeing what this would look like as a tangled
| tree. [1]
|
| [1] https://observablehq.com/@nitaku/tangled-tree-
| visualization-...
| nb_key wrote:
| Canadian Federation of Independent Businesses (CFIB) has a more
| simpler template for small business. https://www.cfib-
| fcei.ca/en/tools-resources/payroll-deductio...
| mrloba wrote:
| It's a running joke in our org that we should always vote for a
| new government. Keep making the dependency graph messy and we'll
| keep having a job
| 1letterunixname wrote:
| Complexity is a signal of attempted fairness, selective
| corruption, or bureaucratic survival, stochastically mixed to
| conceal the latter 2.
|
| Canadian and US governments have enough information to calculate
| taxes for you, but choose instead to impose all manner of
| additional complexity, cost, and time sink on taxpayers of
| varying degrees of sophistication because it's tradition. Norway
| has prepared statements automatically for taxpayers for 20+
| years.
| Joel_Mckay wrote:
| Doing your own taxes is like doing your own dental work.
|
| You will never be able to keep up with the legal, bureaucratic,
| and financial changes. Whatever a local competent accounting firm
| charges, they will almost always recover their cost in a
| commercial return.
|
| If you have under 12 employees, than ADP payroll can work in some
| situation.
| SurgeArrest wrote:
| Tax laws as well as other laws, need to have a requirement to be
| rewritten from scratch and re-approved every 10 years or so, such
| that no law or regulation is complex enough that an elected
| official can't describe it in full before voting on it.
___________________________________________________________________
(page generated 2024-01-02 23:01 UTC)