Why to open our wallets?

As technology continues to evolve, the concept of money is also changing. Gone are the days when people would carry physical cash and coins in their wallets. Instead, digital wallets are becoming increasingly popular. These wallets store digital currency, allowing individuals to make purchases and transfer funds electronically. However, many digital wallets are proprietary, meaning that they are owned and operated by private companies. This is where the world needs an open-source digital wallet.

An open-source digital wallet is a wallet that is freely available to anyone to use and modify. It is developed through a collaborative effort, with a community of developers contributing to its creation and maintenance. Open-source wallets operate on an open network, which means that anyone can participate and contribute. This is in contrast to proprietary wallets, which are closed systems, controlled by a single company.

There are several reasons why the world needs an open-source digital wallet. Firstly, open-source wallets promote transparency. With proprietary wallets, users have little visibility into how their data is being used. This lack of transparency can lead to concerns over data privacy and security. However, with an open-source wallet, users can examine the code, ensuring that their data is being stored and used ethically.

Secondly, open-source wallets promote innovation. With a community of developers working on the same project, new features can be added quickly, and bugs can be identified and fixed promptly. This creates a more robust and flexible product, allowing users to customize their wallet to suit their needs. This promotes innovation and competition, as new ideas can be tested and improved upon.

Thirdly, open-source wallets promote interoperability. With proprietary wallets, users are often restricted to a specific platform or network. This can create barriers for users who want to transfer funds or use their wallet with other services. However, with an open-source wallet, users have the flexibility to connect with different networks and services, creating a more seamless user experience.

Lastly, open-source wallets promote inclusivity. With proprietary wallets, users often need to meet certain requirements to access the service. This can exclude individuals who do not have a particular bank account or mobile phone. However, with an open-source wallet, anyone with internet access can participate, promoting financial inclusion and accessibility.

In conclusion, the world needs an open-source digital wallet. Open-source wallets promote transparency, innovation, interoperability, and inclusivity, creating a more robust and flexible product. As technology continues to evolve, an open-source wallet is crucial to promote transparency and innovation, ensuring that digital currency is used ethically and securely.

For further details, do check out an article on the same topic at FINOS.

Announcing the 2023 Financial Services Autism Hackathon

Mission Statement

Bring developers from the Financial Services industry together to demonstrate how innovative Microsoft technologies can transform autism treatment by tackling real world use cases provided by families and creating lasting open-source projects for the community.

What does the Hackathon entail? It is:

  • 2 days
  • 70+ developers
  • 5 use cases
    • And infinity possibility to help people with using your technology skills!

Background

The first Financial Services Autism Hackathon was held in 2018 founded by Leo Junquera, working at Microsoft at the time, and Peter Smulovics from Morgan Stanley, as a grass roots effort to combine the unique value proposition of Microsoft (technology innovation) with the technology talent which exists in Financial Services, and direct it towards an industry in dire need of technology innovation.

Dates and Location

The date of the event is April 19-20th. It is a hybrid event, with the in-person venue in New York City at the EY Wavespace.

Who should sign up?

It is a combination of roles that are filled by participants like yourself who make the hackathon successful each year. 

  • Developers Work for the digital transformation to demonstrate the power how new technologies can be applied to the issues facing the autism community.
  • UX Designers People with Autism see the world differently – help them see the world! Design interfaces, interaction patterns, both in the digital and in the physical world, that enables them to overcome the differences and to participate in the digital transformation of the autism community!
  • Business Analysts Translate the use cases gathered from families with autistic children, behaviorists in the field, experts in the community, and service providers to enable better interaction between the parties, provide hallway test cases, helping finding the voice, to make the results presentable.

Registration information

If you are among the companies or individuals already pre-registered by domain/name, just visit the registration URL and log in with existing account or apply for a new account. If you are not, please do drop a note to Michelle.Ng@ey.com to add your company’s domain to the list πŸ™‚ You can sign up as an individual or as a group. You will be aligned with a use case and a team and provided training resources if you need to prepare you for the event.

How should I prepare?

We will provide training sessions so that you are armed with the skills needed for success! The training will cover key technologies (Cloud, GitHub, IoT, Machine Learning, AI, etc.). We will also arrange Autism Awareness sessions relating to each of the use cases.

Use Cases

Use Case 1: IOT Data Collection

Dynamic programs require adaptations to data collection which are not supported by these systems. In the end teams frequently resort back to pen, paper, and mechanical devices such as hand tally counters. Can we take a different approach to this problem using an IoT pattern? Can we find a way to simplify data collection using simple mechanisms and use the cloud to store the data and classify it after the fact using modern tools and technologies? Can there be a repository of patterns to match the individual needs of learners and care providers?

Use Case 2: Transform Learner Analysis with Video and AI

Data collection is essential to successful outcomes for learners, but analysts are missing one of the most critical pieces of data when they are reviewing progress and creating programs, video of the learner. Social Media knows how important and compelling this information is but it is not being used to help people with Autism more effectively. This use case looks to develop a platform to capture this information, integrate it with data from other sources, and enrich the analysis with AI. This is an ambitious use case to transform the industry using a vital form of information which is currently missing.

Use Case 3: Using ML To Transform Learner Outcomes

There is a long-held belief that each individual case of autism is so unique that comparisons cannot be drawn to other cases, but marketing companies are able to use data to target the right message to us at the right time to sell their product. The therapies used to help learners with autism are data intensive. Can we use this data to transform outcomes for learners using modern technology and methods?

Use Case 4: HoloLens Skills Training

This use case will focus on the use of HoloLens for helping to teach job skills to people with autism, particularly those aging out of the supports provided in the school environment. Unemployment for those with autism is significant and the supports in the work environment are limited. The use case will use HoloLens augmented reality to help with basic job skills by presenting a visual cues on how to complete task such as stocking shelves or preparing food. This scenario should also address the issue of moving away from 1:1 support to a 1:n as an a student becomes an adult.

Use Case 5: Metaverse Social Practice

Developing social relationships with peers can be one of the biggest challenges for people with autism, despite a strong desire to form them. Social programs can be hard to practice due to limited opportunities, which can lead to disappointing outcomes in the few interactions, and stress can and frustration. The Metaverse offers an opportunity to practice social interactions in a fully immersive environment and the ability to formulate successful programs which can replicated at scale. This use case will lay the groundwork for a social interaction in the Metaverse between a subject and an AI generated peer.

The value of IT patents in the world of open source

Patents in the Information Technology industry can be valuable as they protect innovative ideas and solutions to technical problems. By having a patent, a company can prevent others from using, selling, or manufacturing similar technology without their permission. This can provide a competitive advantage and help the company to establish itself as a market leader. Additionally, patents can also be licensed or sold for a profit, providing a source of revenue for the patent holder.

Patent troll attacking open source developer

However, as always, we have to be careful: the value of a patent in the IT industry can also be limited by the speed at which technology is changing and the difficulties in enforcing patents in this field. As a result, the value of patents in IT can vary greatly and it is important to carefully consider the potential benefits and limitations before investing in them.

So, as you are aware, my team are working on multiple open source projects, morganstanley/ComposeUI: A .NET Core based, WebView2 using UI Container for hybrid web-desktop applications (github.com) is among them. Applying for a patent for an open source software may seem counterintuitive, as open source software is typically made available to the public under an open source license, allowing anyone to use, modify, and distribute the software. However, there may still be some reasons why a company or an individual might choose to apply for a patent for an open source software:

  • Defense against patent trolls: Even though the software is open source, a company or individual may still apply for a patent to use as a defensive measure against patent trolls. Having a patent can help prevent others from making frivolous patent infringement claims.
  • Commercializing the software: A company or individual may choose to apply for a patent as a way to commercialize the open source software. For example, the patent can be used to offer consulting services, support, or other value-added services related to the software.
  • Protecting specific innovations: While the software is open source, there may be specific innovations within the software that the company or individual wants to protect. In this case, applying for a patent can help prevent others from using or commercializing these specific innovations.

So are there patented open source projects out there? Sure! An example of a patent for an open source software would be the “Method and System for Facilitating Electronic Transactions Over a Network” patent held by the OpenSSL Software Foundation. OpenSSL is an open source software that provides a secure way for websites to transmit data over the internet, and it is used by many websites and applications. Another example of a patent for an open source software is the “Method and System for Compression and Decompression of Data” patent held by the 7-Zip Software Foundation. 7-Zip is a free and open source file archiving software that is widely used for compressing and decompressing data.Β Despite being open source, the OpenSSL Software Foundation and the 7-Zip Software Foundation holds these patents to help protect the specific innovations in their software and to provide a defensive measure against patent trolls. By holding the patent, they can control how the technology is used and ensure that it remains available to the public under an open source license.

If you look from the other angel, there are other reasons why patenting open source software makes sense, like:

  • To attract investment: By holding a patent, an open source software project can demonstrate its innovation and attract investment from potential partners or investors.
  • To establish market position: Holding a patent can help establish a company or project as a market leader and give them a competitive advantage in their industry.
  • To protect against infringement: Having a patent can provide legal protection against others who might use the technology without permission.
  • To create a licensing revenue stream: An open source software project can license its patents to others, generating a new revenue stream that can be used to fund further development and improvement of the software.

It’s worth noting that these benefits of patenting open source software are not guaranteed, and each case is unique. The decision to patent open source software should be based on a careful consideration of the specific circumstances and goals of the company or individual.

Turning the tables in Ghana

I already wrote about my interest in various philanthropy topics, one of them is being helping out people in Ghana. The easiest way for me to do that is to employ IT resources from there. There can be several reasons why an organization might choose to work with an IT company in Ghana, some of them include:

  • Access to skilled and talented workforce: Ghana has a growing pool of skilled and talented IT professionals, which can provide an organization with access to a high-quality and cost-effective workforce.
  • Cost-effectiveness: Working with an IT company in Ghana may provide cost savings compared to other regions, due to factors such as lower labor and production costs.
  • Location advantage: Ghana is well-connected to the rest of the world, making it a convenient location for an IT company that is looking to operate in a central location in Africa.
  • Government Support: The Ghanaian government has been actively encouraging IT businesses and providing them with the necessary support to help them succeed.
  • Growing IT industry: Ghana’s IT industry has been growing rapidly in recent years, and there are a number of well-established IT companies in Ghana that have a track record of delivering high-quality products and services.
  • Increased Quality of Service: IT companies in Ghana have developed reputation for providing good quality IT services and Solutions that is comparable to developed countries.

As with any business decision, it is important to evaluate the risks and benefits, as well as to conduct thorough research and due diligence on the specific IT company you are considering working with, to ensure that they have the necessary capabilities and resources to meet your needs. When it comes to Accra, the capital of Ghana, it is the home to a growing number of IT companies. These companies provide a wide range of services and solutions, including software development, web design and development, mobile app development, IT consulting, and digital marketing. Some of the well-known IT companies in Accra include:

  • Softtribe: This is a Ghana based IT services provider which specializes in enterprise software development. Softtribe has clients across West Africa region, providing software development services to companies in various sectors such as Manufacturing, retail, banking and telecommunications
  • Zara Studio: Zara Studio is an Accra-based full-service IT agency providing digital solutions, such as web design, digital marketing and software development. The agency have a reputation of delivering high-quality digital solutions to local and international clients.
  • BlueCrest: BlueCrest is one of the largest IT firms in Ghana, providing IT solutions to clients in the banking, telecommunications, and oil and gas industries. The company’s services include software development, IT consulting, and systems integration
  • Black Pepper Technologies: Black Pepper Technologies is a software development and consulting firm that specializes in providing IT solutions to clients in the financial services, telecommunications and e-commerce sectors
  • MEST Ghana: MEST is an organization that helps in building scalable technology companies in Africa. They have an incubator program in Accra and help entrepreneurs grow their startups by providing funding, mentorship, and training to promising software development companies
  • Tech Needs Ghana: This is an IT company that specializes in providing digital solutions such as Website development, Mobile App development, and Digital marketing services to companies in Ghana.

These are some of the IT companies in Accra, it’s worth noting that there are many more IT companies with various sizes, capabilities, and focus areas. So, it is important to research, evaluate the options and conduct due diligence to ensure that the company you choose is the right fit for your IT needs.

I did the right due diligence, and found a company, which is not among the list above: turntabl.io. So why did I choose them among all the other choices?

Beside everything above applies to them (skilled and talented workforce, cost effectiveness, location/timezone advantage, government support, growing industry, good QoS), their ‘secret’ weapon is their CEO, Sam Moorhouse.

Sam Moorhouse, CEO of turntabl.io and James McLeod, Director of Community at FINOS and The Linux Foundation, Founder of London.js, all of us showing off amazing beards πŸ™‚

Sam has a distinguished career – worked at Morgan Stanley and Citi as senior developer, and for 7 years, been training developers at many companies as part of the company Mallon Associates. That latter skill was what made it possible to train up 100+ developers in his Accra based office, with the help of Mallon, and with the help of many employees of large financial institutions, who flew to Ghana and was teaching the batches of developers there, in person.

The resources I have been enjoying from turntabl clearly went far above and beyond of my expectations. When it comes to them working as a group on open source projects of ours (like Arriving to… Crossroads | Dotneteers.net, see https://turntabl.io/crossroads/), or working as team augmentation on various tasks, they did deliver with ease, elegance, and professionalism. This is what you get if you engage with them – which I highly recommend, whether you are looking for new resources or help in open source projects, next to everything else above – you will have the ability to feel like you are giving back too. So, this is how the turn tables πŸ™‚

Morgan Stanley at the Open Source in Finance Forum NY’22

As you saw in the previous post, Open Source in Finance Forum NY’22 | Dotneteers.net, I was at the Open Source Finance Forum, representing the Open Source Readiness and leading the discussion on the Open Source Program Office’s private session. But I wasn’t the only person present at the event from Morgan Stanley – we have had a wide range of presence from our side this time:

My manager, Dov Katz, was part of the opening Keynote:

Open Source in Finance Forum – Opening Remarks – Gabriele Columbro, with Dov Katz & Rob Moffatt

My coworkers, Stephen Goldbaum and Rita Chaturvedi leading multiple discussions at the event:

The Current State of DEI and Path Forward – Jevon Beckles, Chitra Hota, Nick Fuller, Rita Chaturvedi
Exploring Open Reg Tech with the LCR – Stephen Goldbaum
Modernize Regulatory Reporting: Get Ready for T+1 Settlement
Morphir Integration with Scala – Damian Reeves, Stephen Goldbaum

So, I am looking forward to 2023’s OSFF events, hopefully being able to present once again on them with some fun topics πŸ™‚

Open Source in Finance Forum NY’22

After presenting at the 2021 version of the Forum, it was inevitable that I want to be back – it was an energizing experience and wanted to feel it once again! πŸ™‚

So, I submitted a topic (open source standardizing for the metaverse), and waited for the green light – which never came; this was a topic seemingly too early to be discussed on such forums – I am a firm believer in mixed reality and open source, so it is just the question of time to have interest for such πŸ™‚

But I had a way back – for the first time ever, OSFF matured enough that to have next to the multiple tracks with amazing sessions, they added an EXPO!

11 of FINOS’s own projects, the Common Domain Model, the Compliance Horizon Scanning, the DevOps Automation, FDC3, Financial Objects, KDB+, Morphir, Open Source Maturity Model, Symphony Workflow Developer Kit, Timebase and the Open Source Readiness SIG were joined by the sponsor’s booths, resulting in a huge influx of people between the sessions and during the longer breaks to check out what we can show – I took this picture before the first big hit of people arrived, because after that I never had the time to take another πŸ™‚ :

So, how this is relevant to me? Because I happen to be the co-chair the Open Source Readiness SIG, along with the amazing Elspeth Minty of RBC, Care Delia of Red Hat and Brittany Istenes of Fannie Mae, with the huge help of Rob Moffat, Jim St Clair and the energy bomb James McLeod. Even more – as the co-hair, I got to lead the FINOS Banks Only OSPO Roundtable. As the event is run according to Chatham rules, I cannot tell much more details about the roundtable beside the anonymized meeting notes at GitHub.

Another Session on “Why Going Open Source?” – Peter Smulovics, Morgan Stanley

Back in November, I had the luck and opportunity to get back to some level of normalcy for just a day – I got invited to present at Linux Foundation’s Open Source Strategy Forum about, wait for it, Open Source. What was it about? Here is the blurb:

It is always appropriate to challenge the need for a project to be open source, given the lack of foreknowledge of anyone else having a desire to use a platform versus the other possible options or their own proprietary one. While companies have the desire and the capability to support this if it comes to be, it’s not the primary motivation. With a foundational architectural aspiration of a pluggable platform, it’s important for it to be possible to selectively choose components from open source and if needed, from commercial vendors that make sense given your requirements. There is no reason for a company to own every line of code or to find something available that tries to meet all the needs. Vendors will always yearn to get their foot in the door and being open source accelerates and simplifies partnerships through increased visibility and collaboration without the red/yellow tape or proprietary integrations or NDAs. We have already seen this model work successfully with our projects as ongoing collaborative efforts with vendors to use and extend simply for their own (sales) demos to others.

So, without further ado, here is the recording:

Another Session on “Why Going Open Source?” – Peter Smulovics, Morgan Stanley

The success of this presentation lead to another small success – more about that later on πŸ™‚

Arriving to… Crossroads

And another project just got opensourced by my team, this being called ‘Crossroads‘. It is a small nifty tool that enables to do something similar as self contained .NET Core applications are making possible – just this supporting other technologies than .NET Core, like Node.js applications or applications using more than one technology.

Crossroads itself is a .NET Core commandline tool, a kind of packager for developers. As mentioned above, this is a generic solution to host any application within Crossroads package executable and further launches application’s executable. Developers will specify arguments such as name, icon, version etc. for branding during the package generation. The specified argument name will be used to rebrand the internal application as needed.

So, in a nutshell, Crossroads allows you to:

  • create an executable package
  • customize your package with a name, icon, version and other attributes
  • run applications through crossroads generated package

Please, let me introduce

Another day – another open source project from my team, this time a small nifty tool called β€œplease”, akin something that already been mentioned in one of the ADRs (ADR003):

- We would depend on using an eng/Dependencies.props file instead of having the versions of Nuget files
repeatedly entered into the csproj files
- We would use automated tooling to achieve the maintenance of Dependencies.props file

So, in the end, not only these, but a bunch of other small functionality has been added to this swiss knife of a tool that you can just ask to do stuff, nicely πŸ™‚

It can easily:

  • Consolidate nuget packages across a solution, or only a subset of them
  • Keep package versions in a central props file and maintain that file
  • Move and rename projects
  • Clean up in case you manually moved and renamed
  • Clean up <Compile Remove="..." /> items, with or without globbing
  • To find stray projects
  • To remove ‘junk’ from solution directory
  • To change the PATH variable (useful when working with dotnet tools)
  • etc.

Using AD…what? ADR?

And the ADR for using ADRs is there in ComposeUI/adr-001-use-adrs.md at main Β· morganstanley/ComposeUI (github.com)


If you are watching the new repo, you might have spotted that the first few PRs are about adding a set of “ADR”s, Architecture Decision Records.


So you could ask, why? You could ask the same question, why a project is using X instead of Y – actually a new person joining a team definitely going to ask the question, why you using Entity Framework and not NHibernate? And believe me, most likely you would hand wave and say “for historic reasons” because you would absolutely not remember anymore. And that’s generally very unfortunate.

Documentation. Yes, I’m also a developer, and I also hate writing documentation. Who doesn’t hate that? Actually, I think, above a given age, when you are being told ‘documentation’ you do have a particular picture in your mind, which is books and books of lot of pages, probably bound together using twines called project documentation while still using Rational Unified Process or Microsoft Solution Framework like I did? Or the other way around, yes, there are tons of documentation, scattered among different systems, hosted off the code, in wiki or something – gets outdated the day you write it, not part of the source control, not structured (or rarely), therefore, why to write it at all, again?

So, documentation, why hate it, but can it be done better? I don’t think I ever started to like writing documentation, believe me. But writing Architecture Decision Records, following a certain scheme in them and keeping them in the same git as my code – that’s more of my liking, believe me. So, just to summarize, an Architectural decision is a software choice. One that addresses either a functional or a non-functional (like project structure – or the fact you do write ADRs!) requirement that is architecturally significant – framework choices, programming languages you choose, OSes you target, data storage, communication patterns, persistence, validation, logging, telemetry; you just name it. Of course, you should not take the term “architecture” too seriously or interpret it too strongly. I mean, look at not-that-recent update of ThoughtWorks’s radar when talks about ADRs: Lightweight Architecture Decision Records | Technology Radar | ThoughtWorks – they went from ‘trial’ in 2016 and speaking about evolutionary architecture to a mainstream adopt in just a few years. And they also suggest to store them in version control instead of wiki/website. Let me finish it with the sentence from the Radar: “For most projects, we see no reason why you wouldn’t want to use this technique.” So, our http://github.com/MorganStanley/ComposeUI is not different πŸ™‚