# What's the point of the tag [programming]?

On the main site we have the tag , which has this description

Computer programming (often shortened to programming or coding) is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages.

The purpose of programming is to create a set of instructions that computers use to perform specific operations or to exhibit desired behaviors. The process of writing source code often requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms and formal logic.

There is no usage guideline.

I feel this tag is both redundant and very broad; some of the activities described above have their own tag:

Should every programming related question be tagged with this tag? If so, it would mean that a lot of questions here would need to be tagged with it, perhaps rendering it irrelevant. If not, should we narrow its guideline to a specific activity (e.g. Programming is the action of typing code.)? Or should we consider removing/black-listing it?

• May be useful if the question is language-agnostic but is about programming? May 16, 2017 at 20:01
• I have just run across the scripting tag; I feel it shares the same issues that you highlight, above. Perhaps it should be bundled in with this meta; perhaps not - I am not sure, myself. May 17, 2017 at 1:55
• @Gnemlock I personally think that scripting has its value here, so I don't think that scripting should be removed. I wouldn't mind that the consensus here be to remove the 'programming' tag, just like I would not mind that the consensus be to leave it as is, or narrow its scope. It should be a different meta post.
– Vaillancourt Mod
May 17, 2017 at 2:02
• I have started to clean up the usage of the scripting tag lately, trying to apply it to general scripting questions ("How to allow my players to mod via script"), and remove it from questions about a particular script ("How to fix this Lua script", "I'm writing a Unity c# script and I have this issue").
– Vaillancourt Mod
May 17, 2017 at 2:04

I don't really like this tag, but I am not inclined to throw my vote onto the "blacklist" pile for this, I don't think.

I worry that doing so is a slippery slope for similar tags like , and that by moving immediately to blacklist the tag as we normally due for less-prolific tags might be creating a more weighty precedent than simply counting the uses of implies.

So my vote would be to preserve the tag, but refine its usage guidelines.

It should not be the case that is applied to any tag where code appears, or where the user is doing programming to achieve some more specific goal (that can have more specific tags applied).

I think instead there might be a window for the tag to be about scenarios where programming theory is at the heart of the question, much like should be about the more soft-science aspects of the domain. I don't mean questions about designing the architecture of a system (there's for that), per se, but rather more for questions about the process of programming that might be game-specific.

has a lot design-process questions that I think are really interesting and provide some of the most unique content that GDSE can offer, such as

I can see a path to changing to be a space for equivalently soft questions about programming practices and concepts. For example, questions I'd consider good uses of the tag I'm proposing:

These are about the philosophy or mindset that should be applied when programming a game (yes, one of them is closed, but I think it's a reasonable question to have in our brave new less-strict-on-general-programming-questions world).

Similarly,

are about terminology and practices of programming. Finally this question is an interesting cross-section of programming and game design conceptually, and this question isn't precisely a request for a technical architecture but more a query about potential theoretical approaches to a problem.

Conversely, none of these questions are good examples of the tag:

All of these are examples of questions when source code is involved, where programming is being done as a concrete activity, but where that activity really just the vehicle to implement the problem & solution, rather than the topic itself.

• Perhaps a programming-theory tag as the synonym of this one? I really do think we should make it distinctive. May 17, 2017 at 6:31
• Yes, I think that's a good idea, and can help cement the use-case (because users will see the synonym remap when they try to tag with 'programming').
– user1430
May 17, 2017 at 16:37
• By programming theory are you referring to things like patterns, best practices, etc or do you mean things like theoretical computation? Alternatively, is there a question that fits well with your proposal? May 17, 2017 at 16:41
• I don't want to be too specific about it, really, I'm just thinking stuff that is more soft-science and theory oriented rather than concretely about "problems in source code." I'll comb through the backlog of programming-tagged questions to see if I can find some good pro and con examples of the usage I'm proposing.
– user1430
May 17, 2017 at 16:42
• Maybe questions like this one, @Pikalek? May 17, 2017 at 16:53
• I agree w/ not over specifying. I just want to make sure I actually understand your proposed intent; e.g. academic & colloquial use of theory can be quite different. A few pro & con examples would be great. May 17, 2017 at 16:57
• Also worth a note, at least two of those questions were originally tagged as game-design and in reviewing the tag I proposed programming as a replacement because I wasn't aware of other tags that might be a better fit. So, I vote for an update to the usage of programming to include a list of common, more specific tags. Specifically the two "2D race" related ones.
– CLo
May 18, 2017 at 17:30
• In my opinion, ´programming-theory´ or ´software-engineering´ shouldn't even be ailased in Game Development SE. If someone would want to ask a question that can potentially have those tags, I think Software Engineering SE would be a better fit for those questions. Jun 20, 2017 at 17:06
• I still don't understand exactly what you're proposing, @S.TarıkÇetin. Are you saying we "do nothing, keeping the programming tag" or are you saying we "get rid of the programming tag and replace it with nothing?" Can you post what you want as an answer so we can get a sense, via votes, of how the community as a whole feels about it?
– user1430
Jun 20, 2017 at 17:23
• @Josh No, programming tag should stay, I agree with you on that. I am suggesting we should add neither programming theory nor software engineering as an alias of programming tag. Jun 20, 2017 at 17:36
• @S.TarıkÇetin If that is your position, and the position you want the site to take, you should write it as an answer here.
– user1430
Jun 21, 2017 at 15:56
• I have made this change to the usage guidance and created a synonym from programming to software-engineering.
– user1430
Jun 23, 2017 at 14:43

I feel this tag may have originally been used in the same vein as the tag; in fact, in working through the removal of the tag after previous meta discussion, I have had to use the tag in light of having no better option; in such cases, I have also been of the opinion that such questions were off-topic, due to being too broad, or going against a more recent rule-set in regards to what we consider on or off topic.

In most cases, the better option would be to use the specific language tag. In most cases, I can see that questions still use the specific language tag; appears to be used as a meta tag. I can only see two practical reasons a question might be better tagged as ; both of which have a relation:

• Questions that are specific to programming, in general. Such questions would be too broad for our scope, or be better posed on Stack Overflow; the user is always going to have a specific language (or set of languages) relative to the system they are using, whether that be a pre-built game engine such as Unity or CryEngine, or a custom engine they have previously built in a specific language.
• Questions that ask about general programming in relation to an engine they have not built, yet. As brought up in previous meta, these questions are also generally too broad; for this reason, we are in the process of blacklisting the tag, given that it has no other practical use.

As such, my vote is to blacklist this tag. It might take some time; but with only 572 questions, it should not take as long as . We should also keep an eye on new questions, as this tag appears to be more popular with new questions, as a meta tag.