Posts

Showing posts from May, 2023

Modern Prolog

Image
"A programming language is a toolbox filled with problem solving tools."( 1 )   There are lots of different programming languages and approaches to creating a programming language. Bet you did not know that the first computer programmer was a woman named Ada Lovelace  (a.k.a. the Countess of Lovelace ). Ada even has a programming language named after her, Ada . This graphic shows a summarized evolution of programming languages . Here is the more detailed version .  Which is the "best" programming language? Well, that depends on what you want to achieve and can be a matter of preference in many cases. "Best" depends on the problem you need to solve. Somewhat unique among programming languages is PROLOG . PROLOG (PROgramming LOGic) is a declarative logic programming language which was developed 50 years ago.  While many if not most other familiar programming languages are imperative ; unlike those other programming languages, PROLOG is a declarative programm...

Interchangeable Parts: Information Lego Blocks

Image
In 1798 a significant shift occurred when the concept of “ interchangeable parts ” was perfected when Ely Whitney applied that idea to the manufacture of rifles.  Before interchangeable parts, all goods created around the globe where individually created by a skilled craftsmen. An interchangeable part is a part or component that is created to a specific specification and is identical to other parts and will fit into an assembly that requires that part/component.  No customization was required to make the part/component fit into the assembly. This enables easy assembly, a reduction in the skills required to assemble, easier repair, which minimizes time and cost. OMG's forthcoming Standard Business Report Model (SBRM) going to be an enabler of “interchangeable parts” for business reporting in the Fourth Industrial Revolution, the Information Age. While in the 1790s the concept of interchangeable parts enabled to creation of machining tools that could create the precision parts ...

Modern Working Trial Balance

Image
Certified Public Accountants (CPAs) and Chartered Accountants (CAs) know what a working trial balance is.  A working trial balance is a core artifact/tool in the compilation, review, or audit of a set of financial statements.  When I began my career in accounting in 1982 with Price Waterhouse we created a working trial balance on paper spreadsheets.  Shortly thereafter I helped to pioneer the use of the electronic spreadsheet for creating accounting artifacts such as the working trial balance. Today, I believe, I have contributed to pioneering an even more modern approach to creating a working trial balance and other such accounting and auditing schedules or working papers: the model-based, machine-understandable, standards-based logical spreadsheet. Here is a working prototype of a working trial balance represented using the global standard XBRL that is machine-understandable. It can be effectively loaded into any fully compliant XBRL software.  Here are three exam...

Lighthouse Project Show the Way

Image
My first lighthouse project was the Buffalo Main Light when I began my tour of duty with the United States Coast Guard.  It was great; we could go up into the light pretty much whenever we wanted. My subsequent lighthouse projects, and your such projects,  would be something a little different. A lighthouse project as I mean it here is about showing people the possibilities of technology and help them understand a new direction which they might want to consider.   A lighthouse project is a model project or working prototype that is small in scale but focused on the big picture and is intended to "show the way".  Usually, a lighthouse project will lead to other additional follow-up projects.  A lighthouse project is a change management tool that helps an organization get its head around something such as a new technology and helps inspire an organization to change direction. A lighthouse project is intended to help an organization to "fail fast", learn from...

Modern Spreadsheet

Image
The traditional electronic spreadsheet is a very useful tool. The spreadsheet has been around for more than 40 years, an indispensable tool of accountants, auditors, and analysts.  They are the right tool for many situations. But they are not the right choice in other situations.  Also, as I have pointed out in the past ; the process of creating financial reports tends to be inefficient, error prone, described as an old school manual process. The average Fortune 1000 company, Gartner Research says, uses approximately 800 spreadsheets in the process of creating external financial statements submitted for regulatory reporting. How can the electronic spreadsheet be described as such a useful tool but also be part of such inefficient and error prone processes?  Sure, electronic spreadsheets are a vast improvement over paper-based spreadsheets. But is there a "better spreadsheet"?  Is there a more modern approach, a "modern spreadsheet" that could overcome some of the li...

Universal Global Standard Logical Spreadsheet (Professional Spreadsheet)

Image
Honestly, I am not quite sure what to call it.  So for now I am settling on Universal Global Standard Logical Spreadsheet . I will just use the term Logical Spreadsheet  for now. Excel and Google spreadsheets have their place.  But the "freedom" offered is both a strength and a weakness at the same time.  What if there was another additional type of spreadsheet in addition to Excel and Google spreadsheets? Imagine a special purpose tool, a logical spreadsheet designed specifically for accountants, auditors, and analysts.  A professional tool for accountants, auditors, and analysts which addresses the limitations and inherent risks when making use of traditional spreadsheets. The tool can output global standard XBRL and conforms to the Standard Business Report Model (SBRM).  Both models and facts can be imported, output, and exchanged using that standard technical syntax and other formats like Excel and JSON. A logical spreadsheet is a type of deductive sp...

Constructing Financial Analysis Models Using XBRL

Image
Several days ago I came across this LinkedIn post related to an "MBA on One Page" .  Effectively what it was about was a financial analysis model.  This is what it looked like: So what I figured is that I would represent that entire model using XBRL.  Here you go, financial analysis XBRL taxonomy : (this is still a work in progress) There is still a lot of work to do to build it out, debug it to remove errors, etc.  Also, there are some choices to make. Overall it is an excellent test of the capabilities of XBRL. So the link above is to the actual model.  Here is a machine understandable  global standard logical spreadsheet that represents (will eventually) the information in that original Excel spreadsheet . And this is the verification report for that global standard logical spreadsheet . This is the raw XBRL report itself which will load into any off-the-shelf XBRL software that supports the global standard fully and correctly.  This is the report ...

Recognizing that You are Part of a Supply Chain

Image
It seems to me that many people, if not most, have not wrapped their head around the idea that they participate in a supply chain.  Silo thinking was OK before the internet existed.  But now, with the internet, things are different. Kevin Kelly's book New Rules for the New Economy explains these new rules. Consider the following which I have tried to represent in the graphic below.  Take the notion of, say, the Accounting Equation .  In human readable terms, the accounting equation is: Assets = Liabilities + Equity . Should each of the member of this community define this basic model used in the double entry bookkeeping mathematical model or should there be one central definition that is shared and everyone uses? Here is my definition of the accounting equation in machine readable form using the global standard XBRL. Here is a quick inventory of other definitions or descriptions of the accounting equation or things that include the accounting equation. Wikipedia W...

Universal Adapter for ERP Systems for Audit

Image
Oracle provides an excellent explanation of what an ERP system is. We used to call these accounting systems. Oracle's article provides a nice one minute video that explains ERP. As the article and video point out, the idea is that all the applications share one common database so everyone has access to the same information.  This is important because if the applications don't share information, then there are multiple versions of the same information which causes challenges and problems. There is a call for a " universal adapter for ERP systems for audit ".  ISO , OECD , WCO , ANSI , the AICPA , Engine B and others are all approaching this notion of a universal adapter differently.  Eventually, someone will get this right. This article published by WCO,  Extending the ISO Audit Data Collection Standard to improve Customs and indirect tax audits and bring some innovation into this field , is a comprehensive summary of the moving pieces related to creating a univers...

Semantic Accounting and Auditing Working Papers

Image
In 1982 when I started work as an auditor for Price Waterhouse we used paper audit working papers . I was quite impressed with the fold out 18 column ledger paper.  The day I started at Price Waterhouse, they also pointed at two shinny new IBM PCs sitting in a room, they told me and all the other new staff accountants, "Make those IBM PCs do something." Shortly after starting with PW, I took a class in VisiCalc which was installed on the IBM PCs. Shortly after learning VisiCalc, Lotus 1-2-3 was introduced and I transitioned to that electronic spreadsheet. I experimented creating audit lead schedules.  It was interesting trying to help managers and partners understand the capabilities of linking lead schedules together electronically. To make a much longer story shorter, I worked with Excel 4.0 , learning VBA, also picked up Microsoft Access beginning with version 2.0. I had made a big investment in learning Rbase  which was a relational database that worked on the PC....