My Notebook

Pursuit of Clarity.

Fundamental of Financial Accounting

Lecture:1


  • Link: ECON 125 | Lecture 18: C.J. Skender - Accounting (Part 1)
  • Professor: C.J. Skender

  • Luca Pacioli

  • FASB: Makes Accounting Rule

  • SEC: Congressional power

  • Financial Statement: Income statement, Balance Sheet, Cash Flow, Statement of owners equity

  • Revenue(R): An Increase/Inflow of net assets from providing goods and/or services
  • Expenses(E): An Outflow/Decrease of net assets from providing goods and/or services
  • Net Asset(NA/OE): Total Asset - Total Liability
  • Taxes: make the good time not as good and the bad time not as bad
  • Asset(A): Economic resources
  • Liability(L): creditors claims
  • Owners Equity(OE): Owners claims
  • Business Types: Propriety(one many army), partnership(two or more), corporation

  • Income statement: Net Income(NI) = R - E

  • Balance Sheet: A = L + OE
  • Cash Flow: changes of cash
  • Statement of owners equity: changes of owners equity

  • Balance Sheet Account(Real Account): Liability, Asset, Ones Equity

  • Temporary Account: Revenue and Expense

Asset = Liability + Contribute Capital(CC) + Retained Earning(RE)

  • current assets: cash and other assets that are expected to be converted to cash within a year.

  • current liability: is an obligation that is 1) due within one year of the date of a company’s balance sheet and 2) will require the use of acurrent asset or will create another current liability.

  • Working Capital: is a measure of both a company’s efficiency and its short-term financial health. Working capital is calculated as:

Working Capital = Current Assets - Current Liabilities

T Account


Notes: Awesome problem set is discussed on the referred lecture.

Chart of accounts


A deferred expense is a cost that has already been incurred, but which has not yet been consumed. The cost is recorded as an asset until such time as the underlying goods or services are consumed; at that point, the cost is charged to expense.

What is the difference between a deferred expense and a prepaid expense?

Often the term deferred expense indicates that a payment was made more than one year before the cost is expensed. This deferred expense will be reported on the balance sheet as a noncurrent or long-term asset.

Often the term prepaid expense indicates that a payment was made less than one year before the cost is expensed. This prepaid expense is reported as a current asset.

Lecture:2


Journal entry: A journal entry, in accounting, is a logging of transactions into accounting journal items. The journal entry can consist of several recordings, each of which is either a debit or a credit. The total of the debits must equal the total of the credits or the journal entry is said to be “unbalanced”. Journal entries can record unique items or recurring items such as depreciation or bond amortization.

Special journals entry

Subledger: The subledger, or subsidiary ledger, provides details behind entries in the general ledger used in accounting.

General ledger: A general ledger contains all the accounts for recording transactions relating to a company’s assets, liabilities, owners' equity, revenue, and expenses

Trial balance: A trial balance is a list of all the general ledger accounts (both revenue and capital) contained in the ledger of a business. The name comes from the purpose of a trial balance which is to prove that the value of all the debit value balances equal the total of all the credit value balances.

journal -----(posting)----> general ledger-------------------->Trial balance

Asset Capitalization: Definition of ‘Capitalize’ An accounting method used to delay the recognition of expenses by recording the expense as long-term assets. In general, capitalizing expenses is beneficial as companies acquiring new assets with a long-term lifespan can spread out the cost over a specified period of time.

Awesome Books and References:


Analysis Patterns: Reusable Object Models

About


Notes


  • Accountability : Patterns for describing relationships that define responsibilities between parties.
  • Observation and Measurment : Patterns for recording facts.
  • Referring to Objects: Patterns of indexing to refer exactly to objects.
  • Observations for Corporate Finance: Enterprise Segment
  • Inventory and Accounting: Basic patterns for accounting, describing how a network of accounts can form an active accounting system.
  • Planning: Patterns depicting the relationship between standard plans and one-off plans, and how to plan and record the use of resources.
  • Trading: Patterns focusing on tradding in situations where prices are fluid and we need to understand how these price changes affect the profits

More Resouces:


Implementing Domain Driven Design

About


Notes


  • Architecture: Hexagonal or Port and Adapters, CQRS, Event Driven Architecture, Pipes and Filters, Long Running Process aks Sagas,
  • Implementation pattern using java for entity, value object, domain service, aggregate, factory, repository, domain event, transaction, event sourcing, consistency of aggragate, application service, infrastructure service, interaction among bounded constext either synchronously or asynchronously.

More Resouces:


Domain Driven Design - Tackling Complexity in the Heart of Software

About


Notes


Putting the Domain Model to Work
  • Brainstorming/Knowledge Crunching session: To find a simple model for tackle the complexity
  • Ubiquitous Language: for collaboration
  • Hands-On Modellers: Binding model and implementation
  • Technology Agnostic Architecture
The Building Blocks of a Model-Driven Design
  • Smart UI Anti pattern
  • Architecture Concerned: Layered Architecture, Hexagonal Architecture
  • Domain Model Architecture: Entity, Value Object, Service, Modules
  • Managing Lifecycle of Domain Object: Aggregate(Ownership), Factory, Repository
  • Aggregate has the right to query the repository, and factory has the right to create a domain object by using Repository
  • Separate Domain Model and database schema
  • Separate artifacts for bounded context including database schema

Refactoring towards Deeper Insight

  • Contineous Learning: Improve the Ubiquitous Language
  • Refactoring towards deeper insight
  • Supple Design

Strategic Design

  • Bounded Context
  • BC leads to Integration Problem -> Contineous Integration
  • Comunication between BC
  • Context Map

Further Design Pattern

  • Aspect-oriented programming
  • Command Query Responsibility Segregation
  • Event Sourcing (Accounting Entry )

More Resouces:


Mathematics-1

Lets tracking a sytem:

  • We are unable to track a system because we don’t have notion of Identity.
  • Once we have gave the Identity to a object in a system, then problem is solved.
  • Constraint:-Finite memory of the Manager (manging arbitary identity symbol)
  • To manage memory efficiently:-
    • grouping in homogenous way. Heterogenous would be difficult
    • Need to store symbol, and track symbol by symbol
    • .
    • Need someway to represent the identity symbol in a compact way

Approach-n:(Need someway to represent the identity symbol in a compact way)

  • Finally we decided some kind of cyclic symbol is needed and their order will be important for us. And also which cycle it belongs is also important
Representation of Cyclic Structure of symbol
1
2
3
4
5
  i k l
  ii ik il
  ki kk kl
  li lk ll
  .......

So Finally Identity problem is on our track.

Operation

  • Operration on symbol introduce neew symbol.

    • Subtraction: Introduce “SUNYA” and reflection of a symbol on other side.
    • Division: Introducing fration symbol
    • SQUARE ROOR: Introduce root(n)
    • .
    • .
  • Grouping of Symbol by underdestanding properties of symbol.

Note: new symbols are introduced, when new operation are added to system.

Algebra:

  • Concept of container/variable: which can take any value with their domain.
  • Concept of “equal to”/“same as”. equality/operation only hold on same types of object.

References:-

Efficient Data Searching

We use different technique to search data from our day to day life. Such as, while we are reading a book and we needed a particulr concept again and again, then we might search the concept either of the following list or some creativity searching criteria:-

  • If we know the concept present in particulr page, then access it directly. Here we index: concept-page number (page number is obiviously physical address!!). Here index is of type:- application level index.

  • To access page number we need 3-10 flip. To minimize the flip we can add a marker, so that we can access it in more faster. Here the index is page number-marker, and the index is of physical level index!!

  • We can make a xerox copy of the concept. Here The latency time to search the concept is comparatively smaller than the physical book(It depends where we keep the xerox copy) and same for access time. These concept are related to caching/buffering.

So to optimize for efficient access the data, we might need to understand physical representation of data, index used either in physical level or logical level, caching/buffering strategy, and most importatnly the context where we access data. So I will go through in following order:-

  • Phycsical Representation of Data
  • Index Structure
  • Buffering Strategy

Phycsical Representation of Data

Hard disk Structure

From hardware arhitecture of hard disk perspective, it is made up of sector, cylinder, and track. The basic building block of hard disk is sector. To make interaction or communication with hard disk, we need a address mechanism from differnt perspective such as sector number. Some of the addressing mechanism are: Cylinder-head-sector, Logical Block Addressing. It is the Disk Controller or Disk Driver which abstract way all the complexity and provide a nice intrface to inteact with hard disk wuch as Serial ATA, and it address the memory with logical block. The interface looks like:-

  • read(address) :- retrun a block of data
  • write(address, data) : It write the data in given address from starting position

We know about file system which operating system provided to abstract way all the complexity of disk driver interfce. So it make a abstraction called file system(database) to manage your file from different perspective what we think a file at present moment. To read about file system from operating system perspective the following resoureces I used to refer:-

Emphasis on Storage
Project
Theory about Implementation:

Index Structure

Software Engineering in Python

Topics

  • Debugging
  • logging
  • Unit Testing
  • Dependency Management
  • Virtal Enviroment
  • Contineous Deployment
  • Tooling in Python