Labels

Wednesday, January 17, 2024

FinTech

 "FinTech" is a term that combines "financial" and "technology" and refers to the use of technology to provide financial services. FinTech encompasses a wide range of innovations and applications that leverage technology to enhance and streamline various aspects of the financial industry. These innovations often aim to improve efficiency, accessibility, and user experience in financial services.


Key aspects of FinTech include:


Digital Payments: FinTech has transformed the way people make payments, with digital wallets, mobile payment apps, and contactless payment systems becoming increasingly common.


Online Lending and Crowdfunding: FinTech platforms facilitate online lending, connecting borrowers with lenders through digital platforms. Crowdfunding platforms also allow individuals or businesses to raise funds from a large number of people.


Robo-Advisors: Automated investment platforms, known as robo-advisors, use algorithms to provide financial advice and manage investment portfolios for individuals.


Blockchain and Cryptocurrencies: FinTech includes innovations related to blockchain technology and cryptocurrencies, such as Bitcoin and Ethereum, which offer decentralized and secure methods of transferring and managing digital assets.


InsurTech: Technology is used to enhance and innovate the insurance industry, with digital platforms offering streamlined insurance processes, data analytics, and personalized insurance products.


RegTech: Regulatory technology, or RegTech, involves using technology to help financial institutions comply with regulations efficiently. This includes solutions for risk management, compliance monitoring, and reporting.


Personal Finance Management: FinTech applications provide tools for personal finance management, budgeting, expense tracking, and financial planning. These tools often use data analytics to offer personalized insights.


Artificial Intelligence (AI) and Machine Learning: FinTech companies leverage AI and machine learning to analyze large datasets, automate processes, detect patterns, and make data-driven decisions in areas such as fraud detection, credit scoring, and customer service.


Open Banking: Open banking initiatives enable the sharing of financial data between different financial institutions securely. This allows customers to access a broader range of financial services and products.


Financial Inclusion: FinTech plays a role in promoting financial inclusion by providing services to underserved populations, such as those without access to traditional banking infrastructure.


FinTech has had a significant impact on the financial services industry, disrupting traditional business models and creating new opportunities for innovation. It has also led to increased competition and collaboration between traditional financial institutions and FinTech startups.






Sunday, January 14, 2024

Distributed computing

Distributed computing refers to the use of multiple interconnected computers or nodes working together to solve a computational problem or perform a task. In a distributed computing environment, the nodes collaborate by sharing resources, processing power, and data over a network. This approach contrasts with centralized computing, where a single, powerful computer is responsible for executing all tasks.

Key characteristics of distributed computing include:

Parallel Processing: Distributed computing allows for parallel processing, where multiple computers or processors work simultaneously on different parts of a problem. This can lead to significant improvements in performance and efficiency compared to a single, centralized system.

Resource Sharing: Nodes in a distributed system can share resources such as processing power, memory, storage, and input/output devices. This resource sharing enhances the overall capacity and capabilities of the distributed system.

Scalability: Distributed systems are often designed to be scalable, meaning that the system can easily accommodate an increase in the number of nodes or the complexity of the tasks without a significant loss of performance.

Fault Tolerance: Distributed computing systems can be more resilient to failures. If one node fails or becomes unavailable, the overall system can continue to function using the remaining nodes. This fault tolerance is achieved through redundancy and the ability to distribute tasks across multiple nodes.

Decentralization: Distributed systems typically involve a decentralized architecture, where decision-making and control are distributed among the nodes. This decentralization can improve efficiency, reliability, and responsiveness.

Interconnected Networks: Communication among nodes in a distributed system relies on network connections. These networks can be local area networks (LANs), wide area networks (WANs), or the internet. Effective communication protocols are essential for successful distributed computing.

Collaborative Processing: Nodes in a distributed system collaborate to solve complex problems by dividing the workload among themselves. Each node processes a portion of the task, and the results are combined to obtain the final outcome.

Applications of distributed computing are diverse and include areas such as scientific research, data processing, cloud computing, grid computing, content delivery networks, and more. Examples of distributed computing technologies and frameworks include MapReduce, Apache Hadoop, Apache Spark, and various middleware solutions.

Distributed computing is fundamental to addressing the challenges posed by the increasing complexity of computational problems, the demand for large-scale data processing, and the need for scalable and fault-tolerant systems in various domains.






Thursday, January 11, 2024

Oracle JDKs vs Open JDKs

Oracle JDKs vs Open JDKs

ChatGPT

Oracle JDK (Java Development Kit) and OpenJDK (Open Java Development Kit) are two different implementations of the Java Platform, Standard Edition (Java SE). Both are widely used, but there are some differences between them. Here's an overview:

Oracle JDK:

Licensing:

Historically, Oracle JDK had a more restrictive commercial license for use in production environments. Users were required to pay for support services. However, Oracle has made changes to its licensing model, and as of Java 11, they have introduced a new subscription-based model for long-term support (LTS) releases.

Commercial Features:

Oracle JDK may include additional commercial features and tools that are not present in the OpenJDK builds. Some of these features are targeted at enterprise customers.

Updates and Patches:

Oracle JDK releases may receive commercial support and updates for a longer period, especially for LTS releases. Users who require extended support for specific versions may opt for Oracle JDK subscriptions.

JVM Flight Recorder (JFR) and Mission Control:

Certain diagnostic and monitoring tools, such as Java Flight Recorder (JFR) and Java Mission Control, were historically provided as part of the Oracle JDK. However, with Java 11 and later, JFR is available in OpenJDK builds as well.

OpenJDK:

Open Source:

OpenJDK is an open-source implementation of the Java Platform and is released under an open-source license (GNU General Public License, version 2, with the Classpath Exception). This makes it freely available for commercial and non-commercial use without licensing fees.

Community-Driven Development:

OpenJDK development is community-driven, and it serves as the reference implementation of the Java Platform. It benefits from contributions from individuals, organizations, and other vendors, promoting transparency and collaboration.

No Commercial Support from Oracle:

Oracle provides commercial support for Oracle JDK but does not provide the same level of support for OpenJDK. Organizations that require commercial support for OpenJDK may turn to third-party vendors that offer such services.

Availability on Package Managers:

OpenJDK builds are often available through package managers on various operating systems, making it convenient for developers to install and manage Java versions.

Commonalities:

Compatibility:

Both Oracle JDK and OpenJDK are designed to be compatible with each other. They should behave similarly, and applications developed on one should run on the other.

Java Specification Requests (JSRs):

Both Oracle JDK and OpenJDK conform to the Java Specification Requests (JSRs) that define the specifications for each Java version.

Tooling and Libraries:

Both implementations share the same set of core Java libraries, tools, and utilities. The differences primarily lie in certain commercial features and support offerings.

In summary, the choice between Oracle JDK and OpenJDK depends on factors such as licensing requirements, the need for commercial support, and specific features. Many organizations and developers choose OpenJDK for its open-source nature, while others may opt for Oracle JDK for its additional commercial features and support offerings. The landscape is evolving, and users should check the most recent licensing and support details from Oracle and other vendors.

The history of Java

The history of Java

The history of Java dates back to the early 1990s, and it has undergone significant developments since its inception. Here is a brief overview of the key milestones in the history of Java:

1991 - The Green Project:

The origins of Java can be traced back to 1991 when Sun Microsystems initiated the Green Project. The project aimed to develop advanced software for consumer electronics, such as set-top boxes and interactive televisions.

1994 - Oak Language and First Release:

The project led to the creation of a programming language known as Oak. However, due to trademark issues, the language was eventually renamed Java. The first public release of Java (Java 1.0) occurred in 1994.

1995 - Official Launch and Java 1.0:

Java was officially launched to the public in May 1995. This release included the Java Development Kit (JDK) 1.0 and the HotJava web browser. The major features of Java 1.0 included applets for web browsers, multithreading, and network programming.

1996 - JDK 1.1:

Java 1.1 was released, introducing new features such as inner classes, JavaBeans, and JDBC (Java Database Connectivity). This release aimed to enhance the language's functionality and make it more suitable for enterprise applications.

1997 - Introduction of Swing and Java Foundation Classes (JFC):

Java 1.2, also known as JDK 1.2, was released, introducing Swing for GUI development and the Java Foundation Classes (JFC). This release focused on improving the graphical capabilities of Java applications.

1998 - Java 2 Platform:

The Java 2 Platform (J2SE 1.2) was introduced, emphasizing the platform's maturity. This release marked the transition from version numbers to platform editions, setting the stage for future releases.

2000 - J2SE 1.3 and Introduction of Java Naming Conventions:

J2SE 1.3 was released with improvements in performance, and this version introduced the Java Naming Conventions, promoting consistent coding practices.

2002 - J2SE 1.4 and the New I/O (NIO) API:

J2SE 1.4 included enhancements such as the introduction of the New I/O (NIO) API, assert keyword, and regular expression support.

2004 - Java 5 (J2SE 5.0 or Java 1.5) - Generics and Metadata:

Java 5 brought significant language enhancements, including generics, metadata annotations, enumerated types, and the enhanced for loop.

2006 - Java 6 (Java SE 6) - Improved Performance:

Java 6 focused on performance improvements, including updates to the Java Virtual Machine (JVM), as well as enhancements to the scripting API and the introduction of the Java Compiler API.

2011 - Java 7 (Java SE 7) - Project Coin Features:

Java 7 introduced features under Project Coin, including try-with-resources, diamond operator for generics, and other small language improvements.

2014 - Java 8 (Java SE 8) - Lambdas and Streams:

Java 8 was a major release with the introduction of lambda expressions, the Stream API for functional programming, the java.time package for date and time, and the Nashorn JavaScript engine.

2017 - Java 9 (Java SE 9) - Module System:

Java 9 introduced the Java Platform Module System (JPMS) to enhance modularity in Java applications. Other notable features included the JShell REPL (Read-Eval-Print Loop) and improvements to the Process API.

2018 - Java 10 and Subsequent Releases:

Java adopted a time-driven release model, with a new version every six months. Subsequent releases, including Java 10, Java 11 (LTS - Long-Term Support), Java 12, and so on, brought incremental improvements and features.

2020 - Java 16:

Java 16 continued the trend of regular, incremental updates. Features included pattern matching for the instanceof operator, Unix domain socket support, and improvements to the foreign-memory access API.

Java continues to evolve with ongoing updates, addressing new challenges and incorporating features to meet the needs of modern software development. The Java community actively contributes to the language's development through the Java Community Process (JCP).






Sunday, January 7, 2024

How to become a programmer?

Language basic syntax + Tools + Database + Frameworks + Technologies = Programmer/ Developer


Language basic syntax

- Java basic

- Python basic

- C# basic


Tools

- Java IDE (eg. Eclipse, NetBeans, intelliJ)

- C# IDE (eg. visual studio, vs code)

- Python (pycharm, etc..)


Database

- SQL (MySQL, MSSQL, PostgreSQL, Oracle, etc...)


Frameworks

- Java SE, EE frameworks (AWT, Fx, JSP, JSF, Spring)

- Python frameworks

- C# frameworks


Technologies

- Web Technology

- Mobile Technology

- Cloud

- Docker

- Microservices

- API


Programming Basic Guide














Saturday, December 23, 2023

 Programming Basic

A basic programming course typically covers fundamental concepts and skills to provide students with a solid foundation in programming. The specific topics and programming languages may vary, but here's a general outline that can be adapted for various courses. This outline assumes a beginner level and is divided into different modules:

Module 1: Introduction to Programming

  • Understanding what programming is
  • Overview of different programming languages
  • Introduction to the development environment (IDEs, text editors)

Module 2: Basic Concepts

  • Variables and data types
  • Operators and expressions
  • Input and output

Module 3: Control Structures

  • Conditional statements (if, else if, else)
  • Looping structures (for, while, do-while)
  • Switch statements

Module 4: Functions and Methods

  • Declaring and defining functions
  • Parameters and return values
  • Scope and lifetime of variables

Module 5: Data Structures

  • Arrays and lists
  • Strings
  • Introduction to data structures (stacks, queues)

Module 6: Object-Oriented Programming (OOP)

  • Introduction to OOP
  • Classes and objects
  • Inheritance, encapsulation, and polymorphism

Module 7: Error Handling

  • Understanding and handling exceptions
  • Debugging techniques

Module 8: File Handling

  • Reading and writing to files
  • File input/output operations

Module 9: Introduction to Algorithms

  • Basic algorithms and problem-solving strategies
  • Algorithm complexity and efficiency

Module 10: Version Control

  • Introduction to version control (e.g., Git)
  • Basic Git commands and workflows

Module 11: Basic Web Development (Optional)

  • Introduction to HTML, CSS, and JavaScript
  • Building a simple web page

Module 12: Final Project

  • Applying learned concepts to a small project
  • Problem-solving and critical thinking

Assessment:

  • Quizzes and assignments
  • Midterm exam
  • Final project assessment

Additional Considerations:

  • Coding exercises and practice problems
  • Code reviews and collaborative programming
  • Guest lectures or industry talks (optional)

Keep in mind that the actual content and order of the modules may vary based on the programming language chosen for the course and the specific goals of the program. Additionally, adjusting the difficulty level based on the target audience and pacing the course appropriately is essential for effective learning.

 

#ChatGPT

Saturday, November 5, 2022

Java Edition

 Java 8 to Java 17 Features

Java ဆိုတာဘာလဲ 

Java ဆိုသည်မှာ computer software များ ရေးသားရာတွင် အသုံးပြုသည့် high level programming language တစ်မျိုးဖြစ်ပါသည်။ High level programming language အမြောက်အများ ရှိသည့် အနက် java သည် ယနေ့ ခေါတ်တွင်အသုံးအများဆုံး programing language တစ်ခု အဖြစ် ရပ်တည်လျက်ရှိပါသည်။

Programming basic with Java


  1. Java Edition (as in Minecraft):

    • If you're referring to Java Edition in the context of Minecraft, "Java Edition" is one of the editions of the game. It is the original and most feature-rich version, and it's written in Java.
  2. Java SE (Standard Edition):

    • If you're asking about Java SE (Standard Edition), it is a version of the Java programming language that is suitable for developing and deploying desktop applications, server applications, and embedded systems. It provides the core functionality of the Java platform.
  3. Java EE (Enterprise Edition):

    • If you're asking about Java EE (Enterprise Edition), it is a set of specifications extending Java SE with specifications for enterprise features such as distributed computing and web services.
  4. Java ME (Micro Edition):

    • If you're referring to Java ME (Micro Edition), it is a version of Java specifically designed for mobile and embedded devices.

#ChatGPT

Generic in Java

Lambda

Stream API

Collection

 

 

Java SE

- Core Java

Java EE

- JSP, JSF, Servlet

Framework

- Spring

- Struct


Sunday, October 23, 2022

Ubuntu Command အခြေခံ

 

Essential Ubuntu Basic Commands

Linux basic command များ အကြောင်းကို Ubuntu အသုံးပြုပြီး လေ့လာသွားမှာ ဖြစ်ပါတယ်။ ကျတော်ကိုယ်တိုင် Ubuntu 22.0.04 ကို စမ်းသုံးကြည့်ရင်းလေ့လာထားတာများကို noted down ချရေးထားသည်များကို မျှဝေထားတာဖြစ်ပါတယ်။

1. Open the Terminal (Shortcut Clrt+Alt+T)

Linux  command များ ရိုက်ရန် terminal/prompt ဖွင့်ရန် application icon မှ တဆင့် search box မှ terminal လို့ ရိုက်ရှာ၍သြော် လည်းကောင်း သို့မဟုတ် shortcut အနေဖြင့် Ctrl+Alt+T နှိပ်၍ ဖွင့်နိုင်သည်။

Click the Terminal prompt to make sure the cursor starts to type some command.

အခြေခံ command များစတင်ရိုက်နိုင်ရန် cursor အား prompt ပေါ်တွင် ရောက်ရှိနေကြောင်းသေချာပါစေ။    သေချာစေရန် Terminal/prompt window အား click ၍ cursor အား focus လုပ်ပါ၊ cursor လေး blink ဖြစ်နေပါက commands များရိုက်ရန် အဆင့်သင့် ဖြစ်နေပါပြီ။

2. Very basic and first command

  • whoami     - check user name - လက်ရှိ အသုံးပြုနေသော user အားစစ်ဆေးရန်
  • pwd           print working directory ယခုရောက်ရှိနေသော folder path အား စစ်ဆေးရန်
  • ls                -  lisfolder ထဲရှိ file list ကို ပြသရန် output ထုတ်ရန်
  • cd               - change directory  - folder လမ်းကြောင်းပြောင်းရန်
  • cd ..            change directory to backward (upper level of current directory) - လက်ရှိနေရာမှ အပြင်ပြန်ထွက်ရန်
  • cd home     change directory to home (your home directory in Linux system)  - home directory သို့ ပြန်သွားရန်
  • cd ~            - change directory to home (your home directory in Linux system) - home directory သို့ ပြန်သွားရန်
  • cd /             - root (very root level of your drive on Linus)  - Linux file system ရဲ့ root directory သို့သွားရန်

3. Creating folder and file

3.1. Creating folder 

  • mkdir         - makdirectory (eg. mkdir folder_name, mkdir dir1 dir2 dir3)
    • mkdir dir1 dir2 dir3 (create multiple folder by one command)
    • mkdir -p dir4/dir5 (create parent and sub folder by one command) note: -p mean parent
    • -p character means operation or switch (-p is shortcut for parent short word)
    • --parent --verbose ( can be type command like --(double hyphen) for long word)
    • mkdir "another folder" - use " character to create folder name with space.

3.2. Creating files using redirection

  • ls > output.txt
  • cat output.txt
  • echo
    • echo "This is a test"
    • echo "This is a test 1" > text1.txt
    • echo "This is a test 2" > text2.txt
    • echo "This is a test 3" > text3.txt
  • cat
    • cat text1.txt text2.txt text3.txt
    • cat text?.txt
    • cat text*.txt
    • cat t* > combined.txt
    • cat combined.txt
    • cat t* >> combined.txt
    • echo "I've appended a line" >> combined.txt
    • cat combined.txt
    • less combined.txt
  • echo "Lower Case" > a.txt
  • echo "Upper Case" > A.TXT
  • echo "Mixed Case" > A.txt

4. Moving and Manipulating files

5. A bit of plumbing

6. The command lines and the superuser

7. Hidden files

8. Conclusion


Monday, September 12, 2022

Java Environment Setup and Installation on Ubuntu

Java Environment setup in Ubuntu

 

Install OpenJDK on Ubuntu

1. Update package and check JDK version

    i. Package ကို update လုပ်ခြင်း

        $ sudo apt update

    ii. JDK version အား စစ် ေဆး ခြင်း

        Ubuntu တွင် jdk install လုပ်ထားချင်းရှိမရှိ စစ်စေးရန် Terminal အားဖွင့်ကာ အောက်ပါ                                        command ဖြင့်စစ်စေးပါ။

        java -version



2. Install Java JRE/JDKs

    i. Default JDK ကို install လုပ်ရန် အောက်ပါ command များဖြင့် run ပါ။ အချိန်ကာလပေါ်မူတည်၍ jdk version များ အပြောင်းအလဲရှိနိုင်သည်။

    $ sudo apt install default-jre              # version 2:1.17-74, or
    $ sudo apt install openjdk-17-jre-headless  # version 17.0.9~6ea-1
    $ sudo apt install openjdk-11-jre-headless  # version 11.0.20+8-1ubuntu1
    $ sudo apt install openjdk-19-jre-headless  # version 19.0.2+7-4
    $ sudo apt install openjdk-20-jre-headless  # version 20.0.2+9-1
    $ sudo apt install openjdk-21-jre-headless  # version 21+35-1
    $ sudo apt install openjdk-22-jre-headless  # version 22~16ea-1
    $ sudo apt install openjdk-8-jre-headless   # version 8u382-ga-1ubuntu1
 

tun-myat@tun-myat-ThinkPad-X1-Carbon-6th:~$
 

        sudo apt install default-jdk


    
    ii. JDK version အား ပြန်လည်စစ် ဆေးပါ 

        $ java -version
    
    လက်ရှိ အချိန်အရ Ubuntu တွင် default jdk verison မှာ jdk 11 အဖြစ်သတ်မှတ်ထားပါသည်။
    (နောက်ပိုင်းတွင်အပြောင်းအလဲရှိနိုင်သည်။)

3. Manage JDKs/JREs Version

    i. Default JDK version အား အောက်ပါ command ဖြင့် ပြင်ဆင်သတ်မှတ်နိုင်သည်။

        $ sudo update-alternatives --config java

    ii. Default JDK version အား selection number အား ရိုက်ထည်၍  ပြောင်းလဲသတ်မှတ်နိုင်သည်။ ထိုနောက်         java version အားပြန်လည် စစ်ဆေးပါ။ မိမိရွေးချယ်ထားသော jdk version တွင် * ဖြင့် ဖော်ပြနေလိမ့်မည်။

3. Setting the JAVA_HOME environment variable

    i. Install လုပ်ထားသော JDK versions များ ကို စစ်ဆေးရန် အထက်တွင် အသုံးပြုခဲ့သော့ command ဖြင့် ပြန်လည်စစ်ဆေးပေးပါ။

    $ sudo update-alternatives --config java

    






    ii. 

Install IDE

- Eclipse

- VS Code

- Sublime Text


Install Database

- MySQL

- PostgreSQL


Install DevOps Tools

- Git
- Docker



Monday, September 5, 2022

About Blog

ဒီ Blog ကို ပြုလုပ်ရသော ရည်ရွယ်ချက်မှာ programming ကို လေ့လာသူများ စိတ်ဝင်စားသူများ အနေဖြင့် တချို့သောသိသင့်သိထိုက်သည့် အရာများကို လွယ်လင့်တကူ တိုတိုရှင်းရှင်းဖြင့် မြန်မာလို သိရှိနိုင်စေရန် ကျွန်ုပ်ကိုယ်တိုင် သေချာမသိသေးသော အရာများကို လေ့လာမှတ်သားရင်းဖြင့် ဝါသနာတူသူများ အား ဝေမျှလိုသော ရည်ရွယ်ဖြင့် ဤ blog ကို ရေးသားခြင်းဖြစ်သည်။ 

ကျွန်တော် ကိုယ်တိုင် တချို့သော မသိသေးသည့် အရာများကိုလေ့လာရင်း ပြန်လည်ဝေငှချင်းသာ ဖြစ်သောကြောင့် မပြည်စုံခြင်း လွှဲမှားခြင်းများ ရှိပါက ‌မှတ်ချက်ပေး၍ ဝေဖန် အကြံပြုနိုင်ပါသည်။

Thursday, September 1, 2022

Email Vs Gmail

Mobile Phone(Smart Phone) လို့ပြောရင် Apple, Samsung, Huawei, Xiaomi,... စသဖြင့် brand မျိုးစုံရှိပေမဲ့... iPhone လိုပြောရင်တော့ Apple က ထုတ်တဲ့ Smart Phone ဆိုတာ လူတိုင်းနီးပါး နားလည်ကြပါတယ်... အဲ့လိုပါပဲ Gmail ဆိုတာ Google က ထုတ်ထားတဲ့ Email တစ်ခုပါပဲ....

Email ဆိုတာ အီလက်ထရောနစ် စာပို့ နည်းပညာ အခေါ်အဝေါ်တစ်မျိုးသာဖြစ်ပြီး Gmail ဆိုတာကတော့ brand တစ်ခုက ထုတ်ထားတဲ့ Email စနစ်တစ်ခုပါ။ အလားတူ Gmail ကဲ့သို့ Microsoft ရဲ့ Outlook Mail, Yahoo ရဲ့ Yahoo Mail စသည်ဖြင့် ထုတ်လုပ်တဲ့ brand ပေါ်မူတည်ပြီး အမျိုးမျိုးကွဲပြားပါတယ်။

Brief Myself

Throughout my extensive 7+ years in the IT industry, I have transitioned from a service engineer role to programming and currently hold the senior software developer position at a software house. I am particularly fascinated by the potential of automation and IoT and envision their increasing prominence. I focus on contributing to Industrial 4.0 advancement, encompassing automation, IoT, embedded systems, and AI. Additionally, I am passionate about developing intelligent and innovative systems for smart cities and the automotive sector. My ultimate goal is to work in automation environments and play a role in advancing cutting-edge technologies.

Monday, August 29, 2022

Learn Ubuntu Commands

Essential Ubuntu Basic Commands

Linux basic command များ အကြောင်းကို Ubuntu အသုံးပြုပြီး လေ့လာသွားမှာ ဖြစ်ပါတယ်။ ကျတော်ကိုယ်တိုင် Ubuntu 22.0.04 ကို စမ်းသုံးကြည့်ရင်းလေ့လာထားတာများကို noted down ချရေးထားသည်များကို မျှဝေထားတာဖြစ်ပါတယ်။

1. Open the Terminal (Shortcut Ctrl+Alt+T)

Linux  command များ ရိုက်ရန် terminal/prompt ဖွင့်ရန် application icon မှ တဆင့် search box မှ terminal လို့ ရိုက်ရှာ၍သြော် လည်းကောင်း သို့မဟုတ် shortcut အနေဖြင့် Ctrl+Alt+T နှိပ်၍ ဖွင့်နိုင်သည်။

Click the Terminal prompt to make sure the cursor starts to type some command.

အခြေခံ command များစတင်ရိုက်နိုင်ရန် cursor အား prompt ပေါ်တွင် ရောက်ရှိနေကြောင်းသေချာပါစေ။    သေချာစေရန် Terminal/prompt window အား click ၍ cursor အား focus လုပ်ပါ၊ cursor လေး blink ဖြစ်နေပါက commands များရိုက်ရန် အဆင့်သင့် ဖြစ်နေပါပြီ။

2. Very basic and first command

  • whoami     - check user name 
  • pwd           - print working directory 
  • ls                lis
  • cd               - change directory 
  • cd ..            - change directory to backward (upper level of current directory) 
  • cd home     - change directory to home (your home directory in Linux system)
  • cd ~            - change directory to home (your home directory in Linux system)
  • cd /             - root (very root level of your drive on Linus)
whoami        - လက်ရှိ အသုံးပြုနေသော user အားစစ်ဆေးရန်
pwd              ယခုရောက်ရှိနေသော folder path အား စစ်ဆေးရန်
ls                  folder ထဲရှိ file list ကို ပြသရန် output ထုတ်ရန်
cd                 - folder လမ်းကြောင်းပြောင်းရန်
cd ..              - လက်ရှိနေရာမှ အပြင်ပြန်ထွက်ရန်
cd home       - home directory သို့ ပြန်သွားရန်
cd ~              - home directory သို့ ပြန်သွားရန်
cd /               - Linux file system ရဲ့ root directory သို့သွားရန်

3. Creating folder and file

3.1. Creating folder 

  • mkdir         - make directory (eg. mkdir folder_name, mkdir dir1 dir2 dir3)
    • mkdir dir1 dir2 dir3 (create multiple folder by one command)
    • mkdir -p dir4/dir5 (create parent and sub folder by one command) note: -p mean parent
    • -p character means operation or switch (-p is shortcut for parent short word)
    • --parent --verbose ( can be type command like --(double hyphen) for long word)
    • mkdir "another folder" - use " character to create folder name with space.

3.2. Creating files using redirection

  • ls > output.txt
  • cat output.txt
  • echo
    • echo "This is a test"
    • echo "This is a test 1" > text1.txt
    • echo "This is a test 2" > text2.txt
    • echo "This is a test 3" > text3.txt
  • cat
    • cat text1.txt text2.txt text3.txt
    • cat text?.txt
    • cat text*.txt
    • cat t* > combined.txt
    • cat combined.txt
    • cat t* >> combined.txt
    • echo "I've appended a line" >> combined.txt
    • cat combined.txt
    • less combined.txt
  • echo "Lower Case" > a.txt
  • echo "Upper Case" > A.TXT
  • echo "Mixed Case" > A.txt

4. Moving and Manipulating files

5. A bit of plumbing

6. The command lines and the superuser

7. Hidden files

8. Conclusion



FinTech

 "FinTech" is a term that combines "financial" and "technology" and refers to the use of technology to provide...