My D's P's L's Js _ Day10 _ Git & GitHub {7}; CS50'sT {4}; Other Developments {10}.

My D's P's L's Js _ Day10 _ Git & GitHub {7}; CS50'sT {4}; Other Developments {10}.

My Daily's Programming's Learning's Journeys

·

6 min read

\ Let's Begin ! \

Git and GitHub {7} _

Creating and Removing Files and Folders :

  • A shell(Terminal) is a command-line interface (Terminal) that allows users to interact with the operating system by entering commands.

    • The shell acts as an intermediary between the user and the operating system, facilitating the execution of various tasks and operations.
  • Comand prompt (cmd.exe) on windows and Bash (ubuntu etc) on linux, are the examples of OS specific Shells.

  • We are'nt able to run the Git commands directly on the Command prompt of the windows. (nowadays after tweeking some settings will).

  • Source tree : Rather using CLI, using GUI is Using user friendly interface.

    • SourceTree is a free Git and Mercurial client for Windows and Mac that provides a graphical interface for managing and interacting with your repositories. It allows you to visually track changes, commit, push, pull, and perform other version control operations easily. SourceTree simplifies the process of working with Git and Mercurial repositories by providing a user-friendly interface rather than using the command line. Some Basic #Command_Prompts : -ls: List command : lists all of the files that are inside the folder (Directory) you are presently working in.
  • pwd : Present Working Directory command.

  • mkdir : Make Directory : mkdir FolderName : create a directory with the FolderName you want.

  • cd : Change Directory : cd FolderName : Your pwd will be FolderName.

    • cd .. : Moving back one folder out off present one to previous one.
  • rm -rf FolderName : to Completely (Forced) Remove the FolderNmae folder with it's whole contents.

    • here -rf is a Flag. (the added flag).
  • touch : to create a new file with its extension.: touch FileName.Extension.

  • rm FileName.Extension : to Remove that file. (No need extra flag).

  • In windows command prompt ie. cmd.exe. after activating bash, all bash shell commands can be run successfully.

  • but in windows power shell the touch command prompt of bash shell is not recognizable.

    • for that it has saperate command line which is echo $null >> FileName.Extension.

HarvardX CS50T{3}_

CS50's Understanding Technology.

Resource Or Reference : HarvardX CS50T

Internet(2) :

#Ports:

  • Per TCP, the world has standardized numbers that represent different services

  • If 5.6.7.8 is Google’s IP address, 5.6.7.8;80 (port 80) lets use know that we want a webpage

    • 80 means http (hypertext transfer protocol)

      • The language that web servers speak
    • Google will send the request to their web server via http

  • Many websites use secure connections with SSL or HTTPS, which uses the port 443

  • Email uses port 25

  • Other ports exist as well

#Protocols:

  • Protocols are just sets of rules

    • Humans use these all the time, such as the protocol for meeting people: handshakes
  • When a request is made to Google for an image, HTTP tells Google how to respond appropriately

#UDP:

  • User Datagram Protocol

    • Doesn’t guarantee delivery

    • Used for video conferencing such as FaceTime

      • Packets can be dropped for the sake of keeping the conversation flowing
    • Used anytime you want to keep data coming without waiting for a buffer to fill

#IPs in More Detail:

  • IP addresses are limited

    • In the format #.#.#.#, each number is 8 bits, so 32 bits total

      • This yields 232 or about 4 billion possible addresses

        • We’re running out of addresses for all computers
    • Current version of addresses is IPv4

    • Moving towards IPv6

      • Uses 128 bits, yielding 2128 possible addresses
  • How do you find your IP address?

  • On a Mac, go to system preferences an poke around a bit

  • Private addresses exist

    • 10.#.#.#, 192.168.#.#, or 172.16.#.#

    • Only with special configuration can someone talk to your computer

    • Your personal device is not a server, so people should not need to access them directly

      • Your device needs to request data from servers
    • Even email is stored on a server such as Gmail and your device makes a request to that server to access that email

  • Looking at advanced settings…

  • Subnet mask is used to decide if another computer is on the same network

  • Router (aka Gateway) has its own address

    • Routs data in different directions
  • On windows:

- Shows DNS servers as well

#Routers:

  • Routers have bunches if wires coming and going out of them

    • They have a big table with IP addresses and where data should be routed to get to that destination (its RAM?)

      • Often, the data is routed to some next router
  • Routers purpose is to send data in the direction of a destination

    • The next router will send it to another until it reaches a destination

  • The internet is a network of networks (with their own routers)

    • Often multiple ways to go from A to B

      • Based in US Military logic to prevent downtime if a particular router goes down

      • When multiple packets are sent, like cat.jpg from Google, they can each take a different path, still getting to their destination eventually

        • Sometimes the internet is busy and the quickest path changes

#Traceroute:

  • How long does it take for this process of data transfer to take on the internet?

  • Traceroute is a program that sends packets to each router on a path to a destination, reporting the time it takes to reach that router

  • From Sanders Theatre to Google.com:

Image source : CS50T

  • From Sanders Theatre to Google.com

    • 1-2: A few unnamed routers at Harvard

    • 3-4: More Harvard routers

    • 5-6: Level3 is a ISP

    • 7+: The routers are denying the request

Other Developments {10} _

  • Other Notes.

    • Notes_

      • Hii
    • # Programming Language Vs. Scripting Language_

      • The main difference between a programming language and a scripting language is the way they are used and the level of control they provide.

      • Programming Language: A programming language is a formal language designed to communicate instructions to a computer or computing device to perform specific tasks. These languages are generally more complex, have a strict syntax, and are used to build large, complex, and standalone applications or software. Examples of programming languages include Java, C++, Python, and C#. Example: Let's take Python as an example. Python is a popular programming language that is used to create a wide range of applications, from web development and data analysis to machine learning and automation. With Python, you can write code that can perform complex operations, handle data structures, and even create graphical user interfaces (GUIs).

      • Scripting Language: A scripting language, on the other hand, is a language that is used to automate tasks or control the behavior of a larger system or application. Scripting languages are typically simpler and more focused on specific tasks, such as system administration, file manipulation, or web automation. They are often used to write "scripts" that are executed by a host application or environment. Examples of scripting languages include Bash (for Linux/Unix shell scripting), PowerShell (for Windows system administration), and JavaScript (for web scripting). Example: Let's take Bash (Bourne-Again SHell) as an example. Bash is a scripting language that is widely used in Linux and Unix-based operating systems. With Bash, you can write scripts that automate various system tasks, such as file management, network configuration, and system monitoring. These scripts are typically shorter and more focused on a specific task compared to a full-fledged programming language.

      • In summary, the main difference is that programming languages are designed for building complex, standalone applications, while scripting languages are used for automating specific tasks or controlling the behavior of larger systems. The level of control and complexity is generally higher in programming languages compared to scripting languages.