Monday, April 17, 2023

CRYPTOCURRENCY, BLOCK CHAIN, AND CBDC

                                                               2023-02-08

A.      Cryptocurrency

A friend of mine keeps asking me about cryptocurrency as the best investment at the moment. Thus I spent around ½ hour to google for details or ideas. Those notes from Goggle were indented and in italic fonts.

Quick google said that there are 2 types of wallet, i.e. software on a PC or phone AND wallet on USB (probably software too). Cryptocurrency would be kept in the wallet and traded at exchange.

Storing your coins at brokerage or exchange is not as safe as in your own wallet custody.

Anyway there are many cryptocurrencies out there; an exchange may offer users to trade many types of cryptocurrencies.

Is Binance a wallet or exchange?

Binance is an online exchange where users can trade cryptocurrencies. It supports most commonly traded cryptocurrencies. Binance provides a crypto wallet for traders to store their electronic funds. The exchange also has supporting services for users to earn interest or transact using cryptocurrencies.

This is what I don't understand

Does your crypto grow in a wallet?

Yes, your cryptocurrency will continue to grow while stored in your wallet. 

It was actually the value of your currencies may be appreciated or shrunk depending on the bidding price of your crypto at the moment, i.e. the coins didn’t reproduce by itself and its value could be higher/lower depending on the trading price at any moment like stock price? So crypto in a wallet grown/shrunk would depend on the price offered by buyers. It is not growing by itself. It was a misleading statement.
 

"What's the point of transferring crypto to a wallet?

Rather than keeping physical money, the wallet saves the cryptographic information needed to access Bitcoin addresses and send transactions. Other cryptocurrencies can be stored in some Bitcoin wallets. The device containing your Bitcoin wallet stores the private key, not the coins themselves." 

The way they do it, crypto owners don't have a number and coin ID in the wallet. If those addresses, private key or cryptographic information in their wallet were altered, owner lost everything.

"Why you should not leave crypto on an exchange?

 

The owners of the coins can't get them back from the exchange. While blockchain itself is very secure and essentially unhackable, the centralized nature of an exchange makes them vulnerable. In conclusion, it's not the smartest thing to do to keep your coins on an exchange." 

Then the wallet must be recognized as legitimate by an exchange, because user could connect his wallet to applicable/allowable exchanges to perform transactions. 

Crypto would face same inflation problem as other real currencies, it depends on the buyers of crypto to decide buying price, which could be lower at any time. 

I will take a look more on the mining of cryptocurrency. Somebody must insert more coins to the system for new buyers, i.e. similar to printing money. They said that miners introduced more coins to the system? 

It is like a stock, but there was no owner or anything, (e.g. EPS or PE) based on to determine buy/sell prices. Wallet is like a brokerage account, but the crypto/wallet owner is the broker and this type of account could be used to trade in any exchange similar to TSX/NYSE/NASDAQ with the same exchange rate. The only thing matter would be the offer buy/sell price.

 

How much crypto can I mine in a day?

Many people wonder how many Bitcoins can be mined by a person in a day. There are currently 6.25 bitcoins produced in each block, and a block is produced every 10 minutes. This means that there are 6.25 (Bitcoins per block) x 6 (blocks per hour) x 24 (hours per day) = 900 bitcoins produced each day.

 

How do I start mining cryptocurrency?

Crypto mining equipment requires heavy initial investments. The speed and power of your system will determine how profitably you mine Ether. Opting for a GPU mining rig will give you a better result than a CPU-based one. You can also opt for an application-specific integrated circuit (ASIC) miner.

 

Will mining destroy my laptop?

But mining is a much more strenuous activity. You need to factor in the fact that mining is usually a 24/7 process, and you're putting a lot of unneeded stress on your laptop. Not only can you damage your GPU in the long run, but you can also wear out the teeny tiny fans, which can further complicate things.

 

Bitcoin mining is a complex computational and technological process of validating the bitcoin transactions over the Bitcoin network. It is like a process of validating a block on the chain network and getting paid in Bitcoin. People who are involved in this process of mining are known as miners."


Free computers turn on 24/7 for the owner of this crypto network or block chain. 

Btw: do you know that MIT once invented a super computer by linking many personal computers (microprocessors) together? This is how block chain is formed by using/linking miners' computers?

B.      Cryptocurrency and block chain

 

But by the early 1980s, several teams were working on parallel designs with thousands of processors, notably the Connection Machine (CM) that developed from research at MIT. The CM-1 used as many as 65,536 simplified custom microprocessors connected together in a network to share data. Several updated versions followed; the CM-5 supercomputer is a massively parallel processing computer capable of many billions of arithmetic operations per second.

Source: https://en.wikipedia.org/wiki/Supercomputer

 

If one of miner is a hacker, data would be replicated over the block chain’s network and on his computer for hacking activity.

After mining periods, miner’s computers could be used as "validators" of cryptocurrencies, which could be a free computer for those cryptocurrencies in its block chain.

 

The USDT and USDC are stable coins, which were traded the same as the exchange rate of the US dollar. 

If the exchange rate is the same as the USD, then it’s better to do business transactions in USD. You can use USD for many stuff in USA or internationally. 

If a user holds USDT, USDC, or any cryptocurrency, they must find buyers of their crypto for cash then convert it into USD or any local currency, where they are located. 

Let's see if the current (a) block chain could handle weather forecast or analysis, because it has many free powerful mining computers. If those miners wiped out crypto stuff or reformat their computers, that block chain could no longer handle weather forecast as it used to be, because some of its processing power was removed. 

I have copied and pasted notes from Google. This showed me that bit coins or cryptocurrencies are not different than other currencies in terms of "inflation". It is also risky as miners could be hackers. Block chain processing power could be interrupted at anytime. 

Having wallet or mining algorithms installed is not guaranteed of its security either.

They "claimed" that only miners could introduce more crypto, but nobody could guarantee that the owner of that crypto didn't throw in large amount of bit coins at anytime. 

Notes: People do have different opinions about an issue. There is no need to convince others to have the same belief. As Warren Buffett once said that he didn't understand technology, so he avoided tech stocks. He saw Amazon's plan was too complex to execute. He also missed the opportunity to invest in Amazon. 

Anyway I think the same. I would stay with stock investment, which I understand more. I have never said that I understood stock market. 

It's like investment in a stock. You could be right and wrong about its future. You don't really need to convince others to believe in your view unless you're the CEO of that firm talking to your investors. 

Some people choose to invest in cryptocurrencies, because it is protected against inflation. They said that the British Pound (GBP) and US dollar are affected by inflation.

·         The British Pound was devalued due to the Brexit event for the UK leaving the European Union. How many Brexit events would happen to the UK?

·         How many financial crises such as 2008 happened to the USA? This time (2022-2023) inflation rate is currently very high, but the US dollar is traded higher as compared to other currencies.

·         Unless new crypto buyers are willing to pay more for a coin, the crypto would be devalued or flat too. Cryptocurrency is like other official currencies. There is no magic. 

There is no regulator for a cryptocurrency, i.e. nobody knew exactly how many coins existed in the system. They could claim that there were only 21 million coins as they liked. However algorithm’s inventors/owners of wallet/exchange could add in as many coins as they like at any time. They knew algorithms or encryptions of the cryptocurrencies and block chain. This is an act of printing money, but nobody controlled or reported it. 

Official currencies such as GBP, USD, CAD, or EUR have official mechanisms to report in the financial world. Therefore it is harder to manipulate the amount of money, which is released to the population. 

Crypto currency has swung wildly sometimes, i.e. -10% or +10%, in a couple of days. How could we quote our product’s price in crypto? Visible profit for a sale invoice could turn out to be a loss due to a negative swing in cryptocurrency.

We could develop software for generating an invoice with local currency, and link to any web site offering exchange rate such as https://www.oanda.com/ca-en/trading/cfds/forex, which is a known corporation for currency’s exchange rates. The software linked to this data center for spot currency exchange rate. The total mount on the invoice could be in the any "agreed" currency between buyers and sellers. They could include a percentage of commission fees, if needed for a special chosen currency. 

C.      Central Bank Digital Currency (CBDC) 

I saw a post about riots in Nigeria due to introduction of CBDC and discontinuation of old currency on March 8, 2023. 

Quotes from Internet:

1. Is CBDC a cryptocurrency?

Unlike cryptocurrencies, which are decentralized, CBDCs are state issued and operated.

 

2. What is CBDC in Canada?

We are building the capability to issue a digital version of the Canadian dollar—known as a central bank digital currency (CBDC) —that Canadians can trust and rely on so we can be ready should the need arise.

 

3. Countries Which Launched CBDC

As of now, a total of three countries have launched CBDC. Bahamas' GDP for 2023 is projected at 4.1 per cent, whereas both Nigeria and Jamaica are expected to grow at 3 per cent. Among the three, Nigeria has the largest economy in terms of size with GDP of $504.2 billion in 2022.

 

4. Is CBDC a Bitcoin?

Cryptocurrency Vs CBDC

Cryptocurrencies are independent digital currencies that run on the principle of decentralization and without predetermined value or backing. Bitcoin (BTC) and Ethereum (ETH) are examples of such cryptocurrencies. In contrast, CBDC has the backing of central banks. 

We should allow people continuing to use cash. There are still many applications or sale machines accepting coins or paper money. 

I like both cash and credit/debit card. I don't like to use a cell phone in purchased or debit transactions. 

Perhaps central banks have pushed for CBDC to compete with cryptocurrencies and bit coins. However, having cash in addition to CBDC would make them different or convenient.

Personally I don't see a need for CBDC. We could develop mobile app, if people preferred paying by a mobile phone, to convert the current currency to any local currency on the spot. This would be convenient and less troublesome to use block chain or any hurdles with wallets. 

Did you know anything about the owner of encryption algorithms used in wallets in case of using CBDC? You must install it on your mobile phone or laptop something that you didn't know anything about, but classified as "secrets". Is this software or encryption algorithms safe or secure? Let's those inventors say and you believe in it. 

In case of using mobile phone to pay for services or products in foreign countries using credit cards or debit cards, the credit card companies could include "estimated" conversion cost or commission fees to users or payers in advance, i.e. no surprised.

Sunday, April 2, 2023

Artificial Intelligence (AI) versus Human

I don't know how developers could make an AI computer as smart as human. 

However, people should remember one thing: "Computer or robot is a cold blooded machine. It is not as human regardless whatever you have trained or embedded in it." 

It is way beyond "privacy" issues. It is "dead or alive". 

One of AI fields must be banned, i.e. the study of brain waves, which could lead to products controlling human. 

Imagine that they hooked your brain waves remotely to a ChatGPT to ask you all kinds of questions. Regardless of ChatGPT is happy with your answers or not, you'd lose at least a day in anger. 

How about hackers disabled you with ChatGPT for a week? People could say that you were dead for a week.

Technical personnel love challenges, but they should think twice about the R&D products that they are working on. Those products or R&D work could kill them and their descendants in the future.

Human must have a basic life, i.e. ability to think and control their actions independently. 

Tuesday, January 10, 2023

Using Database Tags in HTML File

1.     Overview

This is a small note or idea about using database tags embedded in HTML file to display data stored in a database instead of writing codes in a HTML files to query and display data.

2.     Descriptions 

Back in 2003, I developed a system with J2EE for Air Canada to display equipment on an airplane while I was working at Scanpak Inc. The GUI was developed by another developer. I got the html file, and I had to embed Java codes on the HTML file in order to query database and display proper equipment for those web pages.

Recently I had created several blogs on BlogSpot, which is owned by Google.  By viewing the html for a post, I could edit those html files for errors by BlogSpot, when it converted the word document into html for display.

As always the html tags are like spaghetti. I don’t want to read spaghetti codes, which would consume too much time for a little work or achievement.

The following ideas would be a proposal to avoid writing codes on an html file to display data stored in a table’s column in database.

Developers would create temporary or displayed table and columns in database for display on the web page. Of course, all coding process would be done in the backend to store proper data in those temporary tables.

a.       On the web page or html file, we would only need to specify connection string, table nameà column name; and then data on that column would be query and display on that web location. For example, in the html file there are 2 lines of tags

·         Open DatabaseàCanada

·         Table OntarioàToronto

The web page would open the database named Canada. It would query table Ontario and display all rows (line by line) in the column Toronto.

b.      If you wanted a table with several columns displayed on the web, then a join statement would be needed, for example

·         Open DatabaseàCanada

·         Table OntarioàToronto_Street “space or appropriated short html tag” AND OntarioàToronto_PostalCode “space or appropriated short html tag” AND OntarioàToronto_TelephoneNumber

·         Close DatabaseàCanada

Data will be displayed row by row until the end of the Toronto table.

c.       Refreshing data on the web could be done with key work such as “Refresh 2 min”. The UI would query database every 2 minutes and refresh data. 

Open DatabaseàCanada

Table OntarioàToronto_Street “space or appropriated short html tag” AND OntarioàToronto_PostalCode “space or appropriated short html tag” AND OntarioàToronto_TelephoneNumber 

Refresh 2 min 

d.      An alternative way would be create a button for user to refresh data.

e.       Automatic refresh from the backend, when new data arrived, would require communication between the UI web and its backend. You could use keyword such as update to trigger refreshing data requested by the backend. 

Open DatabaseàCanada

Table OntarioàToronto_Street “space or appropriated short html tag” AND OntarioàToronto_PostalCode “space or appropriated short html tag” AND OntarioàToronto_TelephoneNumber 

Update 
-------------------------------------

Written and posted on 2023-01-05

Thursday, December 15, 2022

Pickup/Service Alert

Inform users before coming for a pick up.

This feature could be used for food delivery, returned item pick up, registered mail with signature, service call, installation service, etc.

I have returned an item for Amazon, and it was picked up by Intelcom. The service was quick, but the driver didn’t ring me before coming. I may step out for errands and miss the pickup.

You may consider ring, email, or text customers before coming. Your customer may not be at home 24hrs/day waiting for your staff coming.

This feature could be incorporated into your app. The staff should have a list of customers to visit or serve during the day loaded on the phone. The app could be integrated with a GPS device.

The driver would select the intended address in the app to pick up for GPS or something, the app would automatically send out an email, ring, or text message as required by customer. The app should be on a mobile phone, so the driver could answer the phone, if “ring” customer was an option.

The above feature would be useful. You won't waste a trip for nothing.

Figure 1.  Simple design diagram for Pickup/Service Alert


Sunday, January 9, 2022

Improvement of Ericsson's APZ

I had worked for Ericsson Research Canada in Montreal for many years (1990's) in mobile telephony especially APZ or AXE. Since I left Ericsson, I have worked for many companies and had a chance to compare technologies with Ericsson proprietary APZ.

APZ is superior with PLEX-C and Test System as they offered features to debug and load patches on live nodes to fix issues in ASA (APZ's assembly language). With ASA, we could even develop quick features and load on switches instead of going through a complete software development cycle by developing in PLEX-C, testing system, and then deploying system normally, i.e. slower deployment of products to customer sites.

PLEX-C is an old programming language as compare to other object oriented languages such as C++, Java, Python, etc. However PLEX-C helped to decouple large and complex systems into subsystems easily. Each subsystem could communicate with each other via a pre-designed protocol, which could be verified easily by using signal descriptions. We could say that system developed with PLEX-C is like a protocol application, which is easy to understand and debug.

We could say that PLEX is a programming language specializing in packet communications such as banking transactions, telecommunication systems, IoT applications, etc. With relational database, it could offer developers an excellent platform for many applications.

You could take a look at ANSI-41 standards for TDMA, it is like sequence diagrams for PLEX-C. By the way, block diagrams could be dropped. A sequence diagram could be extended to add relevant information, which was normally in a block diagram. This would help to reduce development cost. I have never looked at a sequence diagram or block diagram to understand mobile telephony system on APZ. I had only used source codes, signal descriptions, and Test System.

Test System helps to debug and understand a complex system quickly with help of signal descriptions and PLEX-C codes. This is a data flow model as compared to other program languages as logic flow, which is harder to decouple, understand and debug.

Test System could be upgraded for tracing on live nodes. Currently we need to write scripts to limit tracing shown on live system, i.e. we couldn’t do any tracing without advanced planning.

The only draw back from PLEX-C is its file database. If APZ could be upgraded to offer relational database, it would be a winning product. PLEX-C would be extended to offer programming statements for developers to use relational database.

With this upgraded APZ, software development would be quick and easy, i.e. less expensive and possible lower price quoted to customers.

Speaking of user interface, the upgraded APZ could offer an interface or ports to external terminals, which support GUI to users. Data entered plus command actions would be committed to the upgraded APZ in format understood by the APZ, e.g. command lines. With separate GUI, Ericsson could sell upgraded APZ to customers as modern technologies. However the performance of the upgraded APZ is unchanged or un-impacted by adding many OS codes, which could slow it down.

The external interface (APY) port could be a fast proprietary Ethernet port, which would accept data from a terminal to query data from the database in order to present to clients in a graphical screen or animated results. Data or communications from the terminal to the APZ would follow specific protocols in order to exchange data OR committed changes to the database or system applications.

Regular Ethernet port(s) or telecom (CCITT) ports are also needed for APY applications communicating with other systems.

I have also written a design proposal on parallel processors, which were based on PLEX-C programming language. That means APY could offer parallel processors as super computers to customers.

To optimize development costs, the “less powerful” (less expensive parallel processors) APY could be used for RBS or RAN in addition to MSC and HLR.

The upgraded APZ (APY) is like power super computer. The PLEX-C plus relational database is very easy to learn to software developers. In some of my posts, I have called APZ with relational database as APY.

-----------------------------------------------------------------------------

2022-01-12

Developers, who had never worked with PLEX-C, could be puzzled about whatever I wrote above. You could answer the following simple questions?

·         Can you read the technical specification of a product OR its functionality on the UI, and then you can “guess” the programming logic of the application by looking into the database’s tables? I could.

·         Is it easier to read the entire flow of data (TEST SYSTEM) from beginning to the end of an operations OR using a conventional debugger to step in the entire programs to follow the logic? The debugger may jump “crazily” from a class to another class. Test System could be consider similar to “unit test” as “signals with accompany data” entered a program module (block) and out with “signals with expected data”. By setting proper traces, you will get the entire flow of data from start to end with a single action for all program modules involved, e.g. making a call from MS-A to MS-B. You don’t need to step by step following logic of a developer.

·         Is this easier to read data or reading many lines of codes?

By the way, I would prefer to write codes than reading codes by others. Many software developers “preferred” to show off their “sophisticated” mind by writing complex codes, but it was not needed. Getting applications working and deploying to a customer site would be better than spending time figuring out what a developer wrote?

During my years at Ericsson, many code reviewers were very picky to ensure that codes were written in a simple way and meet AXE’s design rules.

---------------------------------------------------

2022-01-18

If Ericsson used its APZ technology to develop PC’s OS with PLEX programming language, relational database, and GUI (similar to VB or C#), I would pick this type of PC for complex applications competing to medium powerful server’s systems. Parallel processors could be supported by this PC to enhance its processing power.

IBM Mainframe or powerful servers would be compared with APY.

I heard that PLEX-V is an upgrade of PLEX-C programming language plus relational database programming statements.

To make PC attractive to software developers, Ericsson could create a virtual holder similar to Java Virtual Machine (JVM) or VMware for legacy Microsoft Windows apps. Of course, those apps would run slower than native applications developed with PLEX-V directly.

Developing applications would be quick and easy, i.e. saving time in R&D or costs.

As many people out there said: personal computers with parallel processors like this would be competing in the rank of mini-super computers.

In computer history, many super computers have been invented and developed, but many of those have become obsolete or unpopular because its programming languages were not developer friendly. PLEX is a simple language, which makes its applications similar to TCP/IP or any popular protocols out there.

The question is if you’re familiar with a protocol and love protocols or not. Any applications offered user access remotely over Internet are using TCP/IP as transport layer, thus packet data communications.

Anyway I like protocol and Microsoft’s programming languages are not good enough for packet programming. Its “forever loop” at an Internet port does slow down a computer significantly. I did design an “Internet Interface Manager” in one of my post using PLEX to avoid forever loop, i.e. speeding up system performance.

-----------------------------------------------------------------------

2023-01-20: I spoke about this earlier for APY with PLEX-V = PLEX-C + relational database. APY coupled with parallel processors would be the best candidate for financial systems such as bank ATM, bank tellers, stock trading, etc.

Those financial systems are driven by short transactions such as withdraw, buy/sell stocks, etc.

Those are like protocol transactions, which are supported by PLEX programming languages or IoT.

The UI could be provided by a separated computer server connecting to the APY's database for display. New transactions or configurations must be via an internal protocol with the applications on APY. Using internal protocol instead of committing data changes to database directly is to avoid data corruption because system is live.

However liability of banking industry is very high as compared to telecommunication, which is around $1M/min down time. By the way, financial system is simpler than mobile telephony system.

IBM is dominating the landscape of bank systems with IBM Mainframe, and financial institutions are not jumping to another systems OR addicted to high/modern technologies.

That's reason why Ericsson should not step in this industry.