Computer Science

Siva
3 min readSep 19, 2020

Programming Languages:

To perform a certain task, we need to instruct computers. As the computer does not understand the day to day language of humans, we created programming languages which follow certain rules and syntax to represent the instructions. As we already know that computers only understand 0’s and 1’s, here is the part of the compiler which will convert the source code we have written to binary language to make the computer understand. There are many programming languages out there and it is up to us to decide what to choose based on the requirements, but the fundamental concepts of any language out there is the same.

Internet Technologies:

Let’s discuss those things that are enabling us to communicate across the internet between different websites and many more. For communication between two endpoints, physically we have post and couriers, but virtually it is the internet that is in between and it follows certain protocols to make that happen.
DHCP:
• This protocol makes it so that when a computer you have — a phone, a laptop, etc — it can announce itself and ask for an address
• The protocol says that these devices will be assigned a numeric address, much like our physical addresses, except unlike our physical addresses (like 123 Main St), this looks like #.#.#.#, where each # is between 0 and 255
DNS:
• When my computer sends out a request, it has to use this IP address to make sure our data goes to the proper place
• However, we, as humans, don’t really read addresses like 8.8.8.8 or 192.168.0.1
• There is a system to “translate” the human-readable domain names (google.com, facebook.com, cs50.io) to their IP address counterparts
TCP:
• Guarantees with high probability that data gets to where it needs to go
• Sometimes, computers drop packets (data) — they get more data than they can, or they miss it entirely
• TCP allows computers to know if they should resend data
UDP:
• The feature here is to not guarantee redelivery.
• Still fairly common and appropriate
• For example, video streaming, video conferencing, live communication — we don’t want retransmission, we would rather stay up to date chronologically
HTTP:
• A very common protocol, which you’ve likely seen before — http://example.com
• HTTP is a sort of virtual envelope, which allows computers to communicate with one another, specifically in a webpage context (so between web browsers and servers)

Web Development:

To design any webpage, we need a language called HTML. This is a markup language but not a programming language. The structure is represented inside the tags and there are different types of tags to perform the different functions for their use and have a specific syntax. Here, we can do many exciting things with images integrating to a website, graphical representations, and many more interesting things that can be done to make our website look much beautiful.

Technology Stacks:

Popularly known as full-stack which includes both front-end and back-end development. Several technologies are involved in development.
The frontend is completely user faced and developers design webpages for user interaction with the website. Popular languages such as HTML, CSS, javascript are used for frontend development involving different frameworks. When designing for mobile devices, Android generally uses Java, and iPhones generally use Objective-C or Swift
Backend is where all the storage of information, processing of information is done. Languages like python, java, etc are used to build the backend, and SQL (Structured Query Language) is a special language whose main purpose is to interact with the database and perform the necessary actions. All the data that is stored in SQL databases is in the form of tables, follows a defined structure and there are relations between tables to communicate with each other.

Cloud computing:

Cloud computing is the availability of computer resources such as storage facility and computing power remotely rather than having them physically at our location. There are many cloud service providers out there, some are Amazon, Microsoft, IBM. The main advantage of the cloud service is to pay as we go which is we need to pay for what we use and it also takes care of all the maintenance. Some of the services provided through the cloud are IAaS (Infrastructure As a Service), Virtual machines, SaaS (Software as a Service), PaaS (Platform as a Service). Depending on our needs and requirement we can choose what to take up.

--

--