A running program (a process) on a networked computer that accepts requests from programs running on other computers to perform a service and responds to appropriately.
That definition doesn't really fit the typical usage of the word by a sysadmin. By that definition almost every and any computing devices is a server. All your windows computers are servers, your mobile phones are servers, home routers are server and so on.
I don't think there is or can be a single definition that perfectly defines what fits on sererfault. Like obscenity, this kind fits in the I know it when I see it.
If I was to try and describe a server here are some of the criteria that I think may apply.
- A server is not a piece of software running meant to serve a single person at the console.
- Most of the time a server is not running on a desktop operating system e.g. Windows Vista, 7, any Linux with Gnome/KDE/GUI installed.
- A server is not a computer using for desktop applications. Unless it is serving many users at the same time (ie remote desktop services).
- A server may be a computer providing a service for many users like file, print, email, and database.
What are "many" networked PCs? Right now, I have 4 PCs on my network. I know for a fact that 4 PCs is not many. But is 5 many? 10? 100?
I think the quantity is not that important, and the question subject is more important.
For example I think a question about how to manually install MS office on 25 computer really doesn't belong here. But a question about how to deal with key management does. A question about how to automatically deploy office with GPOs, or something else belongs here.
A question about how to use MDT, ghost, partimage to deploy an OS image does belong here even if you have only a couple computers.
But where you you draw the line at scripting to programming?
I think questions about the programming language, (ie how do you define a function, how do you use a control structure) do not belong here.
The scripting questions that do belong in my opinion are more about looking for a code snippet to perform a specific task to many computers.
Yeah. That's why it's real important that the SF FAQ defines "server" as it means to system administrators (to account for people like me who come here from StackOverflow asking about things that us CS/SE people consider to be servers) and then get SO and SU to change their use of "server" in their FAQs so people don't get confused and wander here when they should be someplace else.
Personally, I think it would be a bad idea to get to nit picky and legalistic about what is on-topic in the FAQ. I think the community moderation and migration works a lot of the time.
If we get overly precise in our definitions we will most likely discourage questions that are on topic, but don't exactly fit the description. Or people will just ignore the description because it is too verbose.
If a new person wants to know they could take 5-15 minutes and review the top ~20-100 questions sorted by votes to get an idea about what is going on. It tends to be far easier to just look at past questions and see what the community allows then it is to try and work out the topic from a short description. But even looking at past questions isn't entirely perfect since some questions where allowed in the startup of the site that would probably be closed/migrated today.