BLOG: Digital Financial Reporting
This is a blog for information relating to digital financial reporting. This blog is basically my "lab notebook" for experimenting and learning about XBRL-based digital financial reporting. This is my brain storming platform. This is where I think out loud (i.e. publicly) about digital financial reporting. This information is for innovators and early adopters who are ushering in a new era of accounting, reporting, auditing, and analysis in a digital environment.
Much of the information contained in this blog is synthasized, summarized, condensed, better organized and articulated in my book XBRL for Dummies and in the chapters of Intelligent XBRL-based Digital Financial Reporting. If you have any questions, feel free to contact me.
Entries from September 16, 2018 - September 22, 2018
Computational Thinking is for Everyone
I wrote the paper Computer Empathy to explain, as best as I could, that in order to get a computer to do what you want you have to understand computers and how to get computers to perform work reliably, predictably, repeatedly, and safely.
As it turns out there is another term that conveys the same message: computational thinking. There is actually a Center for Computational Thinking at Carnegie Mellon University. The Center for Computational Thinking and Stephan Wolfram, in his blog post How to Teach Computational Thinking, provide good definitions of computational thinking. I synthasized those definitions and other ideas into my own definition of computational thinking:
Computational Thinking is a thought process involved in formulating problems and their solutions so that the solutions are represented in a logical, clear, and systematic form that can be explained to and effectively carried out by a computer or human.
This five minute video provides an excellent explanation of what computational thinking is and why it is important. (Here is a playlist of 9 videos if you really want to dive in.) This is an easy to read three page paper, Conputational Thinking written by Jeannette Wing. And finally, here is a 40 minute video that explains Computational Thinking.
Computational thinking is a process, a technique (set of skills and habits), a philosophy. Computational thinking combines aspects of logic, mathematics, engineering, systems theory, and computer science. Computational thinking helps you differentiate: what humans can do better than computers; what computers can do better than humans. Computational thinking is about leveraging computers as a labor saving device through automation of work.
Computational thinking is made up of four elements:
- Decomposition: breaking a problem down into easy to manage parts.
- Pattern recognition: spotting what different problems have in common and using what has worked before to help you solve a new problem.
- Abstraction: focusing on the details that matter and ignorinig details that don't matter.
- Algorithmic thinking: generate simple steps can be used to solve a problem.
Computational thinking is not just for computer scientists; it is basically for everyone. Computational thinking is the new literacy for the 21st century. If you are doing accounting, reporting, auditing, and/or analysis in a digital environment and you are not computational thinking enabled you may not remain relevant.
Computational thinking is about fundamental principles and concepts, not about technology. Computer Empathy provides principles and concepts; but also digs into the details of how to get computers to perform work effectively. Others call for essentially the same thing using different terms. Some call for teaching logic to every high school student. Others use the term critical thinking.
##################################
Course in Computational Thinking for Educators
Computational Thinking, 10 Years Later
Computational Thinking Benefits Society




Exploring Wolfram
Wolfram can be used for free. I don't understand the exact limitations, but there is an browser-based Open Cloud version of Wolfram. (I would encourage you to use Google Chrome as I was having some issues with Microsoft Internet Explorer.)
There is a very helpful Elementary Introduction to Wolfram that is provided. That seems like a good place to start.
There is extremely good documentation provided.
Why might you want to learn about Wolfram? The blog post How to Teach Computational Thinking provides a good explanation.
To understand the sorts of things you can construct with Wolfram, check out Wolfram Alpha. Here are some money and finance related stuff.
Clearly you have to use your imagination a bit. But try and imagine what accounting, reporting, auditing, and analysis in a digital environment might look like.
If you create anything interesting in Wolfram please let me know.




Understanding the Moden Finance Platform using Wolfram
Wolfram is one of the most amazing things that I have seen in a long time. Wolfram includes a programming language. This video does an excellent job explaining the Wolfram language.
The Wolfram language is integrated with a curated public data repository. You can contribute to that publicly available repository. You can curate and add your own personal data repositories. You can create community-based data repositories.
Wolfram is a curated knowledge base. Wolfram is an engine. Wolfram is cloud-based, but you can also install it locally on your computer or you can create a private cloud specifically for your organization.
What is particularly interesting is the idea that you can manage metadata on something like GitHub, it can be branched, forked, and then integrated with Wolfram. I am prototypeing some metadata in GitHub. I created topics information that is XBRL-based and formatted in CSV. I will fiddle around with Wolfram and see what I can get it to do with all the metadata that I have created. Another interesting thing about Wolfram is that it converts XML into a format it understands. That makes all the syntax issues irrelevant.
You can try out Wolfram using their cloud interface, Wolfram ONE or the Wolfram Development Platform. There is extensive documentation and code samples.
There are others building out the modern finance platform including BlackLine, Workiva, SAP, Oracle, Intuit, Xero, Microsoft Dynamics, and others. Wolfram is a general tool that can be specialized.
Again, if you have not already done so, I would encourage you to read the document Computer Empathy. It will help you understand what is going on and why Wolfram and other such technologies seem so interesting. Stephen Wolfram is saying the same thing I am saying in Computer Empathy in his blog post, How to Teach Computational Thinking. Computational thinking is about formulating things with enough clarity, and in a systematic enough way, that one can tell a computer how to do them.
What he calls "computational thinking" I simply call "logic" or "business logic".



