A business oriented view to DAML - György Balázsi

I live in Budapest, Hungary, I work with a small consultancy called Blockchain Competence Center. We are mostly in the evangelization phase with blockchain and related technologies, aiming at big projects for big clients.

Professionally, I position myself into the intersection of business and technology. For me business is the end, technology is the means, which I want to understand and practice deep enough to be able to push the envelope to the max.

I’m happy to contribute to the DAML community with blog posts covering the business application potential of DAML and the ledgers it is integrated with.

I pride myself on being a good trend spotter. Walking on the street, I like to step on the crosswalk just 2 seconds before everybody else.

I’ve been following the development of DAML since Digital Asset started its blog post series about it in April 2018. Since then, I read every piece about DAML, and since Digital Asset has open-sourced DAML one year later, I’m actively learning and using it.

There were multiple reasons for me to take notice two years ago:

  • I knew that the late Tamas Blummer was the first successful blockchain entrepreneur in Hungary and that Digital Asset’s Budapest subsidiary was built on the foundations of the company he had founded. So I was interested in every piece of news which was related to Digital Asset. Now I have a good working relationship with several people from the Budapest office of Digital Asset.
  • I was interested in everything related to smart contracts because it was clear to me that this is the top layer of blockchain – and “beyond blockchain” – systems, having the strongest business impact. I also found fascinating Nick Szabo’s smart contract concept.
  • Two years ago I thought that the state of the art of smart contract platforms was Solidity X (a safer version of Solidity), the Ivy smart contract language and the Bitcoin Script playground by Chain, and two “smart legal contract” projects, the OpenLaw project, and the Accord Project. Compared to these, the general scope, unified handling of data and rules, the atomic composition of workflows, and the user experience focus of DAML seemed to be superior right from the outset.
  • Before learning DAML I knew very little about functional programming, but I took notice. The basic principles of functional programming are based on ideas that were familiar for me from my university studies at the intersection of maths and analytic philosophy. Since I learned that DAML was built on Haskell, and I started to learn Haskell and Scala, I can see that the safety guarantees and the monadic implementation of atomic transaction handling provided by functional languages indicate a very strong new general trend in software development.
  • I did postgraduate studies in bank management, so I’m familiar with financial engineering. I could see right from the outset how well DAML models financial instruments, and found the idea fascinating that this kind of rights and obligations management can be extended to other industries.

I read extensively and made my hands dirty to some degree with the following blockchain(like) platforms:

  • Bitcoin
  • Ethereum
  • The Sequence multi-asset token ledger platform by Chain (which looked very promising at that time, but was commercially unsuccessful and not really prepared for PII handling so they shut it down) and its transaction engine TxVM (which is the foundation of the ongoing development project at Stellar for zero-knowledge proof based private transactions, called ZkVM)
  • Hyperledger Fabric
  • Corda
  • Amazon QLDB

I’m a self-taught programmer, though I haven’t shipped a line of production code yet.

I started to use Python some 10 years ago because I wanted to have an alternative to Excel functions and macros for game theory models and business analysis. At the end of my bank management training, I wrote my thesis about using Python for financial engineering. (At that time Excel macros were the mainstream tool for financial experts.) I learned the Pandas data analysis package and used it extensively with Jupyter Notebook and Google Colab. I also know some Tensorflow and Keras with Python.

I learned some Go because I can see that more and more developers ditch Java in favor of Go as a systems programming language.

Along with DAML, I am learning Haskell extensively, making exercises on the Exercism platform.

Before blockchain was cool, I spent more than a decade at Magyar Telekom, Hungary’s biggest telco company where I was leading a team responsible for the elaboration of the business model and development concept of new products and services.

I was also working on promoting the culture shift supporting the collaboration between the business domain and IT experts, and for the development of an internal social network supporting innovation.

Before joining the IT/telco industry, I worked for more than a decade as editor and journalist for a commercial TV station, a web portal, and various newspapers covering international and domestic politics and media.

I started my career as a math teacher and I am used to explaining complicated topics so that even teenagers can understand.

During my postgraduate studies, I acquired an MBA at the Budapest University of Technology and Economics and a banker diploma at the joint program of the Banker Training Center in Budapest and Corvinus University Budapest.

I acquired my undergraduate degree in math and philosophy. Along the way, I covered English teacher training, physics, and classical philology. I spent two semesters as a guest student in Universitat Zürich where I studied German philosophy and literature.

8 Likes

Welcome @gyorgybalazsi, it’s very nice to see you on the forum! :slight_smile:

1 Like

Nice one, Excel (and VBA) is also what caused me to start learning proper programming languages.

2 Likes

Thanks Stefano

1 Like

Now I’m learning Haskell with the same enthusiasm as Python back in the day

2 Likes

Welcome @gyorgybalazsi in the community! Great and long interesting intro :studio_microphone:.

I see you are learning Haskell too, where do you see the top challenges and benefit in learning Haskell? and compared to DAML? What are the challenges and benefits?

:speaking_head: BTW great article you wrote here on the “agreement mental model”, quite interesting point of view!

2 Likes

RE: learning Haskell. The parts I liked in Python most, like list comprehension and indentation, actually come from Haskell. Before Haskell, I learnt a bit of Rust, where I learnt that there is no universal null value, to avoid the famous million dollar mistake of null pointers. Later I learnt that the idea of Option also comes form Haskell. And at the very beginning of my programming journey, it was very strange to me that “functions” in procedural languages are not functions in the mathematical sense, because they have side effects. Now I know that pure functions in functional languages don’t have side effects. So I would say that I feel coming home now in the FP community after years of disorientation.

As for DAML vs Haskell: DAML without Haskell is very intuitive at a basic level where you want to write basic contract templates. But if you want to understand the basic concepts at a deeper level, like currying or atomic transaction handling with the “do” blocks, or want to write more complex functions eg for check conditions for choices, or Triggers, at least a bit of Haskell (functors, monads, etc) goes a long way.

1 Like

Great points @gyorgybalazsi! If you have any questions on Haskell i am sure @cocreature is the expert! Any points to add @cocreature on this comment on #daml vs #haskell?

1 Like

Yeah, for me the same enthusiasm and 10x the mind blown

But also frustration :slight_smile:

2 Likes

That was a great post @gyorgybalazsi … what an interesting path you have taken to get where you are. But don’t I feel like an underachiever? :joy: :+1:t2: :thinking:

Keep up the great work.

2 Likes