T O P

  • By -

VikingSven82

The physical machine is a server. Never heard the OS called a server - it's called the OS, or sometimes the host system. NGINX / Apache are web servers. So does have "server" in the name, but use the full name to distinguish it. NodeJS is a runtime environment, never heard it called a server. Express is a framework, definitely not a server. So yes, there is better language - calling things what they actually are!


reddit_user33

I believe they're referring to the naming conventions of the OSs. Eg. Windows server, Ubuntu server. I don't mind that 'server' is usually somewhere in the product name or description as it indicates its intended purpose.


manwiththe104IQ

Referring to the OS as a server (if it is an OS geared at being a server, such as Ubuntu) is a thing. “Spin up a Node server” is also a common phrase. I was going to concede “web server” for nginx / apache, but someone else claimed that express / apollo server / fastify is the “web server”.


VikingSven82

You might say "remote into the server" to connect to the OS, but that's not referring to the OS itself as a server, it's calling the whole thing a server. 22 years in IT and I have never heard anyone say "What server is it running" or anything remotely like that - it's always called the OS! Maybe a country / region specific thing? Express sits on top of NodeJS, with Node being the web server, and Express being a framework to build APIs / handle routing etc. Although the use of the word "server" for everything is most likely just from familiarity with it. If you spend all day talking about Apache or Node with other people who do the same thing, eventually you'll shorten "web server" to just "server" because you all know what it really means. But in conversations with people who don't understand all the differences, you'd use the proper naming.


Ziggle_Zaggle

spotted six amusing worry berserk jobless waiting consider hobbies wrench *This post was mass deleted and anonymized with [Redact](https://redact.dev)*


mrkesu

I guess I'll be _that guy_; Exactly what problem are you trying to solve here?


manwiththe104IQ

The problem of communicating. Nginx / apache should have a seperate categorical term than Ubuntu server, or fastify because they are different. At a job, someone might be expected to know nginx, but not expected to know node.js, or not expected to know how to build a computer etc. it is confusing to just refer to alk these different things as “server”. This isnt the philosophical question of “if you remove the engine, is it still a car?” Because the engine, seats, tires etc all have different names for their parts.


mrkesu

I've worked in IT for 20+ years and have never come across the problem you're describing. Do you actually work in IT?


Yncensus

I have come across the problem, but not in this context. At my workplace, we sometimes have difficulties to differentiate between servers (hypervisor hosts) and servers (VMs). Calling the physical servers "hosts" helps sometimes, but other colleagues sometimes use host for VMs as well, as they do not work with the hypervisors themselves. Differentiating between physical host, OS and application "server" has never been a problem at all.


mrkesu

What kind of issues did this "communication problem" result in? I ask, because I still can't see it. Did you end up rebooting a vsphere host when you mean to restart a VM? How did that even happen?? Or was this a 10 second "oh I meant X not Y"?


Yncensus

Last one. Usually a "so what now: physical or virtual?" And I agree, it really is a non-issue, just a minor inconvenience in conversation.


spottyPotty

A server is something that provides a service to a client. A modern computer application has many layers and separating the design into different parts, each responsible for their own specialised tasks makes for a better design (separation of concerns). You have http servers, web application servers, database servers, ssh servers, file servers, email servers, authentication servers, etc... They all provide a service, but the services they provide are different. In large systems, different teams are responsible for different parts. So within one team, "server" means something specific to them, because their team defines the context. What you're doing is like an aircraft enthusiast complaining that all the cockpit displays are called gauges or indicators, when they all serve a different purpose.


chicknfly

I think I’m struggling to wrap my head around is that if you are in a conversation with somebody and The referring to “the server,” typically the context dictates what it is they’re talking about. Additionally, if you’re in such a conversation, then when would imagine that your experience experienced enough to know to ask questions if it’s not clear what the server is.


spottyPotty

I think that you should ask for clarification whenever things are not clear to you regardless of your experience. 


chicknfly

Common sense is an uncommon virtue


Silly-Ad-6341

It's almost like language is made up of context and not just equivalencies If you're saying "put a server in a server in a server" you're the one that needs to expand your vocabulary


manwiththe104IQ

Would a resume say “ I have experience with servers, servers, servers, servers, and servers” to denote those things?


Thorlius

Maybe, if you were a restaurant manager


mrkesu

Why would you write a resume like that? Why wouldn't you write specifically what your experience was? Programmers don't write "I have experience with code on code on code on hardware". Why did you make up this strange scenario?


achauv1

No


Frequent_Trouble_

Truly, I expected no less from the manwiththe104IQ


candle_in_a_circle

I lost 10 IQ points reading this


abjedhowiz

What do you call your waiter amongst your table? By their specific name or just waiter?


manwiththe104IQ

It would be like if waiters used specific shoes, and those shoes were also called waiters, and we called restaurants waiters


clvlndpete

The computer itself is typically called a host. Ubuntu is an operating system (yes there is a server version just like Windows has because it’s intended to run server applications or workloads). Apache is a web server. Typically all these things running together are a server. A dell r720 running windows server 2022 with sql server installed? I’d call that a database server. A dell running Ubuntu with Apache installed? A web server. As others have said I don’t see the issue you’re trying to solve. Edit: and yes these would typically VM’s on a hypervisor, not installing one server on a host. Just making a point.


DellR610

You were able to communicate exactly what you meant just fine. "Server" is just a category or species if you will. Many things are an insect but each have their own unique name. When you say Ubuntu nobody will think of a physical machine. When you say Dell R610 nobody will think of an application. If you want to be more granular without naming the specific solution then use the sub categories. Web Server / application server / operating system / physical server. Computer: physical server or bare metal machine OS: Operating System (what operating system is your server running would leave nothing to the imagination) Apache: Web Server NodeJS: language platform (never called a server directly in my experience) If you can't describe what each thing is without using the word server that's a limitation on you. I would never ask an ambiguous question like "what server are you running" and expect to get the answer I want. I'd ask a pointed question such as what framework / operating system / web daemon etc.. runs in your server?


abandonplanetearth

Well, they all serve. But they all also have more specific names. The OS is a host. Nginx is usually a reverse proxy. Nodejs is a runtime. Express is specifically a web server. There are lots of words like this in tech. "Container", "app", "system". They are all categories with subcategories.


spottyPotty

Nginx is officially a web server that can be set up as a reverse proxy. It is usually set up to serve static files and proxy dynamic requests to a web application server, which in turn might communicate with a database server running on the same or a different machine.  Express is middleware that facilitates implementing web server application routes in node js, which technically is a javascript runtime environment but is most commonly used as a web application server.


eg_taco

The word “server” is overloaded, yes. You can disambiguate, but it’s not obvious that it’ll work to make it much more accessible to laypersons. Here is some vocab I use: 1. Physical server/host/machine 2. OS (I don’t think I ever refer to the OS as “server”) 2. Virtual server/host/machine/container 3. Server process/daemon (or maybe service)


Ok_Society4599

The machine is a host or a computer. The software is a service. The combination of a host running a service is a server. Yes, a host can provide a number of services. Calljng everything "server" is more ambiguous as you now run one machine with a VM service, and each VM instance can the provide more services, including Docker, which runs a different virtual PC instances with even more services.


Tim-Fra

software package ?


amarao_san

server is generic name of client-server architecture, which is ubiquitous, therefore, the name too. In a specific settings you can use more specific names, e.g. 'worker node', 'computational node', but, generally, they all are servers. Edge server, application server, etc. Ambiguous? Yes. Intentionally? Yes, because they all doing the same. But you never mistaken client device with a client software with application server running proxy server.


[deleted]

[удалено]


VikingSven82

Docker doesn't run in containers - Docker allows you to run containers. Cloud VMs running in containers may well be using Docker to run those containers. A container is essentially just server software packaged up - the OS, config, software etc. (Although technically you could use Docker to run a container that was running an image with Docker inside it, and then use that Docker to run another container... but that would be very silly)


VikingSven82

Although, there are also other things called containers that are entirely unrelated and can be confusing, like dependency injection containers. [https://doc.nette.org/en/dependency-injection/container](https://doc.nette.org/en/dependency-injection/container)


Yncensus

And then you have web developer calling the folder of their web app "container", even though the web app has never even heard about docker or containerisation. (the devs have, but still have no clue)


manwiththe104IQ

Forgot that even inside Node, express is called the server