--- Log opened Tue Sep 19 00:00:04 2017 |
00:07 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
00:07 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
00:19 | | Jessikat [Jessikat@Nightstar-bt5k4h.81.in-addr.arpa] has quit [Connection reset by peer] |
00:19 | | Jessikat [Jessikat@Nightstar-pmkvjd.dab.02.net] has joined #code |
00:51 | | celticminstrel [celticminst@Nightstar-ce0j0u.dsl.bell.ca] has joined #code |
00:51 | | mode/#code [+o celticminstrel] by ChanServ |
00:51 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [Operation timed out] |
00:55 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
00:56 | | mode/#code [+ao VirusJTG VirusJTG] by ChanServ |
01:09 | | Derakon[AFK] is now known as Derakon |
01:37 | | Jessikat` [Jessikat@Nightstar-eqmjnk.dab.02.net] has joined #code |
01:40 | | Jessikat [Jessikat@Nightstar-pmkvjd.dab.02.net] has quit [Ping timeout: 121 seconds] |
03:55 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
04:02 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
04:02 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
04:57 | | mac [macdjord@Nightstar-a1fj2k.mc.videotron.ca] has joined #code |
04:57 | | mode/#code [+o mac] by ChanServ |
05:00 | | macdjord [macdjord@Nightstar-a1fj2k.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
05:21 | | Derakon is now known as Derakon[AFK] |
05:43 | | celticminstrel [celticminst@Nightstar-ce0j0u.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
06:44 | | Kindamoody[zZz] is now known as Kindamoody|afk |
06:58 | | Jessikat` is now known as Jessikat |
07:24 | | macdjord|slep [macdjord@Nightstar-a1fj2k.mc.videotron.ca] has joined #code |
07:24 | | mode/#code [+o macdjord|slep] by ChanServ |
07:27 | | mac [macdjord@Nightstar-a1fj2k.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
07:41 | | Jessikat [Jessikat@Nightstar-eqmjnk.dab.02.net] has quit [[NS] Quit: Bye] |
11:18 | | Jessikat [Jessikat@Nightstar-mqfqcc.dab.02.net] has joined #code |
14:37 | | Jessikat` [Jessikat@Nightstar-3etp9a.dab.02.net] has joined #code |
14:39 | | Jessikat [Jessikat@Nightstar-mqfqcc.dab.02.net] has quit [Ping timeout: 121 seconds] |
15:20 | | Jessikat` is now known as Jessikat |
15:26 | | * TheWatcher reads some of the git instruction they've been giving students, headdesks |
15:55 | <~Vornicus> | not so good? |
15:58 | <@abudhabi> | "git add *; git commit -m 'foo'; git push origin master; In case of trouble, call someone competent?" |
15:58 | <@abudhabi> | :V |
16:17 | <&ToxicFrog> | abudhabi: git push -f origin master |
16:17 | <&ToxicFrog> | Wait no |
16:17 | <&ToxicFrog> | git push -f --tags --all origin |
16:17 | <&ToxicFrog> | Also use `git add .` instead of `git add *` so it picks up dotfiles as well |
16:18 | <&ToxicFrog> | Can't forget those .build and .pm-cache directories. |
16:30 | | macdjord|slep is now known as macdjord |
16:39 | <@macdjord> | ToxicFrog: Well, that's just a failure to properly setup .gitignore. |
16:40 | <&ToxicFrog> | macdjord: look at the context. |
16:40 | <&ToxicFrog> | I don't think we can assume .gitignore exists. |
17:12 | | Degi [Degi@Nightstar-0tcho5.dyn.telefonica.de] has joined #code |
17:40 | <@TheWatcher> | TF: quite |
17:40 | <@TheWatcher> | And yes, it really does include `git add .` |
17:41 | <@TheWatcher> | There has been raging. |
17:41 | <@TheWatcher> | And upon the morrow there shall be a great purging, also. |
19:02 | | RchrdB [RchrdB@Nightstar-qe9.aug.187.81.IP] has joined #code |
19:35 | | Kindamoody|afk is now known as Kindamoody |
19:43 | | ErikMesoy [Bruker@Nightstar-hq72t5.customer.cdi.no] has joined #code |
19:43 | | mode/#code [+o ErikMesoy] by ChanServ |
19:44 | <@ErikMesoy> | Sitting at my desk today, nominally working internal IT support for BigCorp, I finally got something to do after a month of twiddling my thumbs: the printer driver software is getting outdated and about to lose support/warranty/thing, so the printers all need to be upgraded from FooDriver 6.1 to FooDriver 6.4. |
19:45 | <@ErikMesoy> | The person who had this assignment for me says he'll schedule a meeting with another person to explain it at 1430, is that fine with me? I shrug, nod, and say I can meet whenever because I am between tasks with nothing on my plate right now. |
19:45 | <@ErikMesoy> | So I'm at a three-person meeting for Project Upgrade The Printer Drivers and I start wondering just how much this is going to bog down. |
19:47 | <@ErikMesoy> | Meeter #1 tells me I'm being called in on this because one of the people originally assigned to this has gotten sick. At this point alarm bells are going off in my head: "one of" and there's three of us here? |
19:48 | <@ErikMesoy> | Meeter #2 pulls up an excel spreadsheet of "minor" projects currently active in the department, scrolls to Project Upgrade The Printer Drivers. and I see five names *other* than myself and the two in the meeting, and a six-step overview of the phases through which PUTPD is going to pass. |
19:48 | <@ErikMesoy> | We are on stage #4. |
19:50 | <@ErikMesoy> | Meeter #2 gets a link from that Excel spreadsheet to the HP ALM Quality Center Test Manager and opens the view of the project there, where the project is laid out with twenty separate subtests. Check that you can print in black and white. Check that you can print in color. Check that you can print to a different printer than your default. Check that your print quota goes down when printing. Check... |
19:51 | <@ErikMesoy> | "Erik, your first task will be to finish writing the rest of the necessary tests here." |
19:51 | | * ErikMesoy |65 wat| |
20:01 | <@macdjord> | ErikMesoy: Yay corporate bureaucracy~ |
20:03 | <@ErikMesoy> | Indeed. I imagine this is the corporate equivalent of those safety warning tags telling you not to stop chainsaw blade with your hands: they imply someone fucked up that way. |
20:04 | <@gnolam> | ErikMesoy: >_< |
20:14 | <&ToxicFrog> | Do Not Attempt To Stop Blade With Face Or Genitals |
20:16 | < RchrdB> | That sounds like a perfectly reasonable checklist to go through all of… if you're QAing the printer software itself. |
20:16 | <@gnolam> | Every now and then when I'm getting stressed out, I imagine it'd be kinda nice to work for some faceless bureaucratic megacorp. Then I see stories like this one. |
20:17 | < RchrdB> | I guess if you have enough of these dang printers then at some scale it becomes fiscally worthwhile to completely ignore the possibility that HP might have QA'd the software themselves and re-check all their work with a script. |
20:19 | <@ErikMesoy> | gnolam: Well, I am very unstressed. No hard work is required. I just think it's absurd. |
20:23 | <@abudhabi> | ErikMesoy: I would be going mad in your place. |
20:24 | <@abudhabi> | I feel like a thief when I don't apply a minimum of 75% of my time at the job to the job. |
20:24 | <@abudhabi> | Even if there is nothing that I can see that needs doing. |
20:45 | | Jessikat` [Jessikat@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code |
20:46 | | Jessikat [Jessikat@Nightstar-3etp9a.dab.02.net] has quit [Ping timeout: 121 seconds] |
21:12 | <&McMartin> | As someone who spent 8 years working as a member of a very small company selling software to several very large companieis |
21:13 | <@Tamber> | "RUN AWAY!!"? |
21:13 | <&McMartin> | That was totally how things rolled. The assumption was not only that our testing wouldn't actually tell them anything about how things would work in their environment, the assumption was that it could not in any reasonable world. |
21:13 | <&McMartin> | So they ran very aggressive test labs with the equipment they would be using; their job was making sure that stuff worked in a high-inertia environment and then would continue to work forever |
21:13 | <&McMartin> | Our job was to be low-inertia and get it into a state where it would work for them. |
21:14 | <&McMartin> | Our task they didn't care about was to make this true for all customers at once so that each company doesn't have its own support fork, because we liked our fixed level of insanity |
21:14 | <&McMartin> | Also, this means our ideas of what does and does not count as a serious bug were very different |
21:15 | <&McMartin> | My favorite example was the critical, blocks-deployment bug that a certain text window was 128 pixels tall instead of at least 136 |
21:15 | <&McMartin> | And the minor anomaly that it bluescreened on boot 100% of the time on a certain kind of CPU |
21:15 | <@Tamber> | Did they have a CRITICAL BLOCKER bug of a background being the wrong shade, or something? |
21:15 | <@Tamber> | ... |
21:15 | <&McMartin> | No, the critical blocker was "the legal warnings everyone gets on login don't fit without a scrollbar, and it needs to All Be There, Dammit" |
21:16 | <&McMartin> | The minor anomaly is because we're doing a hardware refresh, so, you know, we just can just forbid that CPU by policy |
21:16 | <&McMartin> | Our idea of how much effort needed to go to each bug was kind of different from theirs, but they were super-gratified that we fixed their blocker and got them a new build before the day was even out! |
21:16 | <&McMartin> | Now can we spend some time talking about the CPU you won't use and the rest of the system in question plzkthx |
21:17 | <@Tamber> | haha |
21:17 | <@Tamber> | Crazy. |
21:17 | <&McMartin> | But not irrational, in the end! |
21:19 | <&McMartin> | (IIRC the problem was not the CPU itself but that was the uniquely identifying thing beyond "this laptop model from this manufacturer") |
21:19 | <@Tamber> | Ahhh |
21:21 | <&McMartin> | So yeah, that list of big tests sounds a whole lot to me like "we've been told a lot of things were actually our printer drivers but weren't really, or didn't support all the things they were supposed to as part of some driver unification initiative, or general hideous spider infestations because oh god, printers. So the way we're going to do this is to list all the things we actually care about, make sure |
21:21 | <&McMartin> | they work, and to hell with everything else" |
21:21 | <&McMartin> | So, well. |
21:22 | <&McMartin> | As someone who's been on the other side of this: I salute you, and would apologize if I thought this was the result of *flaws* as opposed to a fundamental and legitimate mismatching of priorities >_> |
21:24 | < Jessikat`> | https://i.imgur.com/pndvfJi.png |
21:24 | < Jessikat`> | ^ thanks, hexchat XD |
21:25 | < Mahal> | Re ErikMesoy's printer issue |
21:26 | < Mahal> | I TOTALLY UNDERSTAND how a corporate gets there |
21:26 | <@abudhabi> | Jessikat`: notusingirssi.jpg |
21:26 | < Mahal> | We have some specialist software which only works with specific printer drivers installed |
21:27 | <@Tamber> | Jessikat`, "...speaking of hideous spider infestations!"? |
21:27 | < Mahal> | It will not work if you've got ANY OTHER printers installed. |
21:27 | <@Tamber> | Ouch. |
21:27 | < Mahal> | The printer drivers are of course not compatible with any of our actual printers |
21:27 | <@Tamber> | Naturally. |
21:28 | < Mahal> | And the software will not run in a vm. |
21:28 | <@Tamber> | OF COURSE. |
21:28 | <@Tamber> | It's almost like the producers of that sort of software have meetings about how much suffering they can inflict. |
21:28 | < Mahal> | Second : last time we did a corporate upgrade of our Follow me solution, it broke accounting. |
21:28 | <@Tamber> | :( |
21:29 | < Mahal> | Because it had some new smart algorithms to maximise thru put to the printer and printed quickest first. |
21:29 | <@Tamber> | And this is how we end up with things never being upgraded, ever, no matter how bad the vulnerabilities in it. |
21:29 | <@TheWatcher> | Tamber: honestly, Hanlon's Razor applies far more often than you'd expect there. |
21:29 | <@TheWatcher> | Yep |
21:29 | < Mahal> | When accounts have painstakingly released several hundred related print jobs that "must" be printed in THAT ORDER for filing |
21:29 | <@Tamber> | TW: Unfortunately, I don't think I'm allowed to apply it to their throats. |
21:30 | < Mahal> | Yes obviously the problem here is not actually accounts or the follow me, but it wss still a thing we have to know about. |
21:30 | < Mahal> | Or the latest version of printer drivers four years ago not being compatible with printing from Project in our Citrix environment |
21:30 | < Mahal> | (Just project! Everything else printed fine!) |
21:31 | <@TheWatcher> | I should randomly note at this point that, aside from anything else, Printers Are Tools of Satan anyway~ |
21:31 | < Mahal> | Or of you have specific versions of Adobe reader and a specific version of a particular Konica driver installed you can no longer export to PDF from one specific Web page reporting function in our HR software |
21:31 | <@Tamber> | Mahal, also, I relayed the borken accounting thing to my sister, who used to work in accounts for a company supplying consumables for printers. There was a twitch of rage, and a little whimper. |
21:32 | < Mahal> | In short - on the face of it, Erik has a legitimate case of wtf |
21:32 | < Mahal> | Having worked in a reasonably sized corporate |
21:32 | < Mahal> | So does his employer :/ |
21:33 | < Mahal> | (The follow me thing is fucken brilliant everywhere else in the business) |
21:33 | <@Tamber> | Printers really shouldn't have to be such a nightmare, y'know; it just... I dunno, strikes me as something that people have come to expect. Like the weather, or taxes, or death... |
21:33 | <@Tamber> | Maybe I'm just too much of an optimist. |
21:33 | < Mahal> | You sweet summer child. |
21:34 | < Mahal> | And anyone who's run into printing from pdf vs printing from pdf AS AN IMAGE knows the pain |
21:34 | <@Tamber> | Oh, don't get me wrong, I'm not saying they *aren't* a nightmare. I'm just... maybe trying to nurse the little glowing ember of hope that perhaps it doesn't inherently have to be made of spiders and nightmares. |
21:34 | < Mahal> | Or when someone decides it's an awesome idea to spool twenty gigs worth of documents off and takes down the print server and three printers before we noticed |
21:35 | <@Tamber> | Or maybe I just like the delusion that not every industry is total shit. |
21:35 | < Mahal> | We had a little chat about how our corporate print room exists specifically to print large runs and perhaps he could use it |
21:35 | < Mahal> | And as a bonus T would be able to professionally bind all his prints for him and put proper covers on for the clients |
21:36 | < Mahal> | BECAUSE THAT'S WHAT WE PAY HIM TO DO YOU TWIT |
21:36 | <@Tamber> | (We use very expensive 3D CAD software feeding data to large CNC plasma cutters and benders, in order to produce things in the wrong fucking size, or half of it bent the wrong way, or...) |
21:36 | <@Alek> | wat. 20GB of documents? |
21:36 | < Mahal> | Yup |
21:36 | < Mahal> | All with complex drawings embedded |
21:36 | <@Alek> | that explains it. |
21:37 | < Mahal> | So the server ran out of spooling space having unpacked the 20gig into approximately 200 before the drive maxed capacity |
21:38 | < Mahal> | Or the problem with our Macs in marketing where we inexplicably have to install the Konica drivers three times before they work |
21:38 | < Mahal> | The Konica guys have no idea why either |
21:38 | <@TheWatcher> | You aren't sacrificing the goat the first time |
21:39 | <@Tamber> | or it's the wrong colour goat. |
21:39 | <@Tamber> | Or not a Certified Genuine OEM goat. |
21:41 | <@TheWatcher> | And people occasionally question why I have to resist the urge to dress as Gandalf during fresher's week and go around yelling "Fly, you fools!" |
21:54 | <&McMartin> | re: everything being shit and printers in particular |
21:55 | <&McMartin> | They're "fine", as long as by "fine" you mean "well, if I send rendering commands to this piece of hardware, it executes them and images are placed on paper" |
21:55 | <&McMartin> | (even there, look into how laser printers actually work sometime, or an auto-duplex device, they were clearly crafted by mad scientists) |
21:56 | <&McMartin> | The problem is that the description I just gave is hilariously and utterly insufficient for any use case including the current expectations of a single-user environment. |
21:56 | <&McMartin> | One of the things I had to write for that old job was, essentially, a printer forwarding device; it looked like a printer, but when you printed to it it would do something else instead. |
21:57 | <@TheWatcher> | s/mad scientists/nyarlathotep/ ~ |
21:57 | <&McMartin> | There are a great many companies that do this; at the time, there were three, so the original plan was "let's license this from someone who can actually do it and has the experience" |
21:57 | <&McMartin> | And I phoned each one up, and then we got to the use case we actually had, and you could just feel the ambient temperature drop 20 degrees. |
21:58 | <@Tamber> | A lot of "We'll get back to you on that."? |
21:58 | <&McMartin> | No, just flat-out "... we don't do that. Nobody does that." |
21:58 | <@Tamber> | Oof. |
21:58 | <&McMartin> | So, it turns out, I did that. |
21:59 | <@TheWatcher> | Inconceivable! |
21:59 | <&McMartin> | And six or seven years later, UniPrint (I think) got around to actually doing it in a way that could integrate sensibly with all stakeholders, but at least on first attempts at it, it didn't work well enough for us to be able to ditch our bespoke stuff or for our customers to bother switching out. |
22:00 | <&McMartin> | (The issue in question was "I want to print from VMware to a printer on my computer" for which there are a great many solutions if the VMware thing you are running is on an ESX server in the back office." "Uh, we were kind of hoping that this would work if the guest were running locally, like, say, because the VM is being used for containment instead of as some kind of wacky remote desktop?" "........." |
22:00 | <&McMartin> | "Okay then." |
22:01 | <&McMartin> | So anyway, print spools exist and they aren't part of the "actually talk to the printer printer" part, usually, except when they are. But in case they don't, there's an on-system spooler first. |
22:01 | <&McMartin> | This means that as far as any application or even printer driver can tell without Extra Hardware-specific Magic, "I have sent all my data to the print spooling service" == "I have successfully printed my document" |
22:02 | <&McMartin> | This also means "The print spooler service is running and hasn't crashed" == "Printer is online and ready" |
22:02 | <&McMartin> | Printer is powered off, unplugged, and on fire? Online and ready! |
22:02 | <&McMartin> | Did I print that document you sent me? I printed the shit out of that document, boy howdy. |
22:02 | <&McMartin> | Noticing that the printer is offline is not your job, so don't worry your pretty little head about it. |
22:02 | <&McMartin> | Abstraction! |
22:03 | <&McMartin> | (Meanwhile, in "not enough abstraction" news, the Win32 printer configuration dialog basically loads a DLL to fill in the config widget, which is great because that means it can be arbitrarily complex, but is terrible because it means that there is literally nothing you can rely on existing or complying with any kind of interface.) |
22:10 | <&McMartin> | In unrelated news, I have just been made aware of a tool that profiles binary size and tells you what's taking up all the space. |
22:10 | <&McMartin> | It is from the Internet |
22:10 | <&McMartin> | Thus, it is called Bloaty McBloatFace. |
22:11 | <@TheWatcher> | Oh, internets |
22:12 | < RchrdB> | so fun thing that used to be a problem when you build Android apps; the .dex file format only permits you to put 65535 or 65536 (can't remember which) methods into one dex file |
22:13 | < RchrdB> | newer Android lifts this limit by allowing your app to be split across multiple dex files so no worries but |
22:13 | < RchrdB> | there exists a Gradle (← weird java build tool) plugin called "dexcount" for diagnosing wtf is making you go over the limit |
22:13 | <&McMartin> | That sounds like a restriction they inherited from .class |
22:13 | <@TheWatcher> | I was going to say "why would you ever need that many", but Java~ |
22:14 | < RchrdB> | Does .class have that restriction too? It seems counter-intuitive that they'd inherit that because they had the opportunity to make it from scratch but maybe. |
22:15 | <&McMartin> | Obfuscators that merge classes together is the traditional one |
22:16 | < RchrdB> | Huh. How often can you merge two classes without changing the semantics? |
22:18 | <&McMartin> | Obfuscators are allowed to change the semantics within the individual details of the obfuscated code... |
22:18 | <&McMartin> | ... but it has occurred to me that I may be confusing the method limit with the 65536 bytes-per-method limit. |
22:18 | <&McMartin> | That's a lot easier to hit with profilers. |
22:18 | < RchrdB> | You could have code that uses instanceOf to check if some Object reference is a Duck or a Tree but then it breaks because the obfuscator merged those classes so now all instances of (what you wrote as) Duck or Tree return true for `instanceOf DuckTree`? |
22:22 | <&McMartin> | As noted, I may have a circuit crossed, but to answer you question in general... Obfuscated code isn't exported, so you have all of it, so you can prove that "instanceof Duck" and "instanceof Tree" are never actually called. |
22:34 | | himi [sjjf@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds] |
22:41 | | ion_ is now known as ion |
23:16 | | Degi [Degi@Nightstar-0tcho5.dyn.telefonica.de] has quit [Connection closed] |
--- Log closed Wed Sep 20 00:00:05 2017 |