Computer science is transforming industries — and igniting a renaissance in the creating of things. Soon it will be integrated into every aspect of human life. So if you are thinking of doing something crazy, something what we call a “Startup” of your own, then you should understand the meaning of being a coder and what it takes to be the one.

So before we go ahead with the discussion we should understand who a coder really is and how he/she is different from a hacker, a programmer, a data scientist and a developer:

These words might all mean the same thing to you. Perhaps you hear geek, nerd, and dweeb, but we all know these have very important differences. Knowing the differences also can give you a sense of how deep you want to go on your coding adventure.

§ Coders — Can pretty much figure out. It’ll work, but it won’t be pretty.

§ Hackers — usually low level folks, skillful, with detailed understanding of some area deeply, often scary with deep impact.

§ Programmer — Write code and understand algorithms. Often work alone and well.

§ Developer — Are the best generalists, can use lots of different systems and languages and get them to talk to each other. Are true and broad professionals, work with people, and communicate well.

§ Computer Scientist — Able to prove how computers work, at a theoretical level. Are usually math people too.

If you are closer to one of these already you can get an idea of which direction to head.

The current environment of whole IT Sector whether larger corporates or small scale startups all want people who must be an all-rounder of all skills whether it should be coding, networking, marketing, designing or data mining. They want people who could work around in any situation without wasting anytime. In order to become such kind of personality you have to be clear with the basic terminologies of each skillset so that you won’t find yourself in a middle of sea without any maps. So let’s begin the fun with few things that should have clear picture on your mind:

Client vs Server Side

The client-side environment used to run scripts is usually a browser. The processing takes place on the end users computer. The source code is transferred from the web server to the users computer over the internet and run directly in the browser. The scripting language needs to be enabled on the client computer.

Client-side Environment

Client-side refers to operations that are performed by the client in a client–server relationship in a computer network.

Typically, a client is a computer application, such as a web browser, that runs on a user’s local computer or workstation and connects to a server as necessary. Operations may be performed client-side because they require access to information or functionality that is available on the client but not on the server, because the user needs to observe them or provide input, or because the server lacks the processing power to perform the operations in a timely manner for all of the clients it serves. Additionally, if operations can be performed by the client, without sending data over the network, they may take less time, use less bandwidth, and incur a lesser security risk.

When the server serves data in a commonly used manner, for example according to the HTTP or FTP protocols, users may have their choice of a number of client server-side operation) and sends it back to the client. The client then analyzes the data (a client-side operation), and, when the analysis is complete, transmits its results back to the server.

Server-side Environment

The server-side environment that runs a scripting language is a web server. A user’s request is fulfilled by running a script directly on the web server to generate dynamic HTML pages. This HTML is then sent to the client browser. It is usually used to provide interactive web sites that interface to databases or other data stores on the server.

This is different from client-side scripting where scripts are run by the viewing web browser, usually in JavaScript. The primary advantage to server-side scripting is the ability to highly customize the response based on the user’s requirements, access rights, or queries into data stores.

The server-side environment also facilitates scripts and data transfer.

What are Sessions?

In telecommunication, a session is a series of interactions between two communication end points that occur during the span of a single connection. Typically, one end point requests a connection with another specified end point and if that end point replies agreeing to the connection, the end points take turns exchanging commands and data (“talking to each other”). The session begins when the connection is established at both ends and terminates when the connection is ended.

In the standard industry communications reference model, Open Systems Interconnection (OSI), the transport layer that contains UDP and TCP manages the setting up and taking down of the association between two communicating end points that is called a connection. A connection is maintained while the two end points are communicating back and forth in a conversation or session of some duration. Some connections and sessions last only long enough to send a message in one direction. However, other sessions may last longer, usually with one or both of the communicating parties able to terminate it. For Internet applications, each session is related to a particular port, a number that is associated with a particular upper layer application. For example, the HTTP program or daemon always has port number 80. The port numbers associated with the main Internet applications are referred to as well-known port numbers. Most port numbers, however, are available for dynamic assignment to other applications.

Server Clustering

A server cluster is a group of independent servers running and working together as a single system to provide high availability of services for clients. When a failure occurs on one computer in a cluster, resources are redirected and the workload is redistributed to another computer in the cluster. You can use server clusters to ensure that users have constant access to important server-based resources.

Server clusters are designed for applications that have long-running in-memory state or frequently updated data. Typical uses for server clusters include file servers, print servers, database servers, and messaging servers.

Cluster provides a higher level of availability, reliability, and scalability than can be obtained by using a single computer. It guards against specific types of failure:

  • Application and service failures, which affect application software and essential services.
  • System and hardware failures, which affect hardware components such as CPUs, drives, memory, network adapters, and power supplies.
  • Site failures in multisite organizations, which can be caused by natural disasters, power outages, or connectivity outages.

What’s a browser cache?

“Clear your browser cache” is the first response that tech people often give when you encounter web page problems. We’ll look at why that is and how to clear the cache.”

The browser cache appears in more answers than questions, but it often causes even more questions.

The cache exists because of a basic assumption made by browser designers: the internet is slow. More accurately, your internet connection is slower than your computer.

What that means is that it’s faster to get something from your hard disk than it is to get it from the internet. Even with today’s faster internet speeds, that still holds very true.

Browser designers noticed that most web sites had many of the same elements on multiple pages. For example, if you look at Hellomeets site, you’ll see the Hellomeets logo at the top. It’s actually at the top of every page on the site. So the thinking was, why download the same logo for every page? Why not just download it once and then keep it so we can use it again?

That’s what the browser cache is for. The cache is nothing more than a place on your hard disk where the browser keeps things that it downloaded once in case they’re needed again.

When you first visit a page on this site, the browser downloads the logo into the cache, and then displays it on the page you’re viewing. For each additional page you visit, the logo doesn’t need to be downloaded again; as long as the same logo is displayed, it’s already on your hard disk.

The cache has a size limit, which you can usually configure. When the cache gets full, the items in it that haven’t been used in a while are discarded to make more space.

Naturally, there’s a little more to it than that. For example, there are ways for me to update the logo on my site and have that override whatever is in your cache, so what you see is always up-to-date. But by and large, that’s all it is: a place to keep things locally so you don’t have to download the same things over and over again.

And it’s all transparent to you.

Until something breaks, of course.

Some of our upcoming events. We look forward to meeting you and building friendships.

Makeup Workshop | 13th November | 11 am to 1 pm

Wedding Styling meetup | 12th November | 11 am to 1 pm

HelloHackers | 12th November | 5 pm to 7 pm

Tea With Strangers |12 November | 9am to 10:30 am

Beer Quiz Venue | Date | Time — To be announced

Chess Meetup | 26 November | 11am to 1pm

Blog Credits : Vaibhav Gupta, Community Builder at HelloMeets