Jump to content

Its a wonder this game even works.


DR_Mechano

Recommended Posts

5 minutes ago, MetaVileTerror said:

Fair enough.  In my experiences, I've just noticed a trend of larger businesses usually having accrued more safety nets.  Nets which also end up facilitating greedy activities from the bad apples, compared to small companies which are more likely to die from a bad executive.

 

But then, I think I've pulled this thread on a bit of a tangent . . . should we get back to dipping our hands in to the spaghetti?

The biz side is relevent to the pasta though - bad/greddy managment IME increases the technical debt.

When there is a bad leader, nothing gets done really well, IME.

Link to comment
Share on other sites

6 hours ago, Twisted Toon said:

The main reason I say they were inexperienced, and it could be because they wanted job experience, but, the main reason is the undocumented code. The very first thing they teach in programming school is to document your code. Granted, not everyone follows that teaching.

I always liken good code documentation to good periodontal hygiene.  We all tell the dentist we're gonna floss after every meal, but there always manages to be a reason we don't.

Link to comment
Share on other sites

9 minutes ago, jubakumbi said:

bad/greddy managment IME increases the technical debt.

That isn't my experience.  Most of the time, it's an unwillingness to spend the required amount to keep backbone architecture up-to-date.  And not because they're being greedy, they simply don't have the money to do it.

Link to comment
Share on other sites

9 minutes ago, ShardWarrior said:

That isn't my experience.  Most of the time, it's an unwillingness to spend the required amount to keep backbone architecture up-to-date.  And not because they're being greedy, they simply don't have the money to do it.

IME, it means they keep switching programming teams and/or IT teams to find the lowest cost provider, each one leaving a trail of dead systems...

Link to comment
Share on other sites

3 hours ago, ShardWarrior said:

This is pie in the sky wishful thinking.  It simply isn't feasible in the modern business environment given the level of complexity. 

 

Also, keep in mind that the computing power of your cell phone is orders of magnitude more complex and powerful than what was available for the Apollo lunar lander.  Your average pocket calculator of today is probably more powerful than what they had at the time.  The code/systems were simple enough to have printed checklists and manuals. 


Bovine exhaust.

I worked with a system a couple of orders of magnitude more complex and powerful than the Apollo systems - and guess what?  We had printed checklists and manuals.  The currently deployed version of the same system is a couple of orders of magnitude more complex and powerful than mine...  and it too has printed checklists and manuals.  Your average modern jetliner is more complex than the Apollo systems...  and printed checklists and manuals are required to be onboard or it can't carry passengers.

And in that last is the key.

The existence of checklists and manuals is independent of the complexity of the system.  Checklist and manuals exists because the relevant authority (management, customer, regulatory body, whoever) demand that system be provided with them.  (And that they match the system.)  Modern business systems are undocumented because documentation is seen as a cost.  And costs cut into the bottom line.  And the bottom line rules over everything.

  • Like 5
  • Thanks 1

Unofficial Homecoming Wiki - Paragon Wiki updated for Homecoming!  Your contributions are welcome!
(Not the owner/operator - just a fan who wants to spread the word.)

Link to comment
Share on other sites

1 hour ago, Doc_Scorpion said:


Bovine exhaust.

I worked with a system a couple of orders of magnitude more complex and powerful than the Apollo systems - and guess what?  We had printed checklists and manuals.  The currently deployed version of the same system is a couple of orders of magnitude more complex and powerful than mine...  and it too has printed checklists and manuals.  Your average modern jetliner is more complex than the Apollo systems...  and printed checklists and manuals are required to be onboard or it can't carry passengers.

And in that last is the key.

The existence of checklists and manuals is independent of the complexity of the system.  Checklist and manuals exists because the relevant authority (management, customer, regulatory body, whoever) demand that system be provided with them.  (And that they match the system.)  Modern business systems are undocumented because documentation is seen as a cost.  And costs cut into the bottom line.  And the bottom line rules over everything.

And you don't see a distinction between requiring more stringent measures for a passenger aircraft where lives are at stake and a video game?

 

You already have part of the answer - additional cost which isn't going to be eaten by the business.  It gets passed to the consumer who won't want to pay for it.

 

 

Edited by ShardWarrior
Link to comment
Share on other sites

Yeah I do remember that there were talks that after issue 24 that they were, in response to the fanbase, going to spend an entire issue just dedicated to bug fixes and I'm guessing cleaning out the Technical Debt they accrued however all that never came to pass since they were shuttered long before that could even be possible.

Link to comment
Share on other sites

On 9/23/2019 at 6:30 PM, Luminara said:

Modern software developers working in businesses are lazy and sloppy.  Code bloat has become rampant, with everyone assuming there's no need to trim lines or remove unnecessary code.  After all, we aren't using floppies, and we aren't restricted to a few megabytes of RAM, and we aren't measuring our CPU cycles in kilohertz, so why bother?  Screw it, it'll run, good enough.  And documentation is either buried in the code as a paltry few commented lines here and there, or skipped altogether, because time spent noting what was done and what it does is time not spent selling the product.

um....  bullshit.
That's not how I worked.  Of course, I wasn't involved in selling any software as I was doing database development for my employer.

My code was documented scrupulously and I wrote a 50+ page user manual.

  • Like 1

Originally on Infinity.  I have Ironblade on every shard.  -  My only AE arc:  The Origin of Mark IV  (ID 48002)

Link to the story of Toggle Man, since I keep having to track down my original post.

Link to comment
Share on other sites

9 hours ago, Ironblade said:

um....  bullshit.
That's not how I worked.  Of course, I wasn't involved in selling any software as I was doing database development for my employer.

My code was documented scrupulously and I wrote a 50+ page user manual.

 

In this context I think there's a distinction to be made between system programmers and application developers.  I'm a mainframe sysprog and yes, we document everything.  The app-devs with whom I work are a lot closer to Luminara's characterization.

  • Thanks 1

Heavy, man

Link to comment
Share on other sites

I have to comment on the code quality vs.  Resource constraint comment.   Engineering is always about managing tradeoffs between different approaches.   Very rarely do you just get everything you want while building something. 

 

One of those tradeoffs is maintainability/understandability vs.  Computational resources use.   There are -a lot- of techniques,  ranging from virtual functions, generic dynamic memory allocation (or for that matter,  dynamic memory allocation at all), smart pointers, destructors in general, exceptions, garbage collection, higher level languages,  etc that are not the absolute most technically efficient method of doing a specific thing.   Generally though,  using these kinds of abstractions significantly improves your ability to understand and make changes,  and working in a system advanced enough to absorb the overhead these features introduce allows people to make choices around readability and maintainability instead of being forced into hyperoptimizing their code by the environment. 

 

I could build tetris in unreal 4 in a tiny fraction of the time it would take me to build it for an original game boy, mostly due to the huge amount of niggling technical details taken care of by the framework.   The game logic would also be significantly shorter and easier to understand and modify.   

 

If i had to build tetris so the result would fit in 32 kb,  however,  I'm pretty sure the UE4 route is doomed out of the gate,  and the only viable path is some hand coded assembly thing.  

  • Like 1
Link to comment
Share on other sites

I don't code but I have friends that do. They ALL say the same thing to me: In school, documentation was REQUIRED. You HAD to be able to show what you did and how you did it well enough that someone else could pick up your work as needed.

 

The day after they left school and got a job, that went out the window. NOBODY gave them enough time to document ANYTHING. It was always 'rush the product out the door!' IIRC the Devs were not only often rushed, but also constrained by finances. I heard that at one point the game had FIFTEEN devs...fifteen...for what was at the time the ONLY superhero MMO on the market I think.

 

The spaghetti code was often cited as the stumbling block to many of the things the Devs wanted to do. Guess what...that's how programming IS.

 

Sadly, it's just like construction: It's often easier to tear it down and start over than fix the existing structure.

  • Like 1
Link to comment
Share on other sites

15 hours ago, EyeLuvBooks said:

I heard that at one point the game had FIFTEEN devs...fifteen...for what was at the time the ONLY superhero MMO on the market I think.

You refer to the Freem Fifteen ... and yes, it's true ... for almost 2 years there were only 15 Developers working on City of Heroes trying to maintain the entirety of the game.  It's part of why it took so long for Issue 9 and the Invention System to come out.

  • Like 1

IifneyR.gif

Verbogeny is one of many pleasurettes afforded a creatific thinkerizer.

Link to comment
Share on other sites

On 9/23/2019 at 6:30 PM, Luminara said:

 

Because many of us remember the days when code was tight and clean.  It had to be, and developers took pride in making software work efficiently and in as few lines as possible.  Even the most complex software was kept as simple as possible, and thoroughly documented.

 

Modern software developers working in businesses are lazy and sloppy.  Code bloat has become rampant, with everyone assuming there's no need to trim lines or remove unnecessary code.  After all, we aren't using floppies, and we aren't restricted to a few megabytes of RAM, and we aren't measuring our CPU cycles in kilohertz, so why bother?  Screw it, it'll run, good enough.  And documentation is either buried in the code as a paltry few commented lines here and there, or skipped altogether, because time spent noting what was done and what it does is time not spent selling the product.

 

We're constantly surprised because we haven't forgotten the elegance and efficiency of yesterday, and we can't understand why others don't seem to remember... or care.

My dad often mentions this to me, he's been programming as long as its been a job. I'm no coder myself but I can appreciate the fact that he is one of the most experienced coders in the business today and knows a thing or two about it- also facebook keeps trying to hire him but he turns em down every time becuase he rightfully recognizes them as evil and tools of arachnos xD

Link to comment
Share on other sites

While not about city of, I recall a former dev for turbine leaked a lot of in house drama when they left after WB took it over. Basically these days in the mmo field most young programmers are basically out for themselves, they joina  project, do their own things to add to their future resume, often keep it as mysterious and arcane as an ancient alchemist seeking the formula for lead to gold, then move on as soon as possible.

 

Though never confirmed in as dramatic a fashion many a rumor swirled around the parting of ways of cryptic from NC Soft, and an active intent to sabotage the faction that stayed behind and became paragon studios. Thus many a story about code changes being shredded and vital documents concerning this game lost due to spiteful and secretive employees on their way out .

 

Its not just a case of the left hand not knowing the actions of the right, it seems to be more a case of the left hand jumping into a blender to spite the whole body.

  • Sad 1
Link to comment
Share on other sites

Yeah this is basically almost every game ever. Every one of the greatest, most legendary games are almost certainly a horrifying mess under the hood.

I've seen hours and hours of speedrunners and some deliberate analysis videos of Final Fantasy 7. That game is a hilarious mass of thrown together ways to just...get...something...to work.... 🤣

  • Like 2

The idiot formerly known as Lord Khorak

Link to comment
Share on other sites

On 9/23/2019 at 6:30 PM, Luminara said:

Modern software developers working in businesses are lazy and sloppy.  Code bloat has become rampant, with everyone assuming there's no need to trim lines or remove unnecessary code.  After all, we aren't using floppies, and we aren't restricted to a few megabytes of RAM, and we aren't measuring our CPU cycles in kilohertz, so why bother?  Screw it, it'll run, good enough.  And documentation is either buried in the code as a paltry few commented lines here and there, or skipped altogether, because time spent noting what was done and what it does is time not spent selling the product.

 

Ehhh the next generation of hardware will fix it, pardon me I have to work on our next product.

Link to comment
Share on other sites

Also, coming back, I feel like I have to defend modern software developers. It's simply disgusting to call them lazy and sloppy. They're overworked and underpaid....which is only the beginning because there's a whole freaking rainbow spectrum of modern mismanagement techniques present in the software industry now explicitly intended to squeeze out code at the highest rate for the lowest price like fast food pushes out hamburgers.

Like....apparently even people actually doing the basic coding for the Information Era don't grasp the utterly, terrifyingly vast scale of it. The Gutenberg Press allowed for enough of a creation of information and data transfer to basically completely obliterate the entire standard of human civilization that had stood for probably way longer than the 10000BC date we so far manage to archaeologically confirm......and now we're at a point where 90% of all the data we currently have was created in the last two years, and one minute of activity on the internet is a data transfer so large I'd feel pretty good betting that it's probably greater than the amount of data put out by every single printing press put together ever.

Modern software developers are building the station you got on the train, the town it was in, the railroad, rebuilding the train, the destination station, the destination town it's in, all at the same time, and then get dumped on for it by old-ass monks bitching that they aren't matching the artisanal quality of the one book they farted out while the programmers were pressing out twelve different batch orders of ten thousand to possibly not be on the poverty line.

  • Like 1

The idiot formerly known as Lord Khorak

Link to comment
Share on other sites

3 minutes ago, SaintD said:

Also, coming back, I feel like I have to defend modern software developers. It's simply disgusting to call them lazy and sloppy. They're overworked and underpaid....which is only the beginning because there's a whole freaking rainbow spectrum of modern mismanagement techniques present in the software industry now explicitly intended to squeeze out code at the highest rate for the lowest price like fast food pushes out hamburgers.

 

I've worked in IT, healthcare, farm and dairy, food service, warehousing, banking sectors and more, across half the North American continent, and had more than 3000 co-workers over my working lifetime.  I don't have to take my shoes off to count the number of them who truly were overworked and underpaid.


The vast majority of people just don't care, when it comes to employment.  Employers and employees.  There's always another job somewhere, and there's always another employee, somewhere, so neither side puts much effort into retention.  Like everything else these days, employment is disposable, so few bother to treat it like it matters.  There's little or no incentive, on either side of the fence.

 

This is the modern work culture.  So when I say "lazy and sloppy", it's a reflection on that culture.  Not an accusation or admonishment of the individual, but of the system, what it has become and what it has done to us as a whole.  Employers expect little from employees, and most employees deliver precisely that.

 

The people who actually are overworked and underpaid are the people who grew up in a different culture, with stricter employment standards, or those compelled by desperation to hold on to that job (people with social anxiety disorder, for example).  The people who don't know where the restroom is because they've never used it.  The people who go to work instead of going to the hospital when they're in serious distress.  The people who work off the clock to keep the business afloat, just to ensure that they've got a job the next day.

  • Like 2
  • Haha 1

Get busy living... or get busy dying.  That's goddamn right.

Link to comment
Share on other sites

1 hour ago, Luminara said:

...  Like everything else these days, employment is disposable, so few bother to treat it like it matters.  ...

Wow, cynical much?

This is just a cynical tirade by a person who has decided that the 'good old days' (that never existsed) were somehow better, 'because' everyone had more Work Ethic.

What a load of bollocks and ageism propaganda.

  • Like 1
Link to comment
Share on other sites

1 hour ago, jubakumbi said:

Wow, cynical much?

This is just a cynical tirade by a person who has decided that the 'good old days' (that never existsed) were somehow better, 'because' everyone had more Work Ethic.

What a load of bollocks and ageism propaganda.

 

Are you retired?

 

That probably seems like an abrupt question.  So I'm editing this post to clarify the reasoning behind it.

 

Your profile states that you play from ~5 p.m. to ~10 p.m., and that you're available for teams.  This indicates that you have a "normal" daily routine.  You wake up in the morning, do something during the day, return home in the evening and sleep at night.  Your post history (which is all over the place) supports this, and you also say "Been in the biz for almost 30 years" (present tense, not "was in the biz", past tense), so your morning through afternoon commitment isn't high school.

 

Thus, you're either posting from work, or you're retired and behaving like a cranky millennial SJW because whatever you do during during the day isn't fulfilling.

 

If you're retired, I'm certain the bright minds collected here can help you find something more satisfying, and worthwhile, to do with your day.

 

If you're not retired, then it might be a good idea to excuse yourself from further discussions of this nature.

Edited by Luminara

Get busy living... or get busy dying.  That's goddamn right.

Link to comment
Share on other sites

1 hour ago, Luminara said:

 

Are you retired?

 

That probably seems like an abrupt question.  So I'm editing this post to clarify the reasoning behind it.

 

Your profile states that you play from ~5 p.m. to ~10 p.m., and that you're available for teams.  This indicates that you have a "normal" daily routine.  You wake up in the morning, do something during the day, return home in the evening and sleep at night.  Your post history (which is all over the place) supports this, and you also say "Been in the biz for almost 30 years" (present tense, not "was in the biz", past tense), so your morning through afternoon commitment isn't high school.

 

Thus, you're either posting from work, or you're retired and behaving like a cranky millennial SJW because whatever you do during during the day isn't fulfilling.

 

If you're retired, I'm certain the bright minds collected here can help you find something more satisfying, and worthwhile, to do with your day.

 

If you're not retired, then it might be a good idea to excuse yourself from further discussions of this nature.

 

Wow.

Your world is rigid and full of if-then-else-I am doing it wrong.

It is actually possible to make money and have time to post when I feel like it, while posting hours I will often play...all at the same time.

You know - it's possible the world does not just work your way.

Because I post during traditional working hours implies I do a bad job as well, it seems.

Because i might not be retired, I might not have the data needed to call this BS out, it seems.

Too funny.

 

I am certain my mind is bright enough to find it's own things to do, which include calling out blatant attacks on the ethics and morals of an entire industry, of which I happen to be a part, if only on the game forum of a rogue server cluster for a dead game.

 

Your permission for me to tell you your outlook is cynical and ageist is simply not required, nor is your attitude that I am somehow either unqualified or too old to call out BS when I see it.

 

Additionally, since you seem so interested, would you like my cell number as well so you can ask me out on a date?

 

🖖

Link to comment
Share on other sites

On 9/23/2019 at 7:31 PM, DR_Mechano said:

That's my point though, it may still be bad pasta but at least most modern MMOs will actually purposefully document any changes, hell even WoW did it...but City of Heroes and a lot of early MMOs also didn't do this. As pointed out Ultima Online is THE longest running MMO and I freaking DREAD to think what the state of its code is in since it was release in 1997 and STILL going...

Keep in mind that WoW and Blizzard had boatloads of money to throw at the project which gave them the luxury of being able to pay people to do that sort of thing. CoH, not so much. Especially with their Korean masters looking over their shoulders trying to find places to cut costs.

Link to comment
Share on other sites

On 9/24/2019 at 6:22 AM, ShardWarrior said:

Documenting doesn't equal job security.  IME no documentation is better than the code itself.

That's subject to the 'fade time' for the language. You can write a BASIC program, leave it alone for a few years, then pick it up and still be able to figure out what it's doing without too much trouble. Well-written C code, you leave it for 6-9 months and you'll have to spend some time working through the code to puzzle it back out, but it's doable. FORTH, you go off to get a cup of coffee, and when you get back, you have no idea what the code is doing.

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...