Rumor about why the UI is the way it is.

It seems like some people mistook my post as some fanboy defense of the game even though I was very specific in my reply. The original claim was that the user found the typo and assumed that the Tradition was bugged and that was why:

If you're playing exploration as Bulgaria and have that tradition slotted and its not working, um, that's why.

The mistaken idea that the typo in the tag is causing the Tradition to be bugged was all I was commenting on. Neither of those things are true: the Tradition isn't bugged, and the typo in the tag has nothing to do with whether it functions or not.

So, whether having a typo in an XML tag says something about the quality of the game wasn't the initial point, and it's not what I addressed. (For what it's worth, you can find many such typos in the XML for Civ 5 and Civ 6 too.)

I just think there are so many better points you can make about the lack of polish or quality in the game using things that the player actually sees, rather than harping on a typo that doesn't affect anything at all that the player sees or interacts with. Things like minor rivers literally disappearing under buildings, or any of the dozens of issues with the UI, or the ugly map generation, or the hamfisted way that the Distant Lands mechanic works. Any of us can go on and on.

You can’t really have it both ways, that there’s no possible way for a tag to impact the behaviour so it doesn’t matter if they spell them all kinds of different incorrect ways, but also they are dangerous to touch because of the risk of messing something up.
You're misunderstanding. Neither point is related. How it is initially set up doesn't matter. Once it's setup and integrated into the game, changing it is a risk not worth taking due to downstream effects in the code. It's not any deeper than that.
 
Last edited:
1. I have quite different experience, because I mostly work with non-native speaker engineers, who misspell even simple English words, not to mention some less-known historical names.
2. When names are part of API created separately, leadership could review them. But if they are created in code first and when exposed in some API, I can't see a process where any management person would validate the variable names. And it's generally considered toxic behavior to point at spelling errors in code review.

Overall it's important to remember that Civ7 doesn't yet have any official modding tools, so all files we interact with are technically internal.
I'm Norwegian, so I almost exclusively work with non-native English speakers as well. As I said, I think it varies how much people care, but I have never heard that correcting spelling errors in review is considered toxic. Personally, I find it helpful, and with very few exceptions, that seems to be a common attitude with developers I have worked with. There could be some cultural differences here though.

It may also be that it varies somewhat depending on which field you work in. I have mostly, but not exclusively, worked with control systems in the maritime sector. Software should never be the only safety barrier, but poorly written code could literally play a part in killing someone. I acknowledge that this may call for more pedantry than something like a computer game. But I also agree with @protocol7 that caring about the craftmanship of your code is important in general, and probably a good quality indicator for a developer. The odd spelling mistake for us non-native English speakers is to be expected, but if you are inconsistent, and if you resist having your errors corrected, that looks shoddy to me. I think a good developer is someone who cares deeply about the quality of their work, and is happy for any corrections.
 
I'm Norwegian, so I almost exclusively work with non-native English speakers as well. As I said, I think it varies how much people care, but I have never heard that correcting spelling errors in review is considered toxic. Personally, I find it helpful, and with very few exceptions, that seems to be a common attitude with developers I have worked with. There could be some cultural differences here though.

It may also be that it varies somewhat depending on which field you work in. I have mostly, but not exclusively, worked with control systems in the maritime sector. Software should never be the only safety barrier, but poorly written code could literally play a part in killing someone. I acknowledge that this may call for more pedantry than something like a computer game. But I also agree with @protocol7 that caring about the craftmanship of your code is important in general, and probably a good quality indicator for a developer. The odd spelling mistake for us non-native English speakers is to be expected, but if you are inconsistent, and if you resist having your errors corrected, that looks shoddy to me. I think a good developer is someone who cares deeply about the quality of their work, and is happy for any corrections.
Maybe industry matters. I work mostly in Fintech, where mistakes cost a lot of money, but not lives. People tend to be more practical there, focusing on things that really matter. Precise spelling in naming is usually not one of those things (as I wrote, except for publically exposed APIs, but those are designed separately anyway).
 
I work in video games (US originally, now europe) and every studio I’ve been at has corrected typos in PRs. I wouldn’t use open source full of typos either. It’s like, if you can’t be bothered to even spell things in code consistently, it speaks to shoddiness for sure. At least pick one misspelling and go with that if you love misspellings, because inconsistency in code/config is going to cause inconsistent behaviours at some point, if not this very specific example.

It’s like a workshop with tools and half completed junk all over the tables and floor. But I’m sure there are game studios who couldn’t care less and that’s fine, I wouldn’t want to work there but I’m sure some people love it. My own personal opinion is if you work that way you end up with launches like VII.
 
Last edited:
I work in video games (US originally, now europe) and every studio I’ve been at has corrected typos in PRs. I wouldn’t use open source full of typos either. It’s like, if you can’t be bothered to even spell things in code consistently, it speaks to shoddiness for sure. At least pick one misspelling and go with that if you love misspellings, because inconsistency in code/config is going to cause inconsistent behaviours at some point, if not this very specific example.

Like a workshop with tools and half completed junk all over the tables and floor. But I’m sure there are game studios who couldn’t care less and that’s fine, I wouldn’t want to work there but I’m sure some people love it. My own personal theory is if you work that way you end up with launches like VII.

There are tools now to help developers check their code before committing, but rather than blaming the developers' coding itself, I’d point more to a lack of quality assurance (QA). More broadly, when I see things like DLC contents failing to unlock under the expected conditions for instance, it feels like the game went through a rushed operational readiness verification (ORV), maybe assuming that regular service verification (RSV) would do the job.
 
I work in video games (US originally, now europe) and every studio I’ve been at has corrected typos in PRs. I wouldn’t use open source full of typos either. It’s like, if you can’t be bothered to even spell things in code consistently, it speaks to shoddiness for sure. At least pick one misspelling and go with that if you love misspellings, because inconsistency in code/config is going to cause inconsistent behaviours at some point, if not this very specific example.

It’s like a workshop with tools and half completed junk all over the tables and floor. But I’m sure there are game studios who couldn’t care less and that’s fine, I wouldn’t want to work there but I’m sure some people love it. My own personal opinion is if you work that way you end up with launches like VII.
There are tools now to help developers check their code before committing, but rather than blaming the developers' coding itself, I’d point more to a lack of quality assurance (QA). More broadly, when I see things like DLC contents failing to unlock under the expected conditions for instance, it feels like the game went through a rushed operational readiness verification (ORV), maybe assuming that regular service verification (RSV) would do the job.
None of this is relevant here, because we're talking about a single and consistent typo. Coding tools don't bother with spelling of your variables and they clearly don't bother checking whether your variable name matches standard English transcription of some historical name or not.
 
None of this is relevant here, because we're talking about a single and consistent typo. Coding tools don't bother with spelling of your variables and they clearly don't bother checking whether your variable name matches standard English transcription of some historical name or not.

From what I understood of the conversation, we're not talking about a single typo here, that was only used as an example to point out a broader QA issue with the game and its DLCs. Although, very fortunately, codings tools do help checking misspelled variables (generally suggesting them according to what was already declared). What a waste of time would it be otherwise.
 
I can’t see the post you replied to, but that’s correct - we are not talking about any one particular mistake but a level of craftsmanship being present (or not) and whether caring about typos or not is indicative of that.
 
But for every project I have had lead on, I 100% expect stuff to be spelled correctly and consistently.
Bit off-topic, but would you reject a PR solely for a couple of (non-public facing) typos?

I also work in technology, video games specifically, and can confirm that spelling things correctly and consistently in code (and tags do need to be spelled consistently to be associated with each other) is a sign of caring and projects where people don’t care about craftsmanship in that way is often reflected in the final product.
I work for an international company where English isnt everyone's first language. Assuming it comes down a lack of "care" is a flawed assumption regardless of the developer's experience.

And then you have the thing where most international locales will fall back on US English and not UK English, which as a Brit personally bugs me, but it is what it is :D

We have many things in our codebase, given that we were originally a UK-founded startup, that doesn't match. It's not really a good use of anyone's time to go through it and correct it considering we're not even talking about things that really aid legibility.
 
From what I understood of the conversation, we're not talking about a single typo here, that was only used as an example to point out a broader QA issue with the game and its DLCs. Although, very fortunately, codings tools do help checking misspelled variables (generally suggesting them according to what was already declared). What a waste of time would it be otherwise.
Well, my point is that this typo is not a part of QA issue, because QA shouldn't look at variable naming. Actually QA shouldn't look at code at all.

P.S. And proper naming of variables wasn't an issue even when we programmed without IDE (I'm that old), because we just used copy-paste for complex variable names.
 
While I agree that insisting on correct spelling is a good thing and will avoid nasty, hard to find bugs, I also think that policy is only as good as the process and the tools enforcing it. If it wasn't for automatic spellcheck for my variable names, there would be a lot of spelling errors, which would just escape me. And this particular issue is something that is hard to find:
  • Automatic spellchecking would be no help, because it would likely flag it, no matter how it is spelled. Civ 7 has terms in very obscure languages, so the file would just be littered with too many terms the checker does not know.
  • If someone manually checks the code, they might not know how the correct spelling is. So how are they supposed to find it?
 
Well, my point is that this typo is not a part of QA issue, because QA shouldn't look at variable naming. Actually QA shouldn't look at code at all.

P.S. And proper naming of variables wasn't an issue even when we programmed without IDE (I'm that old), because we just used copy-paste for complex variable names.

QA is a general process, not just the testing part. In general, the fewer bugs there are in the commit, the faster testing will go, so there's a collective interest to automatically scan the code before committing to catch errors (typos among others). Especially that we have now pretty powerful AI tools for that. Also from personal experience, it's more efficient when the testing team works hand in hand with the developing team throughout the process.

That's just a general comment though, I'm not saying that wasn't the case here. When you price $30 a DLC that doesn't properly unlock its contents, you could expect it would upset customers. That's really the kind of things a QA team would focus on. If this issue made it to release, it likely indicates that QA didn't have the time to do its job correctly, usually because of project delays.
 
Bit off-topic, but would you reject a PR solely for a couple of (non-public facing) typos?
Maybe not, although I don't recall any such specific instances where that was the only thing to bring up. I suppose if everything was fine apart from a couple of typos, I wouldn't outright reject the code, but I would still mention it so that it could be corrected in any future iterations. It is not that it's necessarily a big deal if someone has written, for example, "paremeter", but it would still be strictly better that they wrote "parameter", so if you have a chance to correct it, I think you should. Obviously, my main purpose when doing reviews isn't to be pedantic, it is to ensure that the design and solutions are sound, and that there aren't any direct errors or potential negative consequences. I have also used it as a tool for knowledge sharing, which I find very useful, and which goes both ways.
 
QA is a general process, not just the testing part. In general, the fewer bugs there are in the commit, the faster testing will go, so there's a collective interest to automatically scan the code before committing to catch errors (typos among others). Especially that we have now pretty powerful AI tools for that. Also from personal experience, it's more efficient when the testing team works hand in hand with the developing team throughout the process.

That's just a general comment though, I'm not saying that wasn't the case here. When you price $30 a DLC that doesn't properly unlock its contents, you could expect it would upset customers. That's really the kind of things a QA team would focus on. If this issue made it to release, it likely indicates that QA didn't have the time to do its job correctly, usually because of project delays.
Just to be clear - the typo we are talking about is not an error, because it's a consistent name used throughout all the files. The complain was that this name doesn't match standard English transcription of some historical name, which has nothing to do with code quality.

Sure the game has a lot of problems and with more testing it would have less of them. No argument here. It's just this particular case having nothing to do with testing or bugs.
 
It seems like every time someone makes an incorrect claim and it gets corrected on this forum, someone comes out of the woodwork to imply that the act of correcting it is being pedantic. "Don't let facts get in the way of a good story", right?

I'm not even sure where you're getting that from in my post. Did I comment at all on the user's insinuations about the quality of the game? No. He made 2 specific claims that were factually wrong, and I pointed that out.

That's really it. I didn't say or imply anything else. If you want to point out the lack of polish in this game, you don't need to look very hard for better examples than misunderstanding how the XML is set up or non-customer-facing typos.
I was responding to the original post of the thread, not to your post. I did not quote you or refer to your post.
 
We seem to be circling the drain unable to figure out if we are talking about one very specific example or if we are talking about general quality.. although several people have said we are talking about the latter another group seems to be saying that no, those very people are definitely only talking about the former. Not sure how to break out of this loop, really, if nobody will believe us that we are talking in general about quality / the issues in the glassdoor article linked at the top of the thread.

Shall we find whoever posted the objectionable example and tar and feather them as penance? Whether they were right or wrong (no idea personally) it doesn’t really have anything to do with whether typos are a sign of (lack of) quality and care. Or if this game in particular is an example of good or bad craftsmanship when it comes to ui, and why that might be the case if the ui team was really purged/rushed into skipping quality or care for details.
 
Last edited:
Seeing stories like the linked Glassdoor post makes me hope that a gaming journalist attempts to chronicle all what went on during this game’s development. Jason Schreier did a good story on what happened in Mass Effect: Andromeda’s development and it was extremely helpful in identifying why that game turned out how it did.
 
  • Like
Reactions: j51
An middle persian word that when transcribed into english is ten letters long and consists purely of S, H, A and N being misspelt in the code with a single missing H seems like such a minor issue. I don't think it's indicative of any broader issue because what normal person would reasonably be expected to catch that mispelling until it became more hassle to fix than it's worth?
 
Last edited:
I work in video games (US originally, now europe) and every studio I’ve been at has corrected typos in PRs. I wouldn’t use open source full of typos either. It’s like, if you can’t be bothered to even spell things in code consistently, it speaks to shoddiness for sure. At least pick one misspelling and go with that if you love misspellings, because inconsistency in code/config is going to cause inconsistent behaviours at some point, if not this very specific example.

It’s like a workshop with tools and half completed junk all over the tables and floor. But I’m sure there are game studios who couldn’t care less and that’s fine, I wouldn’t want to work there but I’m sure some people love it. My own personal opinion is if you work that way you end up with launches like VII.
The issue is that for a single chained set of references, some are spelled correctly in fact and one or two tags is incorrect. It’s a specific mistake that could cause confusion and the easiest fix is to spell things correctly whenever you see an error.

“SAHHANSAH” is not a typo on a place name, it’s a variable in code part of a family of variables where it is spelled correctly at times. There are other typos in the xml files like filling in BUGANDA instead of BULGARIA. Or my mod kept saying that Great Britain unlocked in the exploration age and when I investigated wrong I found out the Bulgaria DLC produces “Unlocks Russia in the Exploration Age.” Ok, so it was easy to correct to fix my mod, but jeez.

I can understand they had to outsource and rush the UI but I mean what are they doing? Do they ship without double checking the files in house? I would like, have two or three eyes on soemthing before shipping. And if they really did have to push out this (planned) DLC at the last minute or are busy on all these other things, then what is it they are doing with their time.

That’s all I’m saying.

My charitable explanation is that, if the rumor is true, maybe the UI deleted the files before quitting or something insane like that.

But if you look at Bethesda Game Studios they have a culture of very slow and ineffective game development. Like, what are they doing in Rockville all day?
 
The issue is that for a single chained set of references, some are spelled correctly in fact and one or two tags is incorrect. It’s a specific mistake that could cause confusion and the easiest fix is to spell things correctly whenever you see an error.

let me clarify what seems to have happened. There was a typo and it produced a database error, so someone went back and instead of correcting the typo, they altered the other end of the tag into the typo, while the correct spelling is listed on other tags within the same line of code. It’s just very very rushed. It’s the kind of mistake almost impossible to make and in the vein of not having even enough time to fix one reference elsewhere.
 
Back
Top Bottom