Not A Villain Webcomic

Webcomic of a semi- reformed hacker trying to redeem herself in a post- apocalyptic world she may have created.

  • Home
  • About
    • The Game
  • Contact
  • Archive
  • Characters
  • Store
  • Extras
    • Dude the Great
    • Q&A Sessions
  • FanArt
  • AneekaChannel
  • RSS Feed
« ‹ ∞ › »
« ‹ ∞ › »

‘Not A Villain’ Webcomic – Page 601

 

A plethora of sad faces today.

 

Thanks everyone for your well wishes on my 600-page-milestone! On to 700!

Published in Not A Villain Webcomic as part of Finding Friends on 08/25/2017 by Aneeka
Thank you for your comments! And thanks for reading!!

51 Comments

Johnny on 08/25/2017 @ 12:45 am

Wow. Who knew being a Hero was so difficult even for Jake?

Alex on 08/25/2017 @ 1:19 am

Okay, a mad and pessimistic Dude is a first. Also:
What mecha army? If she could still control a mecha army, why would she need to be transferred to walk them in? There’s no way the remote control is limited to one or two kilometers.

And why can’t programmers try to work from remote? Are the systems offline AND they have no way of getting new software copied onto them, e.g. via USB drives? Come on, there’s gotta be something they could do to save Dude’s city without transferring programmers if it’s so dangerous. And Kat doesn’t even want to be transferred in the first place. Can’t Brandon just ask Kat nicely for some remote help?

As a programmer I’m always like “show me the code and then we’ll see if that problem really can’t be fixed”. I don’t do hardware, but workable hardware doesn’t seem to be an issue. It looks like the Ending was mostly hacking software.

Christopher on 08/25/2017 @ 4:01 am

They need a programmer to debug the code. Because thanks to normal decay of poor maintenance, not all values still match up.
They propably have tons of Ariana 5 Situations: https://around.com/ariane.html

Alex on 08/25/2017 @ 8:51 am

Yeah, but a lot of stuff can be done remotely, e.g. controlling a computer, so there is no difference to actually sitting in front of that PC aside from the interaction speed. It’s called desktop sharing.

I agree on the Arianna, because nodoby could have anticipated someone (allegedly) screwing with the geomagnetic field.

Yorwba on 08/25/2017 @ 1:13 pm

My favorite remote debugging story is about a bug in the Deep Space 1 probe that was fixed by connecting a LISP REPL to the running program (in space!) and replacing the code (while it was running!). Unfortunately, I can’t find a description of it that is longer than a single sentence.

However, I did find a story that is very similar, except it was on Mars and they used a C interpreter: https://space.stackexchange.com/questions/9178/how-did-nasa-remotely-fix-the-code-on-the-mars-pathfinder

In either case, the take-away is: always leave your tools in the software you ship, you never know when you might have to replace something while the engine is running.

Alex on 08/25/2017 @ 2:35 pm

Thanks, that was fascinating to read! πŸ™‚

k on 08/28/2017 @ 8:29 am

Yorwba,
Leaving your tools in the software you ship is deadly dangerous.
Half the time we call those backdoors.
Take down half the American internet with those sorts of things.
… don’t ask me how, just read the news.

Alex on 08/28/2017 @ 2:06 pm

True, “always” is exaggerating it. For the consumer market you’re not to do that, while for highly specialized stuff like spacecrafts or otherwise almost unaccessible devices backdoors can come in handy.

Alexander The 1st on 08/25/2017 @ 7:06 pm

Chances are pretty high that major reason everything hasn’t been fixed yet include:

1.) Debugging requiring analysing data from interaction with a human – so they’ll need someone there to cause the trigger while they’re remotely debugging it;

2.) More likely in Kleya’s case, the remote debugging functionality is broken.

The first one, it’s easier to sync if you’re in place.

The second one…is sort of like expecting that turning it on and off again can fix any problem.

It does not fix the “Device will not turn off and on again” problem.

Alexander The 1st on 08/25/2017 @ 7:09 pm

Also, if the device is its own self-sustaining power source, “Is it plugged in?” Doesn’t help.

Krahazik on 08/25/2017 @ 4:06 pm

It would be amusing if we leqarned that ‘The Ending’ was actually casued by a small error in code (Arian 5 situation) in a very critical piece of software at the most incovienent moment possible during a sensitive operation.

ghoulavenger on 08/25/2017 @ 4:21 am

>What mecha army? If she could still control a mecha army, why would she need to be transferred to walk them in? There’s no way the remote control is limited to one or two kilometers.

The Dude was in Shanghai, where there was some kind of mecha revolt. This was referenced when Sandy’s husband was wearing the mecha avatar. So whether or not Kat has an army of mechas, that is an important event that has been imprinted upon him. Instead of taking it literally, look to his state of mind. But rationally speaking he does make one very good point with his exaggeration, if people knew who Kat was, it’d not be a very safe place for her and likely to cause hysteria.

As far as programmers working remotely there may be other technical issues that a programmer could potentially fix in person (although that is more of a technician’s job). There is some use of artistic license involved in this comic, and we can assume this is part of it. From a practical perspective of a programmer, we can also assume that not all of the source code is accessible remotely. If there are system failures, it’s possible that it wiped out entire systems and they had to revert to outdated offsite backups, and possibly even physical media (some places still use magnetic tape to store backups, and no, I’m not kidding).

Alex on 08/25/2017 @ 8:34 am

That’s true, sorry, I meant it a little differently. I meant:
“What mecha army would require her to be physically there? You’re either afraid of said army all the time or not at all.”

Code that’s not accessible remotely should be copiable, as you don’t want to overwrite your backups. Magnetic tape is inadvisable though if you have DVDs. The latter can’t be destroyed with EMPs and it doesn’t break from falling down a few kilometers.

I agree with the artistic license, I’m just trying some speculation just in case there is an explanation that fits with our world. πŸ™‚ I mean: Specials that cause overflows or underflows in emotional stats are super creative? For me as a programmer these two are very common enemies and thus I don’t tend to miss them – especially not in attributes of one of the most frequently used classes, i.e. the character class or the arena class. But you can’t make something that’s truly genius from a programmer’s point of view without giving tons of boring background info nobody cares about, and nobody would want that (me included).
And backdoors upon backdoors Kat implemented? Um, SVN anyone? SVN is for coders what save states are for gamers. But I actually find it quite funny to see a world where programming works differently from ours. πŸ˜€ Comics aren’t supposed to be all that realistic anyway. Otherwise I could just go outside instead of reading them.

Kin on 08/25/2017 @ 12:50 pm

The part that makes this an apocalypse is that Kleya is NOT a genius programmer. She is merely a “child genius” programmer. Both her and Jake were in an accelerated program of some kind – but hardly in the top one thousand worldwide. The fact that they are now “best in the world” just shows how thoroughly programming skills were killed off.

Now, merely being TRAINED as a programmer puts you in the top percent. But even then, they don’t have the expertise as anti-virus coders. And trying to GET that expertise practicing on the most deadly virus in history? Not gonna happen.

Alex on 08/25/2017 @ 2:30 pm

Oh, right, the virus. The power outage Kleya caused… okay, that can be a challenge for a programmer. *I* never tried to fight a virus. I always just formatted my hard drive. In case of this particular virus I guess you’d also need a system for life support that’s read-only while online. And I mean physically read-only, i.e. the write head on the hard drive is unpowered.

k on 08/28/2017 @ 8:30 am

Alex,
At least one extant AI collects viruses.

Alex on 08/25/2017 @ 2:51 pm

I must admit when I said that overflows and underflows (like Kat’s specials) are things I don’t tend to miss (and thus leave for exploitation), I hadn’t completely digested the Ariane story above yet, because that was basically sort of the same. Even though setting up characters and arenas is not quite like rocket science, I have to admit over and underflows are things that can happen. Sooooo, not quite as much artistic licence required as I thought, just because I am used to watching out for these kinds of things.
I just hope that Ariane’s mess-up didn’t happen because of severe incompetence, but because everything was so complex and everyone on the team had to consider a bajillion different things.

I actually heard a story like Ariane’s before, but if it was the same then I misremembered it because I thought that a buffer overflow was the problem and not a variable overflow. A buffer overflow is if you want to write into the 11th field in an array that only has 10, so you write into a random part of your memory instead and that can screw up literally anything that’s currently running. Windows, Linux and Mac catch that, but if a rocket has no OS then good night. Those bugs are harder to catch, but a variable overflow through a cast from either a “double” or a “long int” to a “short int” is just shockingly stupid.

Keybounce on 08/28/2017 @ 12:06 pm

Don’t forget, the Ariana rocket was a case of “This old code worked just fine for the older rocket, so it is copied unchanged and unreviewed for the new rocket code”.

Alex on 08/28/2017 @ 2:09 pm

Oh yeah, that was another stupid mistake indeed.

Iron Ed on 08/25/2017 @ 5:30 pm

“You’re either afraid of said army all the time or not at all.”

Only if you truly understand it and its implications. Most of the remaining citizens are -not- educated to understand it.

Magnema on 08/25/2017 @ 7:09 pm

The creative part wasn’t the underflow, it was the exploit of underflow in a more-or-less deprecated stat that hadn’t been removed. Remember, emotional stats weren’t even really supposed to be a part of the Game.

To make a gaming analogy, it’d be like doing something in Gen I Pokemon that exploited the Bird type, which wasn’t supposed to still be there (since it was deprecated as a type), using MissingNo, a placeholder Pokemon (the accessing of which is itself a nontrivial combination of glitches).

Alexander The 1st on 08/25/2017 @ 7:19 pm

I in a similar vein to the comment I replied with above, I have, through SVN, broken a SVN server.

Even for the server admin; nobody could commit anything, nobody could revert anything, nobody could check the SVN log.

By accident, from the TortoiseSVN visual client.

Also broke GitHub repositories, by accident. Same deal.

I guess what I’m getting at is the NAV universe should’ve used Perforce. :p

Torrenal on 08/25/2017 @ 10:27 am

Physical access.
Generally, for security reason, computers have security systems. You usually don’t want some self proclaimed genius on the far side of the globe deciding for you that you stoplights should be using red as go and green as stop, so of course you put passwords on things. The techs and programmers for those systems are dead. They need to import programmers, remember? Therefore they have no programmers, and I doubt the ones they had pre-collapse all went on vacation the day before everything broke…
Anyway, to gain access to a system you don’t have credentials to, you usually need to insert special boot media or hold down a special reset switch. In the case of inserting boot media, you may need to disassemble the computer part way. Alternately: locate the lead tech’s keyboard. Invert the keyboard. Read the passwords off the stickey note… yeah, that might not work so well.

You are going to want/need physical access for this. It’s unlikely that security systems will ever incoorporate designed backdoors that can be remotely accessed.

Alex on 08/25/2017 @ 1:55 pm

Well, that kind of access can be done by anyone who is guided by a programmer. It takes a lot longer than if the programmer can sit directly in front of the machine, but other than that I don’t see any problems. A special boot disc or something can still be transferred together with the food rations. Or online, if they have a DVD burner or a USB stick handy on the other side.

And yes, I just vaguely remember that programmers are a rarity here. πŸ™‚
Buuuuut a programmer is not the same as a computer technician who can push a reset button the correct way and generally knows a lot about how a computer works. I don’t think they were killed as well. I mean, Paddy seems to be a technician who can configure their server. Similarly, Sandra is no programmer, even though she must have worked on a PC with all that accounting-related stuff, managing databases and stuff. Maybe she even knows SQL, just in case their data base management software crashes and they need to access the data the hard way to check on it.

Krahazik on 08/25/2017 @ 4:14 pm

Heck do not even need to be a computer tech to insert special boot media (or press a button) and follow instructions on how to trigger said media to open remote access. Instructions which the remote programmer could provide via verbal communications methods in real-time. Just need some one with basic computer use knowledge and who can follow instructions.

Tim C on 08/26/2017 @ 12:57 am

I’m also a programmer, but I do work on hardware, so I’ve got a different perspective here.

I absolutely cannot do my job remotely.

Yes, there’s a lab technician who can operate the devices on my behalf. Yes, I could send her very detailed instructions and ask her to take pictures (or live video feed) of what she sees, but that would not be a replacement for being able to interact with the devices myself. The debugging loop would be a lot longer if I had to create detailed instructions for everything I wanted to try and what results to collect for every little guess I have.

Creating good instructions is hard, and good technical writing is not the same skillset as programming. I would say I have a success rate of sending out complete instructions that the technician can complete without asking any clarifying questions about 50%.

To avoid that, I do all my explorative work in my office. I only send instructions to the lab when I need the same thing done on many devices.

Also, when that technician is out and she has a substitute in the lab, it slows my work even though the substitute is equally well trained – just not as familiar with the area. The idea that you could replace that technician with a layman, have me work remotely, and expect that I would be able to work at anything close to the same efficiency does not at all align with my experience.

You might as well ask me to work without a compiler.

SiliconWolf on 08/26/2017 @ 12:43 pm

Hmm. Programming and good technical writing should be almost the same skillset. Both have to deal with idiots. Both have to break down solutions into step-by-step instructions. Both are subject to constant revisions and additions. Even the step-by-step instructions from one can be translated into the other’s language.

Coryen2 on 08/29/2017 @ 8:55 pm

As a technical writer with a programming focus, your thoughts *should* make sense….However, there are a large number of programmers who understand their process and can repeat it flawlessly, but can’t explain the process to save their life. Their step by step instructions can be understood by the computer, but the human mind works on a much higher language. Translating the program into layman’s terms is a strange combination of dumbing down and fleshing out concepts and terminology. Which means I am both simplifying and adding complexity to the instructions…For example, I can’t just tell someone to open up root and run x file, I have to tell them where and how to open up the interface, how to search for a file, what to expect when looking for the file after performing the search, and finally the command to open and run the file. On top of that, I usually have to explain why they are doing each step or else they won’t necessarily want to do my instructions in the proper order or will leave out an important character.

k on 08/28/2017 @ 8:32 am

Torrenal,
Here in the REAL world, most Internet of Things devices are easily hackable, and often run code without anyone realizing it.

Dragon Master on 08/25/2017 @ 12:35 pm

The problem with the programmer isn’t about transportation. The Dude is saying that if the programmer can’t fix anything, all hell’s going to break loose. So I guess the remote fix might work I guess, it’d be easier to keep it a secret if the problem is unfixable. If a person physically comes and then fails it’ll be a lot harder to hide that than if someone does it remotely.

Alex on 08/25/2017 @ 2:16 pm

That sounds reasonable, but it makes me wonder why working remotely isn’t common practice. I understand Sandra not wanting to give admin access to her server to a remote worker, but saving cities is a different topic.

Also if I were to try my programmer hand in a dying city I would never say “it can’t be fixed”. I’ll always say “I will keep trying”. No point in denying that a problem is hard to solve, but if I’m the only programmer, then nobody can proove that I mean “it’s unfixable”. But if the problem really is purely software-based, then I have yet to see an unfixable problem.
“Not fixable in time”: Sure, agreed.
“Too complex and/or messy code to be understood in time”: Yeah, that happens often enough.
But “generally unfixable”: Not if everything else is workable. So if the problem really is purely a software one, then there is hope for the Dude’s city. Unless NAV programmers follow different laws than I do. πŸ˜€

Dragon Raising on 08/25/2017 @ 3:43 pm

Give just how bad the paranoia was during the hacker hunts, I wouldn’t be surprised to learn that all network connections for important systems where physically smashed. Otherwise I figure Jake would already be trying to help remotely.

Liliet on 08/26/2017 @ 7:08 am

Oooooh this actually sounds exactly like something that could have happened
explains also why the Game is working as a global communicatin network now: it was inoffensive and inconsequential enough before the Ending, and precious enough to those who liked it, that it was left alone
(it’s easier to believe that Skype can be a lethal security leak than Minecraft)
(this of course requires something like the Game having separate communication media but honestly I’d buy that more easily than ‘your avatar is generated based on your drawing and not from a set of ready-made options’)

Kin on 08/29/2017 @ 1:19 am

I’m pretty sure “The Game” has the only functional servers around. And in order to buy the room to run LIFE… they deleted as much as they could persuade the virus to let them. Apparently, the login and character menus were first to go.

Also – Minecraft imports your drawing for any custom characters. (Otherwise you are Steve)

Liliet on 08/30/2017 @ 7:23 am

Yeah, true, but it doens’t look remotely like ‘your character’s 3D shape is generated based on your awkward scribble’. You’re drawing a texture that gets overlaid on the standard 3D avatar, and if your drawing doesn’t conform to pre-defined size (well, depending on what tool you use to make it that might or might not be possible) the end result is going to look like sh**… but behave exactly the same. It doesn’t intelligently interpret your scribbling, it just overlays it in a pre-programmed way. The way the Game seems to generate a full 3D shape is actually really hard to program… though I guess it could have been implemented as a gimmick and then somehow was left the only option?

Krahazik on 08/25/2017 @ 4:05 pm

There could be a time constraint in place. IE, can the problem be fixed before the city fully dies?

Krahazik on 08/25/2017 @ 4:16 pm

Just had a thought. Perhaps the critical life supporting systems the city relys on are not connected to the main global network and thus can only be accessed from a terminal within the city itself. A closed system? Might have (coding wise) survived the ending intact, but problems have developed due to yeas of running without updates, patching or general housekeeping due to a lack of any one in the particular city who knows how to do any of that?

Liliet on 08/26/2017 @ 7:09 am

also this ^^^

Torrenal on 08/26/2017 @ 7:04 am

‘It crashed’
In my experience providing tier-3 support, those two words spoken by even a technical user can mean any of:
* the program crashed. Locate its core dump or equivalent to troubleshoot.
* the program locked up. Generate a stack trace to troubleshoot
* the OS crashed or locked up. Blue screens fit here
* the mouse is broken
* everything is fine. user cannot find mouse cursor.
* user toe creep has found and disabled the power strip. The user remains unaware of this.
* a chair/keyboard interface error has occurred. Replace user and press any key to continue. (Nothing is wrong, but the UI confused the user and the user is unable to adaquately explain the problem)
* the computer mistakenly believes the alt key is being held down, causing all mouse and keyboard input to do strange things. Press all modifier keys twice to recover. (As problems go, this is actually fairly common)
—-
Now take this user, sit them down in front of a critical system:
“This computer manages power storage for your city, storing extra power during the day, releasing it at night. We need to crack it’s protections so that we can add the new power room to its configuration. Please realize, when we start this the city’s main power will switch off, and we have fifteen minutes before the UPS on your network fails and your city drops off the internet. Good luck.”

Would you rather fly the tech in for this, or work this remotely?

SiliconWolf on 08/26/2017 @ 12:52 pm

#1:You can be flown out on a transport that hasn’t been maintained properly for the last year. Fly through bad weather and radiation storms and risk the chance that your transport will suddenly go Skynet on you,
#2: or you can log in remotely and talk to people.

Veteran tech support people will always pick option #1!!!

k on 08/28/2017 @ 8:34 am

Torrenal,
Don’t forget “window has left the screen” (a devilish problem where the user was unable to fetch the window from off the screen because there was no way to click it)

Alex on 08/28/2017 @ 2:11 pm

Change the screen resolution?

Dragon Master on 08/27/2017 @ 12:47 pm

I was thinking more along of the lines of the programmer wasn’t skilled enough to fix the problem rather than the problem itself was unfixable.

friendlymosquito on 08/25/2017 @ 4:38 pm

Dude’s happy-go-lucky persona is a character role he’s playing for the Game, it’s not necessarily his true personality. Makes perfect sense to me that he’d be angry and upset about things, especially given the glimpses we have of his situation.

Zigraphix on 08/27/2017 @ 12:29 pm

Kat isn’t the programmer they’re talking about transferring to Brandon’s City. It’s the “spy” who made the illegal portal in the Game.

By this point I assume they have already fixed everything that can be fixed remotely. The Cities that are still broken need techs onsite– or a significantly better programmer than they’ve had access to before now. Kat might well be able to do something helpful with D that other programmers would not be able to do– but probably not without panicking the City inhabitants.

This is the first time I’ve had any sympathy for Brandon. I had assumed he was in the same City as Jake. Being stuck in a dying City pretty well justifies his attitude about the Game as expressed earlier (back when Jane tore into him). I wonder what his part of the bargain is? What convinced Dr. Grace to make him part of Team TenKa? Was it just that Jake wanted an ally on the team, and trusted Brandon, or some other skill we haven’t seen yet?

Alex on 08/28/2017 @ 3:24 am

Oh, shoot, I completely forgot that the programmer is the other hacker. XD

Gilly on 08/27/2017 @ 12:33 am

Since when does Bandit have big wrist cuffs? o.O

The title/hover text is not viewable without a mouse. Would you be interested in putting those in the artist/page comment or a fix like m.xkcd.com with a link thing that when tapped reveals the hovertext?

Rowen Morland on 08/27/2017 @ 8:01 pm

If the characters cooperated and trusted each other this would be a great situation. Exile programmer, might not have a chance at saving the city, or fixing much but Kelya could potentially. Jake could give Kleya the information from the exile and pass solutions back to her as his own, exile would trust Jake and have a chance at implementing the solutions.

Big on 08/27/2017 @ 10:00 pm

Its like in XCom.
“You saved City X from total destruction. As such the Council has seen fit to grant you {1} programmer”

Keybounce on 08/28/2017 @ 12:15 pm

Nah, with XCom, it was more like “You have defeated 2 battleships and a supply ship. But the government has still signed with the aliens and withdrawn from your funding.”

… Sigh. I’m pretty sure that once a battleship arrived for alien infiltration, you lost the country regardless of what else happened.

Thracecius on 09/07/2017 @ 11:13 am

I just wanted to say thank you (rather unnecessarily, I suppose) for the fascinating chain of comments on this page. Even without a complete understanding of the coder vocabulary I was able to pickup a lot of interesting ideas and context that potentially adds to the story indirectly. It also made me realize that either the writing is coming from an author who is already very knowledgeable in the field of programming, or they have really done their research to make experienced coders discuss the plot this thoroughly. Either way, nicely done, and I look forward to reading more! πŸ™‚

What is this? /
Login

Shop at Amazon
Start with this link to help NAV earn 2%-8% of what you spend on Amazon.com with no extra charge to you!
© 2010–2026 Not A Villain Webcomic • Powered by WordPress with Inkblot