OU blog

Personal Blogs

CCNx Class at Kingston University

Nostr Public Key

Visible to anyone in the world

OpenPGP fingerprint: 808D8DC325553F5440CF0B618493CC6712AC617D

Nostr Public Key: npub122z4r6mdw8nuhk4wn88c0c2yhpu7wrelt72c8p9e87xkjs7qc27qtnwvet

Permalink
Share post
CCNx Class at Kingston University

Nix₿, my capstone project.

Visible to anyone in the world
Edited by Andre de Amorim, Monday 6 October 2025 at 14:04

Hi all,

After years of effort, I'm finally facing my last undergraduate Open University module, TM470.
The module TM470 - The computing and IT project, as I understand it, emphasizes the student as a reflective practitioner. 

My TM470 project idea is born from a frustration: my failure to deliver a software prototype for TM354, even though it wasn't a module requirement I really would like to at least have an MVP of the knowledge I was getting from the module. This experience, coupled with observing common open-source issues like library abandonment after a key developer's departure—a frequent problem in volunteer-driven projects—has profoundly shaped my approach.

"Reproducibility is fundamental to scientific progress," as the saying goes. For my project, I selected TM353 and TM354 as essential Stage 3 knowledge sources. TM354, in particular, offered a superb general overview of industry-standard software engineering, encompassing agile and waterfall methodologies, and the entire software development lifecycle, while TM353 helps me to understand the software (technology) is never in a vacuum it’s a part of wider ecosystem a socio-technical system. 

For my TM470 project, I've decided to tackle a real-world open-source problem: creating a reproducible environment for LNBits using Nix. This idea stemmed from a core LNBits developer's dilemma: whether to remain on a mature but unmaintained code branch or switch to a newer, less tested one. This situation echoes concepts from TM353, particularly the challenges of IT system maintenance and evolution when essential libraries reach their end-of-life.

Donella H. Meadows' 2009 quote, "Everything we think we know about the world is a model. Every word and every language is a model. All maps and statistics, books and databases, equations and computer programs are models. So are the ways I picture the world in my head—my mental models. None of these is or ever will be the real world," profoundly influenced me. This perspective, perhaps hinting at solipsism, prompted me to explore further by acquiring the "Thinking in Systems" audiobook and additional resources, particularly from the MIT systems dynamics courses mentioned later in this post.

Engage in a practical project that addresses a real-world CI/CD challenge within a community such as Bitcoin. This approach guarantees that the module will be consistently engaging and I will not get bored 😁.  

My current plan involves leveraging Nix for reproducibility, beginning with Eelco Dolstra's 2006 PhD thesis, "The purely functional software deployment model" (Utrecht University), which was the genesis of the NixOS project. I also plan to investigate Nix's applications in various domains, such as High-Performance Computing (HPC) systems, and to explore its distinctions from other solutions. This comparative analysis will include language-specific package managers (e.g., npm, pip, poetry, uv) and other virtualization technologies like Linux containers and Docker.  

Given the established issues surrounding reproducibility and the advantages of Nix, my current understanding of Bitcoin is significantly shaped by socio-technical perspectives within the Bitcoin community. My primary resources include the Bitcointalk forum, The Satoshi Institute, P2P Foundation, and books such as The Genesis Book, The Bitcoin Standard, and Softwar—the latter providing an unexpected military application in terms of power projection. Considering Bitcoin's inherent complexity, which involves the integration of cryptography, distributed systems, and economics, I believe that a Systems Thinking approach would considerably deepen our comprehension. 

Bitcoin is a digital currency that operates independently of central banks and single administrators, functioning as electronic money or digital gold. It facilitates peer-to-peer transactions by employing triple-entry accounting to resolve the "double-spending problem" in distributed systems, eliminating the need for banking intermediaries.

The Lightning Network operates as a Bitcoin-based solution to enhance the speed and affordability of transactions. Using Bitcoin for small transactions becomes impractical because the network approval process takes extended periods of time while generating high transaction fees. The Lightning Network operates as an independent system known as "layer two" which enables users to perform fast and affordable transactions. Users can establish pre-paid tabs at coffee shops which enable them to make numerous small transactions before the system records their total amount on the main Bitcoin ledger. The system enables users to perform everyday transactions efficiently, think about petty cash daybook.

LNbits functions as a user-friendly interface which enables people to access the Lightning Network. A Lightning node enables LNbits to function as a basic wallet system which operates as a user interface for managing digital funds and building Lightning Network applications. The system enables users to handle digital funds through an accessible interface while developers can construct Lightning Network applications without needing to build everything from scratch. The system transforms complicated technical operations into straightforward user-friendly interfaces.

This video called "LNbits as a UI for nix-bitcoin" by Ben Arc  from the Bitcoin++ conference (October 2023 Berlin, Germany) provides an overview of the project's likely scope.

The software management system Nix operates as a tool to guarantee that software development and execution follows a consistent pattern. The software used for financial transaction management requires absolute security and stability because it handles money transactions. The software development process under Nix requires a detailed recipe that includes all required components for building the system. The system ensures software consistency across all deployment locations.

My TM470 dissertation/capstone project focuses on the reproducibility of IT systems, specifically within the Bitcoin environment. This project seeks to provide concrete benefits to the LNBits community, thereby supporting the wider STEM community and organizations such as the Hackspaces Foundation because many LNBits labs ( https://shop.lnbits.com/ ) are Free and Open-Source Software (FOSS) projects aimed at makers, offering a potential route from a hobby into a professional career within the significant UK fintech sector.

I've registered https://nixb.org/ as a domain to document all my research, including work from GitHub. For software editing, I'll be using Google's Firebase Studio. It's a web-based VSCode that uses Nix in its default configuration, although it utilizes Nix flakes—a topic I'll also be researching for my project.

P.S. I am also interested in establishing an OU Bitcoin Club at OpenSU, PM me if you also interrested 😉, drawing inspiration from initiatives like https://bitcoin.mit.edu/.

Best Regards,
–Andre A


Some references I have in mind beyond my TM353/TM354 textbooks.

Related to Systems Thinking

1 - Wright, D. and Meadows, D.H. (2009) Thinking in Systems: A Primer. 1st edn. London: Routledge.

2 - Wendy Tremont King and Diana Montalion (2024) ‘Learning Systems Thinking’. Ascent Audio. 

3 - Arantes do Amaral, João Alberto. (2019). The cartoon guide to system dynamics.

Related to Software Engineering and Architecture.
1 - Martin, R.C. et al. (2018) Clean architecture : a craftsman’s guide to software structure and design. 1st edn. Boston: Prentice Hall.

Related specifically to Nix 
1 - Dolstra, E., 2006. The purely functional software deployment model. Utrecht University.

2 - Dolstra, E. and Löh, A., 2008, September. NixOS: A purely functional Linux distribution. In Proceedings of the 13th ACM SIGPLAN international conference on Functional programming (pp. 367-378).

3 - Bruno Bzeznik, Oliver Henriot, Valentin Reis, Olivier Richard, and Laure Tavard. 2017. Nix as HPC package management system. In Proceedings of the Fourth International Workshop on HPC User Support Tools (HUST'17). Association for Computing Machinery, New York, NY, USA, Article 4, 1–6.

Related to Bitcoin Community
1 - Van Wirdum, A. (2024) The Genesis Book. Available at: https://thegenesisbook.com/ (Accessed: 29 June 2025).
 
2 - Lowery, J. P. (2023) Softwar: A Novel Theory on Power Projection and the National Strategic Significance of Bitcoin. Available at: https://dspace.mit.edu/handle/1721.1/153030 (Accessed: 29 September 2025).

3 - Ammous, S., 2018. The bitcoin standard: the decentralized alternative to central banking. John Wiley & Sons.

Permalink
Share post
CCNx Class at Kingston University

McDonald’s Wants It Their Way - A Brief History of McD's IT Infrastructure

Visible to anyone in the world
Edited by Andre de Amorim, Sunday 8 May 2022 at 04:18

Innovate wasn’t McDonald’s first attempt to capture operational data from its restaurants. Nearly 10 years earlier, in 1991, McDonald’s made its first foray into collecting daily sales data from stores through an electronic register, or point-of-sale, system. But rather than turning to a solution from outsiders, McDonald’s decided to cook up its own.

Most of McDonald’s quick-service restaurant competitors—and most retailers, for that matter—use packaged point-of-sale (POS) software, as those systems aren’t usually viewed as strategic. McDonald’s was convinced that by building its own it could save money and, by tying the software to its enterprise systems at headquarters in Oak Brook, Ill., better manage its supply chain, according to former McDonald’s CIO Carl Dill.

The decision led to a long-running internal development effort, and the eventual spinning-off of McDonald’s point-of-sale (POS) development effort as a separate business with the backing of eMac Digital—a technology incubator supported by McDonald’s and venture capitalists Accel-KKR. After meeting some initial franchisee resistance, the POS system became the standard for its American restaurants. While McDonald’s is looking now to upgrade the system, which is starting to show its age, it remains at the heart of the company’s restaurant operations.

Point-of-sale systems are a key part of automating the relationship between retailers and their customers. By electronically capturing the details of each purchase, they capture not just sales totals, but information on what has been removed from goods on hand. Taken cumulatively, POS data can provide managers with a wealth of information about their business, such as identifying which products are selling and which aren’t, and when their operations are busiest.

Much like what McDonald’s strove to do with Innovate—a $1 billion initiative to collect sales and supply-chain information in real time that McDonald’s canceled in February (see Baseline magazine’s July cover story)—the POS project was intended to help the company improve the efficiency of its supply chain, according to Carl Dill, who oversaw the development of the system while he was McDonald’s chief information officer from 1982 to 1998. By capturing patterns of consumption at its restaurants, McDonald’s hoped to better tune its relationship with suppliers and have a better picture of product demand.

In 1991, after looking at commercially available point-of-sale registers from vendors such as Panasonic and PAR Microsystems, Dill says, McDonald’s decided to go it alone and have systems integrators build the register terminals for its U.S. stores from off-the-shelf PC and peripheral technology.

Dill says that McDonald’s main reason for doing the development itself was the cost of implementation—particularly on the hardware side. Panasonic and PAR Microsystems had proprietary cash registers that cost $30,000 to $40,000 per store, he says. Dill and his team thought that by developing the software internally, and having systems integrators use off-the-shelf hardware to build point-of-sale systems, the company could cut the cost of putting POS in a restaurant. They turned out to be right. As a result, McDonald’s was able to hold the cost of POS systems down to roughly $15,000 to $20,000 per restaurant, according to Dill, cutting the cost in half.

McDonald’s saw the combination of its POS and in-store processor software as a strategic advantage, according to Dill. “The secondary benefit was we knew it would increase annual sales by tens of thousands of dollars for every second of time [it took off of each transaction],” says Dill.

McDonald’s restaurants “do significantly more volume than competitors—somewhere between $60,000 and $90,000 [more business than competitors] per store every year,” he says. And most of that volume comes during the peak hours of operation—the lunch and dinner rush.

The software McDonald’s developed, called PC POS, is a two-part system. The actual point-of-sale terminals at the counter and drive-through window run on software written for Microsoft MS-DOS. It provided “software functionality for cash registers” says Dill, “like taking orders, communicating to cooking operations and giving change.”

Reference:

Gallagher, S. (2003). McDonald’s Wants It Their Way. [online] Information Technology Planning, Implementation and IT Solutions for Business - News & Reviews - BaselineMag.com. Available at: https://www.baselinemag.com/news/McDonalds-Wants-It-Their-Way/ [Accessed 8 May 2022].


Permalink
Share post
CCNx Class at Kingston University

Lets talk about sdilexia (dyslexia)

Visible to anyone in the world
Edited by Andre de Amorim, Sunday 8 May 2022 at 02:49

I am a dyslexy. I born with it this neurological condition and I will die with it but before I would like to invite to see the world thougth a dyslexy perpective shall we?

Dyslexia Simulation--What it's Like to Be Dyslexic.



Another video my favorite , because a dyslexia brain also listen and imagine sounds differently 


Tools that I am using

Microsoft World Immersive Reading

print screen showing of microsoft world on imersive reading mode



Permalink
Share post
CCNx Class at Kingston University

C-AI

Visible to anyone in the world
Permalink
Share post
CCNx Class at Kingston University

Data and Privacy

Visible to anyone in the world
Edited by Andre de Amorim, Monday 2 October 2017 at 07:34
Data Science Ethics, Regulation http://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32016R0679
Permalink
Share post
CCNx Class at Kingston University

The birth of web CERN

Visible to anyone in the world
Interesting website that could act as supplement to Block 1 Part 3: Building the Web . http://home.cern/topics/birth-web The most interesting for me was: The line-mode browser SIMULATOR, The line-mode browser launched in 1992, was the first readily accessible browser for the World Wide Web http://line-mode.cern.ch/www/hypertext/WWW/TheProject.html Tim Berners-Lee, a British scientist at CERN, invented the World Wide Web (WWW) in 1989. The web was originally conceived and developed to meet the demand for automatic information-sharing between scientists in universities and institutes around the world. The first website at CERN - and in the world - was dedicated to the World Wide Web project itself and was hosted on Berners-Lee's NeXT computer. The website described the basic features of the web; how to access other people's documents and how to set up your own server. The NeXT machine - the original web server - is still at CERN. As part of the project to restore the first website, in 2013 CERN reinstated the world's first website to its original address. On 30 April 1993 CERN put the World Wide Web software in the public domain. CERN made the next release available with an open licence, as a more sure way to maximise its dissemination. Through these actions, making the software required to run a web server freely available, along with a basic browser and a library of code, the web was allowed to flourish.
Permalink Add your comment
Share post

This blog might contain posts that are only visible to logged-in users, or where only logged-in users can comment. If you have an account on the system, please log in for full access.

Total visits to this blog: 2039