Learn accounting for free
accountingcoach.com
accountingcoach.com
My thoughts on OP:
I read through the first two parts of the first course on this site:
- Part 1 Introduction to Accounting Basics, A Story for Relating to Accounting Basics
- Part 2 Income Statement
Based on what I read, I could not recommend this. You could get to the end of the 'income statement' part, without encountering any definition of 'profit', which is the very thing that the income statement is meant to show.
If you want a solid introduction to accounting, I'd recommend Frank Wood's book "Business Accounting 1". You don't need the latest (15th edition). The principles haven't changed. I used the 10th edition: Business Accounting Volume 1 https://www.amazon.co.uk/dp/0273681494/
* Assets: things you own (e.g. tractor, money in bank, money owed by customers)
* Liabilities: things you owe (e.g. unpaid supplier bills, loan owed to bank)
* Assets and liabilities are both measured in a single currency (e.g. $).
* Equity (aka 'book value'): A measure of the value of the company. Calculated as Assets minus Liabilities.
Two ways to write the equation above:
* Equity = Assets - Liabilities
* Equity + Liabilities = Assets
Equity changes in response to (i) company operations, and (ii) financing activities.
Financing activities are things like:
- selling new shares
- buying back shares (or paying dividends)
- borrowing money (bank loans, or issuing bonds)
If there were no financing activities in the period, then profit is the derivative of equity with respect to time. It's a measure of the change in (book) value over a period.
If book value went up, you made a profit. If book value went down, you made a loss.
(Of course, book value would also go up if you just sold some shares, and profit doesn't count those changes, as they're just financing activities.)
Summarized: a ledger is a directed graph of accounts, where edges are transactions, and each transaction is recorded twice: in the "from" node and the "to" node.
I suspect some people (even some HN readers) would find it easier to think of ledgers as lists of transactions with running totals.
[0] e.g. it's not strictly true that book value is a lower bound on company value
But I guess you could model each transaction as an edge, with the direction specifying which account is debited and which credited, and the weight determining the amount.
I don't find that particularly helpful myself, but I put that down to my unfamiliarity with graph data structures and the associated algorithms. Maybe there's something you can do more easily with a graph database, than you can if you have the same info in a table?
In your chart of accounts, each account corresponds to exactly one of these:
- Asset
- Liability
- Equity (changes in this affect the income statement)
Whenever a transaction takes place, the debits and credits must sum up. For example, when you take a bank loan, your assets increase (debit) but your liabilities also increase (credit) by the same amount.
Sometimes something touches more than two accounts. For example, if you sell a cup of coffee for $2, using up $0.50 worth of beans:
CR Revenue $2 DR COGS $0.50 DR Cash $2 CR Materials $0.50
The first two lines increase the book value of the business by $1.50.
The last two lines increase the assets of the business by $1.50 (cash up by $2, bean inventory down by $0.50).
It's easy to get confused about debits and credits. I attempted to create a memorable explanation here: https://www.encona.com/posts/debits-and-credits
1. Profit/loss measures changes in equity resulting from operating activity, as opposed to financing activities (which just rearrange how the company is financed).
2. Examples of financing activities are taking out (or paying back) loans, issuing (or buying back) shares, and issuing dividends.
3. Some (not all, as you point out!) of those financing activities will increase or decrease equity. So, when thinking about profit as the rate of change of book value, you should be careful add back any changes that are the result of financing activities. (specifically: ignore changes in equity due to money going to, or coming from, shareholders)
- Your bank account (an asset) goes up by $1MM
- Your loan account (a liability) goes up by $1MM
So equity is unchanged at that point.
But every month after that, you'll be charged interest:
- Loan account (liability) increases (CR)
- P+L account (equity) decreases (DR)
Can you in fact do that? It's possible with a residential mortgage in the US, because there are laws prohibiting prepayment penalties. And I think even those don't apply to refinanced mortgages?
In reality, increasing debt to a certain point also increases risk, which in turn increases return on equity.
When a company takes a loan, even if that loan is so large as to make insolvency almost inevitable, there is no impact on equity (book value).
Pretty sure that was the book I grudged most having to pay for when I was at college in 1986. I truly despised accounting ;)
Three years later and I end up writing code to extend dbFlex and supporting Pegasus accounting software, go figure :)
I wish I'd found it earlier. It was more in-depth than the MBA material on financial reporting, and was presented more logically than the study guides I'd been using.
But you wouldn't know that if you read those two sections of the text. They use the word 'profitability' several times, without ever defining it.
Right at the end of part 2 (income statement), they say this:
"The difference (or "net") between the revenues and expenses for Direct Delivery is often referred to as the bottom line and it is labeled as either Net Income or Net Loss."
The above is true, but it's kind of hard to grasp for someone whose only exposure to accounting is this site. And the previous sentence again refers to 'profitability' without being explicit that 'profit' and 'net income' are the same thing.
Gross profit is different.
From what you've written, it sounds like a good/great reference resource for specific topics, once you already know the basics/fundamentals.
But, based on a 5 min look at the first two pieces of content in the 'accounting basics' section, I didn't think it would be good for someone who wants to learn accounting from zero.
Of course, I may be wrong, as I sampled less than 1% of the content.
The thing is, that while cash is a matter of fact, profit is a question of opinion. This is a fundamental truism in accounting. You cannot really teach how accounting allows you to express your opinion until you first understand which facts you have to work with.
But I don't agree that you have to start with facts. I think you can start with the account equation, then go on to types of asset/liability/equity, and only then move on to concrete examples of transactions, and how they impact the balance sheet. And then you compare two snapshots of your balance sheet to show what profit is.
You can do all this with concrete examples with virtually no risk (e.g. a lemonade stand where people pay cash before they are served, with almost no equipment to depreciate, no long-lived inventory etc.).
1. Wood's Business Accounting 2
2. Some of the CFA study materials
3. Some of the 10kdiver threads: https://10kdiver.com/twitter-threads/
4. Books about financial fraud (that talk about incorrect ways to do accounting).
5. IFRS standards for your industry.
6. Googling 'Accounting for X', where X is something to do with your industry (e.g. 'virtual goods' or 'unpaid loan interest').
1. Export all the transactions from your accounting software (from the start of time, to the end of last month).
2. Export the chart of accounts from your accounting software.
3. Load these into two separate tabs in Excel.
4. Add a column to #1, that maps the account to the relevant account type (e.g. 'assets') and statement (BS or P&L), using #2 as a lookup table.
5. Create a pivot table from #1, to create a balance sheet.
6. Create another pivot table from #1, but this time use time (month or year) as a dimension.
7. See if you can relate some of the balance sheet and P&L values from your spreadsheet, with the values on the statements produced by your accounting software.
8. Assuming they match, go back to the balance sheet pivot table and double-click on one of the non-zero values. You will see a history of every transaction that changed that account.
During these years I started playing with the idea of training myself in basic/intermediate accounting and/or finance. The motivation is twofold: run my own business better (and maybe stop paying an accountant to do my taxes) and maybe work on software projects in finance (where I suspect there is good money to be made).
I'd be interested hearing stories from fellow software engineers who did similar training!
Moved from self-employed for the odd side gig, to UK LTD co, to VAT registered UK LTD co.
The "business services mafia" will like to frighten you into believing you have to drop hundreds of £ on their services - plus £120/yr for an accounts package, more for payroll, business banking, etc.
Because your mind is too tiny to comprehend the ways of the priests. e.g: Don't ever ask a question in a business forum, you'll get swamped with the clergy telling you the question implies you're definitely going to prison because you're going to get it all wrong.
Do not believe them.
It is perfectly possible - perhaps even 'easy' - and if you understand the basics of double-entry accounting, all entirely learnable without too much effort. And best of all, you can do it almost for free!
Don't drop hundreds per year on Xero, use https://www.quickfile.co.uk. Cost: £0 (upsell on receipt scanning, but I don't use that). Does VAT, with electronic submission. I literally don't understand why you'd spend money on Xero - the extent to which it's advertised over here is insane; you're just paying for TV advertising.
Payroll (and all the tax calculation): Free, for up to 3 users. https://www.shapepayroll.com
Business banking: Tide. 20p/per transaction (no monthly fees!)
The hardest parts are - discipline of entering the transactions and not letting them build up - in the UK, understanding capital allowances vs depreciation - when doing payroll how to split the payments into the correct accounts (shape does the sums, you have to account for it correctly) - Make sure you pay all your HMRC bills - Doing the year end as a micro-entity (the CT600 corporation tax return) is actually surprisingly easy, and amounts to putting numbers in about 6 boxes.
By all means pay for all of this stuff if it isn't of interest to you. For me, as I intend my co to run long after I finish working, I didn't want to have annual fees for services that I really wouldn't be getting the use out of.
It's even worse in the UK if you mention gas. If you so much as mention a boiler you'll be pounced on by the cartel inventing their own legislation.
It seems like these fields are filled with people who can't stand DIY and just try and get everyone to pay for professional services.
When I try and replace a burnt fuse and ask for help, I accept that I'm not a professional and might burn my house down. Just tell me the risks and how to do it. I'm not a child, and I'm not going to sue someone when I've said upfront that nobody becomes liable just because they gave me advice.
You can file your accounts (which are trivial for a micro entity) directly with Companies house, or, when you do your CT600 corporation tax return (which is the 6 or so numbers) there's a checkbox marked "also file to companies house".
You absolutely do not need an accountant.
You also get a great deal of time (extra on your first year) between year-end and when you have to submit, so there is no panic.
My mother was an accountant for years, I learned a lot of accounting, but there is a MASSIVE difference between knowing how to basically bookkeep and the tax code.
I'm in the US - so might be easier in less tax-lobbied countries.
When I started my second consulting firm (after closing down my first when I took a "real job"), I initially tried to go at it myself, but payroll is a complex process, so I decided to outsource that. Cost me $20/mo, but saved me hours of work. Then when the end of my first tax year hit, I started trying to figure out how to do my corporate taxes myself. Downloaded all of the tax forms I could find that I needed, and printed the couple hundred pages of information. 4 weeks into filling out the forms and 2 weeks before a filing deadline, I gave up. To the best of my knowledge I had underpaid my quarterly estimates by $30k.
I reached out to a small business accountant (brother of a good friend), and for only $1200, he handled the 112 page tax return, found out I had only underpaid by less than $2000, also found a whole bunch of write offs I didn't even know to look for, and did a full reconciliation of my accounts for that.
It was at this point that I decided I will always pay for professionals to do the part of this job that I am not proficient at. All of my various accounts-related services add up to less than 1% of my revenue, and if it were even 5 or 10% of my revenue, I'd probably still pay it, just to know it was done correctly.
The dividends paid by having basic accounting knowledge were twofold.
It definitely helped me run the business better-- particularly when it came to working with the CPA who handles our taxes. It also helped me in communicating the operation of the business to the partners who have less of an accounting background. I've ended-up doing all the bookkeeping for the business and I think we've saved a ton of money versus hiring an accountant to do that basic work. (We still hire-out for tax-related work because I don't want to sink time into learning those intricacies.)
The other major benefit, and arguably a larger one than the first, is giving me credibility when I talk to Customers' finance and accounting people. Properly using the terminology they're comfortable with to describe their business problems feels like it has helped me land relationships and projects. Obviously, I can't spin-up a "scratch universe" to test that hypothesis, but I do know that I've seen tech-heavy and accounting-light presentations by other vendors go over very badly with some of the same people.
Finally, I'd argue bookkeeping and accounting is, arguably, the oldest "information technology" discipline in humanity. Much of IT springs from the history of bookkeeping becoming computerized ("automatic data processing"). I think knowing the history of IT, be from the dawn of computer science birthing from logic and mathematics, or the first practical applications of IT to human problems, is valuable to its practitioners.
> The other major benefit, and arguably a larger one than the first, is giving me credibility when I talk to Customers' finance and accounting people.
I also have benefited a lot from the accounting subjects I took in college have also been an advantage in my professional career as I can 'speak the language' of my workplace's financial department.
> Finally, I'd argue bookkeeping and accounting is, arguably, the oldest "information technology" discipline in humanity. So much of the discipline springs from the history of bookkeeping becoming computerized ("automatic data processing"). It's a good background to working in IT to know about where it came from.
- Definitely. The software used at my family's the accounting office was older than any other I had used. This year I helped them migrate from an MSDOS Fox Pro 2 application to a newer app.
The MS-DOS It worked well, it is even still supported by the developer (!), but the work around required to make everything work in a Win 10 environment was too much of a hassle.
It felt like doing digital archeology when opening files created between 1989 and 1994 to see how data was stored. Even this newer app still uses an older tech stack: Visual Fox Pro 9. Accounting software seems to run in an alternate timeline.
I am also a freelance consultant but in the cloud infra space. I appreciate the freedom it gives me and the insight on the operations of running a business are invaluable.
As a software engineering I always looked suspiciously at accounting and finance, but I have to admit I've been wrong. I discovered a practical and theoretical elegance that is very pleasing for someone like me.
I ended up enrolling in an MBA because I wanted to learn more about the business side of things. I had a few courses about corporate finance, valuation and accounting which filled many gaps I had.
I still don't trust myself running my own finances completely, so I do pay an accountant to take care of the details. But I am very happy I know financially what is what when deciding where to take my little business.
Knowledge is power, especially when it comes to finance.
About 10 years ago I brought on an outside accountant to handle my small business stuff. They do the final 'paperwork', but it's forced me to become a bit more diligent about financial housekeeping stuff - documenting purchases, keeping tax forms, etc. And I try to never let things go more than a few weeks before reviewing (primarily expenses). Part of the 'dread' of financial stuff was having to wade through a year's worth of paperwork. Keep ahead of that and working with an external accountant has made all this more of an annoyance than anything else.
Same goes for basic infrastructure and configuration knowledge to a certain extent:)
IIRC it has a SQL Schema that can be imported into most databases.
Learning account is great - it helps you to understand P&L and BS etc - but what you really need is managerial accounting knowledge. I made a mistake of thinking bookkeeping was accounting and ended up not doing good tax planning etc - let's just say I'm still paying for it. Painful lesson!
I would highly recommend still keeping a CPA around - make sure they're truly into Managerial Accounting.
https://www.dwmbeancounter.com/ is often mentioned on similar threads. People also like to link to beancount's manual http://furius.ca/beancount/doc/double-entry .
But I agree with mindslight's comment. They all kinda suck. Reading an actual textbook like the top comment suggested is probably better.
Porter has a book - the alternatives to debits and credits, using financial information.
Basically accounting is an equation you keep in balance.
Assets = Liabilities + Equity
You can understand how any transaction "posts" by keeping this equation in balance (or solving it).
You borrowed $100K? Your liabilities are + 100K, and cash (an asset) is also + 100K. Books in balance.
(Change in) Equity = Income - Expense
Extends this formula to your profit and loss statement if needed. Errors accumulate in the balance sheet as well.
Note that balance sheet is more important. With two balance sheets at different times I can see my net income for that period (no categorization of income / expense needed).
The A=L+OE formula is a poor model for understanding accounting when the accounts dont fall neatly into those 5 high level categories. And unfortunately you almost immediately encounter accounts of that nature (accumulated depreciation and loans are great examples).
That's a drastic oversimplification. Typically, both debits and credits are entered into an accounting program as positive numbers, and it is the nature of the account being debited or credited that determines whether the number is added to or subtracted from the account balance.
Or, as the old joke goes, an accountant for years would always start the work day by opening a locked desk drawer, removing a piece of paper, and studying it for a moment before returning it to the drawer. After his sudden and unexpected death one day, one of his staff had to satisfy their curiosity and opened the drawer to see what was written on the paper. It said, "debits to the window, credits to the door".
To get it, you need to know that by tradition, debits are entered on the left-hand side of the entry form, and credits on the right hand side.
This is both technically correct and incorrect. You're right about the nature of debits and credits, but practically every accounting software I've ever used (I'm a CPA) represents credits as negative numbers. The software just assumes that the user knows that it's actually a credit, not a negative number.
So if you always represent your credits as negative numbers, then you have to (counter-intuitively) subtract it from Liab/Eq/Inc accounts that you are increasing, or add it to Asset/Exp accounts that you are decreasing.
I wrote my own double entry accounting program back in the 1980s using a DOS relational database program and used it successfully for the next twenty years (before I switched to using Quickbooks) for both personal and business purposes. Both programs (mine and QB) represent credits as positive numbers.
[1]https://www.accountingtools.com/articles/2017/5/17/debits-an...
Its why i dislike the accounting equation. Its leads people to really overvalue how important account types are.
On the database level you dont care at all about it. The accounts are simply another text column and the bare minimum has no further information.
Only when trying to present the accounts in a P&L or something do you try to ascertain what the type is. Even then the only essential information is whether the account is debit or credit positive, and maybe whether it is a P&L or balance sheet account.
Its at this point here that you could optionally classify the account as Liab/Eq/Inc to give you some nice headers for the financial reports but to be honest you could just throw that back on the user and let them classify their own headers. Accountants are normally better at knowing what their financials should look like and forcing them to comply with your account types is probably a limiting and frustrating anti feature.
A contra-equity account (like "Owner draws") has a normal debit balance. That's contrary to the normal credit balance of an equity account. It still summarizes to equity and results in the owner's draws being debited from the owner's equity debit balance.
When I hear programmers talking about debits / credits like they're positive or negative I get a feeling that they're trying to re-invent a really simple "wheel" that they don't want to understand. It reminds me of wild gyrations programmers go thru w/ ORM's to avoid just learning some SQL.
Harder accounts are things like tracking inventory. Yes you have the easy "Inventory" account on the balance sheet, but what about the "Opening Balance", "Purchases" and "Closing Balance" accounts that live on the profit and loss. They are all debit positive accounts but two of those always carry a credit balance and should be presented as a negative on the P&L.
If you want to be pedantic then probably those 3 accounts combined make up an expense account. But accountants split them out to make the financials easier to process. And the account split into 3 sub accounts for better presentation doesnt fit into the broad categories, but its still normal practice.
A debit to a loan account only reduces it if it is a credit loan. A debit to a debit loan account actually increases it (Think a bank giving further money to their customers).
If you are debiting a loan account it means the external third party is giving cash to the person recording the transaction.
If you issue a refund then you are giving cash to the external third party so its a negative (credit). Then the positive side of the journal is against your income account (reducing your income).
Debits and Credits are not positive and negative, but they are a concept that was invented before negative numbers existed and are perfectly represented by positive and negative numbers.
But when it comes time to do actual accounting, there is a whole host of much more complicated concepts - depreciation, capitalization, tax law, tax law, tax law, etc. And these never seem to be explained in any comprehensive way that would make me think I "know" accounting. Rather it's like the pedagogy is focused on basic math (which people call "accounting"), because you will only learn all of the details with experience.
I even felt this same divide when I tried out Quickbooks, which I had thought was one of the gold standards for small business accounting. I was hoping for something that would walk me through how I needed to categorize expenses, track assets for depreciation, etc. Instead I was greeted with basically a spreadsheet replacement to automate problems I didn't have (eg printing checks at scale).
Am I wildly off base here, or is there something else I'm missing?
Taking a look at the site posted, it does seems to have many chapters with later ones covering advanced topics. But for instance taking a look at the chapter on depreciation, there are still additional details you'd actually need to do your taxes. I can understand how a simpler model helps someone learning this as their "first field", and they'll learn the richer model later. But from the perspective of someone who knows how to program, I'm still left wondering what value there is from reading general guides versus eg directly digging into what tax law forces you to calculate.
For example instead of having to learn what accounts to debit and credit when invoicing and then receiving payment from a customer you enter invoices in the invoice UI and receive payments in the receive payments and it takes care of the debits and credits for you.
You can use Quickbooks to directly do double entry accounting by entering company journal entries. You (or your bookkeeper/accountant) will do that for more complex transactions that don't have a dedicated UI like, for example, partially returning a damage deposit to a tenant with the remainder covering repairs needed.
I took a community college course in Accounting when I was thinking about enrolling in an MBA back in the '90s. You can learn the math in a really short amount of time - it is just basic addition/subtraction. It does take a while to get an intuitive feel as to why some things are debit normal and some are credit normal. Doing a bunch of "T" accounts will bake it into your brain. There are some good graphics here about that (first site I found while Googling) - https://corporatefinanceinstitute.com/resources/knowledge/ac...
I know this is apostasy, but even "double entry" itself feels this way to me, compared with say more freeform "tags". Like if you pay an expense for repairs, which may be tax deductible, then it seems the only way to represent that expense in strict double book is to have 2 accounts for (Repairs_Tax, Repairs_Notax). And it gets even worse when federal and state tax differ, or multiple states are involved. Whereas what I really want is for that single transaction to possibly show up in multiple expense categories, which are then later summed for specific reports.
Maybe my questions parallel the Lisp curse where arithmetic has gotten so easy I'm brushing off what I perceive to be overdiligent focus on shared mechanics? I just don't see what the traditional framework gets me, compared to how much people focus on it.
It is almost always a matter of the account having tax relevance, not each individual transaction that involves that account.
> the only way to represent that expense in strict double book is to have 2 accounts for (Repairs_Tax, Repairs_Notax)
There are very few accounts that need to be split like that for tax purposes. Meals & entertainment are one such (although the tax laws about that change from year to year sometimes), and maybe the part of dues to a professional organization that are for political lobbying purposes. It's really not a problem at least in the U.S. tax code.
And note, as I previously commented, it is quite common for a business to have at minimum two sets of books, one for tax and one for book (the company's own internal representation of its financial position).
>[T-accounts] just seem to be a visual method to represent negative numbers
T-accounts are an instructional tool, they are not used for actual production accounting purposes. And they don't represent negative numbers, they illustrate a journal entry's effect on the general ledger accounts. Therefore, there is no need to include a date attribute. Rest assured, in a real double-entry system, every single debit and credit is date-stamped.
I disagree. Take repairs - according to tax law, some can be deducted and some need to be capitalized.
What I would expect from "accounting" software is to ask you questions about the type of expense, and decide what category (account) it needed to be placed in. And then for depreciated expenses, let you pick a depreciation method and track that year to year.
> it is quite common for a business to have at minimum two sets of books, one for tax and one for book
That contradicts your claim that it's not necessary to split most accounts, since at least all accounts are being doubled! From a programming perspective, why would you want to copy the entire data model and then make some modifications to one copy, rather than having a single data model that models everything?
> (the company's own internal representation of its financial position).
I'll admit that for my own purposes I'm discounting this, as it seems less applicable to small businesses. The real reason I need to track "depreciation" is because tax law makes me do so. From my perspective, a large expense is still money out the door on day 1. Sure I've done basic profitability projections using capital costs amortized over a number of years, but I don't see how I'll gain by committing to those and then later having to further model deviations from the expectation.
> T-accounts are an instructional tool, they are not used for actual production accounting purposes
I don't understand why teaching accounting seems to revolve around teaching its basic operations of adding and subtracting, which should have been covered in grade school. There's obviously some common data models that professional accountants use, but it seems like they're implicit knowledge rather than ever being directly described.
The ones that need to be capitalized are not repairs (they are betterments, adaptations, or restorations, per IRS regulations), so they wouldn't go against the repair expense account. Instead, they would go into an asset account.
>That contradicts your claim that it's not necessary to split most accounts, since at least all accounts are being doubled!
In practice, no one actually keeps two complete sets of books. Instead, the tax return starts with the company balance sheet and income statement per books, and then makes book-to-tax adjustments only for those categories that require it, like meals and entertainment. The tax return in this sense serves as a specialized accounting system.
>why would you want to copy the entire data model and then make some modifications to one copy, rather than having a single data model that models everything?
The tax version of the company accounts is typically only updated once per year, and usually requires specialized knowledge of the tax laws, which change year to year. It isn't really designed for day to day management like the regular company books are, and as I have observed with the tax returns I prepare for small business, most owners don't really spend any time looking at the tax return.
>From my perspective, a large expense is still money out the door on day 1.
But lenders and the IRS don't see it that way. Maybe what you need is the third basic type of accounting report, the cash flow statement. Many if not most companies that go bankrupt have net positive equity, but negative cash flow. The cash flow statement, like the tax return, is also created on an "adjustment" basis, starting with net profit and then backing out the income and expense items that are not current inflows or outflows of cash, such as depreciation.
From my point of view:
Elementary accounting is just a simple formal system. If you are used to formal reasoning, you can learn it in a few hours.
Basic accounting is all about the way of thinking. You learn the data model implied by the system and the key concepts behind it. You learn about things you are supposed to model within the system and how to accomplish that. And you learn about reporting, because nobody wants to see your low-level data. They want various views to the data based on richer data models. The accounts used in reporting are rarely the same as the ones used in accounting.
Intermediate accounting is about applying those basic principles in a specific regulatory environment. A lot of confusion about accounting arises when people try to jump directly from the elementary model to the specific requirements without first understanding what they are trying to accomplish and why.
It's fascination that Quickbooks is the go-to tool for almost everyone doing small business accounting when their product is mediocre in so many ways.
It does have some frequent traps for new users, who for example often don't understand "undeposited funds" and end up double-counting their revenue. Or, they don't realize that when they transfer money from say checking to savings, the entry made in one account register is automatically reflected in the other.
Automating transaction mechanics can certainly facilitate doing accounting later, but it doesn't seem like what I expected from "accounting" as in the stuff you would normally have an "accountant" do. Rather it seemed that you had to set up most of your own accounting (eg defining the data model of all the accounts), and Quickbooks would help you by entering in data for the transactions types it knows about (and you use it for).
In particular, the terminology used in Law (e.g., "dismissed without prejudice") is very alien to me. And I'd like to make better sense of what I'm reading/hearing when I encounter such terms.
Why not illustrating concepts by some coding with a database ?
It sucks, when those finance specialists have no idea on coding to teach others, which left a hole on those sucking ERP software to fill (but failed).
Or, if you can't teach using programming, you still don't get it.
Simple input format that reminds me of a markdown for finances, and then you can slice and dice the raw data in a bunch of ways for reports
The point is, accounting should not be so hard that you need an ERP software to do it for you.
So the issue is in the education, when most of financial professional doesn't know to use programming to teach the concept.
Only after discussing with my brother, who went to business school, did I realize I was gradually discovering my own half-assed version of accounting. Then I started reading Wikipedia and Investopedia about accounting topics, and it seemed a lot less dry.
But let me share what makes the field thrilling for me:
Accounting is a universal language for valuing time. Clocks allow us to measure time, but accounting allows us to assign time value. It, quite literally, allows us to compare apples to oranges (or Apple to Amazon).
This is important because time is the single most valuable resource any of us have. It's both the scarcest resource and the most liquid, but it's only liquid in one direction. Time can be exchanged for anything: food, drink, entertainment, love, death. But nothing can be exchanged for more time in my life.
We can, however, exchange our time for the time of others. Without being able to do this, our quality of lives would be terrible. But how many of my programming-hours is worth a T-shirt? How many chai-latte-making-hours is worth a heart transplant? It's not enough to count the hours, we have to assign value to the hours. Accounting is the system and language we use to value different units of time. It's a universally applicable language that is consistent in its application. It applies to a child running a lemonade stand and trillion dollar multinationals. Whether you're a charity or a bank, a government or a revolutionary, the rules of accounting are applicable to whatever it is that you're doing, whatever is it that you've done in the past, and whatever it is that you'll do in the future.
Currently, I work as a software engineer for a fintech company, and I find that the most fun I have at work is engineering something from scratch. Thinking of the architecture, mocking up the algorithms, and implementing a new solution to a problem is vastly more thrilling than maintaining existing systems or hotfixing minor bugs. Yet, the bulk of my job is maintaining systems that other people built. And, if I'm being honest, sometimes boring.
Similarly, the thrill of accounting is in learning how to more appropriately account for transactions, new goods, or new services. How should we account for someone who mines a crypto currency? How should we account for someone who trades a crypto but doesn't mine it? How do we account for auto insurance for self-driving cars? These are the thrilling aspects of accounting.
But for the bulk of the job, it's probably a bit boring. Working on a team to fix other people's technical mistakes. Reviewing documentation, getting access to various systems. Sounds a bit like software engineering!
Accounting (in its various forms (financial, cost, mgmt, tax)) should help you answer questions like: what is our most profitable product? how much does it cost to make that product? was that acquisition/investment successful? sales are going up and net income is positive, why don't we have any cash?
But when you get under the hood, there is a lot of subjectivity around how to make accruals, allocate revenue and expenses, or capitalization policies.
Furthermore, many people in different organizations are incented on financial metrics (sales, EBITDA, EPS, equity value, etc) and as such have are keenly focused on gamesmanship around the calculation of those numbers.
I wonder if there's a good flick that shows how powerful a forensic accountant can be.
"The Accountant" starring Ben Affleck has it as a plot element.
All this is theory and essentially a bunch of "hello world" equivalents. In the real world, corporate accounting is much more complex for most companies. I don't know if it makes it more thrilling, but it can be challenging.
Mission Briefing:
Your CEO has blurted out a revenue growth estimate for H2 2022 on an investor conference call, without prior vetting from the CFO.
Mission Objective:
Put forward a plan for modifying revenue recognition rules on sales so that the CEO's estimate can be met. Your plan must be compliant with GAAP principles and cannot involve backdating or forward-dating revenue by adjusting the refund eligibility dates.
There's a reason that there are 3000 different businesses, but 6000 different accounting packages. At a glance, they're all the same. But accounting data processing is all about the last mile. That 10% that the company does differently.
Now, when folks say "accounting" they typically mean General Ledger, Accounts Payable, and Account Receivable (GLAPAR as we called it). In truth, it's really about the General Ledger, everything is else is about feeding the GL. Most of the reports come from the GL.
GL is where all the numbers are tallied up. AP is stuff you owe people. AR is stuff people owes you. Then you have the distribution systems that tend to fee AP and AR. (Mind these are all broad strokes.)
Consider an Amazon order. You went to the site and ordered a radio and stick of deodorant. Honestly, the mind reels about the accounting impact of that order.
Amazon has to account for the money you're paying, the value of the goods sold, the taxes (potentially multiple jurisdictions), the shipping, and the credit card fees. Meanwhile, the costs of those goods include not just the value of the goods, the labor involved in taking off a truck, putting it on a shelf, taking it off a shelf and putting it on a truck. The cost of the box. The cost of the label.
ALL of that hits the GL in to its own slot, in its own account. The total number of GL entries for a single order is probably dozens, even for simple orders (no doubt it gets more fun with associates and folks selling through Amazon, etc. etc.). This is where all that chasing of imbalances happens. With double entry accounting, everything has to balance.
And worse, not only is it explosive in its detail, it can CHANGE, at any time! Business change their minds on how they track things, what they want to track, when they want to track. It could be marketing asking questions, it could be regulatory, it could be anything. It's a very dynamic environment.
At one place I had to rewrite pricing and discount logic every 6 months as they came up with new schemes. (Oh, and don't forget, all of the OLD schemes are still in play -- don't think you can forget about those when someone calls up 90 days later asking for a credit). And you'd think you could do something "generic". No. The marketing people are very creative.
At one place, a smaller business, probably cut 100 checks a week. They had a product canceled. Thousands of refunds. We had to run several large boxes of checks through the band printer. I can not convey to you briefly how impactful that process was. "Cutting a check", I hope you can imagine, is a very controlled process, and we had to stomp through the lot of the internal workflows to get that done. Lots of eyes were on the process. (Remember, the pre-printed check numbers had to match the transactions in the system, let's hope the paper doesn't jam.) Outside in, it seems stupid, boring, and silly. When you're in the thick of it, it's like a rocket launch. Lot of time invested it getting this all right.
As data processing people, we strive to manage complexity. Our job is to make the systems and processes accessible to the people who rely on them, and as well as adapt to their ever changing needs for the business.
Working back office accounting and distribution is a surprisingly target rich environment for interesting work that can be crushed in detail. But our job is to wrangle that.
You don't need to be an accountant to do this, but it's good to learn the vocabulary: debits, credits, journals, posting, agings, etc. etc.
And, finally, everyone does this. Having "accounting" experience pretty much qualifies you for all sorts of businesses. Each one you have to learn a little bit of domain knowledge, but the accounting terms themselves are a common grounding that gets your foot in the door. I've written systems for warehousing, meat brokers, paint shops, plant growers, auto parts, and magazine publishing, just as a start.
Honestly, it beats healthcare.
Shameless plug: you can try https://Last10K.com to get 10-K annual reports aggregated in one site. This includes all financial statements (ex.Balance Sheets) broken out so you don't have to find them in a lengthy 10-K.
[1] https://www.accountingcoach.com/balance-sheet-new/explanatio...
I constantly hear people complaining about accountants creating problems by not understanding how "things really work" so it would be great to be able to see things from an accounting perspective!
1)its terrifying how many people in c-suite roles (including purported CFOs and CEOs), and commercial/sales/product development roles don't actually understand accounting and finance basics.
2) the number of bookkeepers that pretend to be real accountants, but really they are just power users of a given accounting system
3) the massive miscommunication that takes place when two people that don't know what they are talking about try to tell the other what to do.
On a side note, it’s too bad there’s no easy way to assess the quality of educational courses. You think there would be a standardized metric by now.
From https://www.accountingcoach.com/about :
> PDF versions of all our Core Materials
From clicking through the "Learn More" link, seems like a one-time fee of $49 gets you the PDFs. (As Patio11 would say, the author should raise his prices.)