--- Log opened Sat Apr 20 00:00:10 2019 |
01:01 | <@Alek> | https://i.imgur.com/FZ6iaON.jpg |
01:18 | | Derakon[AFK] is now known as Derakon |
03:57 | | celticminstrel [celticminst@Nightstar-5cqq2e.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
04:04 | | McMartin [McMartin@Nightstar-rpcdbf.sntcca.sbcglobal.net] has joined #code |
04:04 | | mode/#code [+ao McMartin McMartin] by ChanServ |
04:05 | <&McMartin> | Jerith: Some years ago you gave some talks about creating test cases for legacy code. Are those still online? |
04:21 | <@gnolam> | McMartin: at least one is: https://www.youtube.com/watch?v=H6HCRpUtawo |
04:23 | <&McMartin> | Pretty sure this is the one I was looking for. Thanks. |
04:40 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [[NS] Quit: Leaving] |
04:58 | | Derakon is now known as Derakon[AFK] |
05:09 | | Vorntastic [uid293981@Nightstar-2dc.p8m.184.192.IP] has joined #code |
05:09 | | mode/#code [+qo Vorntastic Vorntastic] by ChanServ |
07:04 | | Kindamoody[zZz] is now known as Kindamoody|afk |
08:19 | <&jeroud> | That's my most recent. The two earlier talks are about testing in general and property-based testing. |
08:27 | <&jeroud> | McMartin: Also, if that talk is relevant, the book I based it on is indispensable. |
08:53 | <&McMartin> | Here it was to bring balance to some arguments in spaces where TDD is notably non-optimal |
08:53 | <&McMartin> | And then as an exercise I was applying it to my latest project |
08:54 | <&McMartin> | In which, um |
08:54 | <&McMartin> | Nearly all of iOS 11.x and 12.x turn out to meet your informal and practical definitions of "legacy code" |
08:55 | <&McMartin> | And of course the code I was rewriting also had a lot to do with "global mutable state" because it was responsible for audio playback and synchronization, and you don't get more global or mutable than a speaker's membrane. >_> |
08:57 | <&McMartin> | (Apple's developer documentation is bad even by Official Documentation standards; even if you know what you search for you'll only find incomplete descriptions with no indication even in the APIs of how bits really fit together. "Investigative test cases" maps very closely to a lot of the work I did in the project I was working on.) |
08:58 | <&McMartin> | (Though the way I've been approaching it, it's more that turning on the maximum log level turns the entire application into a series of investigative test cases for all the underlying APIs.) |
08:59 | <&McMartin> | Happily, also, in the year and a half since you've given that talk, automated testing of mobile applications has gotten a Hell of a lot more feasible, too |
08:59 | <&McMartin> | Though that tends to be in different domains, and remains extremely vulnerable to drift between what your test harness thinks it is doing/seeing and what actually happens in deployment. |
09:23 | <&McMartin> | And I now thanks to said earlier conversation have now learned a new Worst Case Scenario for this |
09:23 | <&McMartin> | They were running some kind of retail promo code thing or something, and so they had as part of their product a systemt that produced vouchers in PDF form for the end user to print out |
09:24 | <&McMartin> | And their testing said this was fine; produce PDF file, inspect the file, load it up in both Preview.app and Adobe Acrobat and take screenshots and compare the output, the works |
09:24 | <&McMartin> | All looks great |
09:24 | <&McMartin> | ... except the PDF was somehow malformed in a way that caused it to hardlock or reboot 40% of actual printers that attempted to print the damn thing out. |
09:25 | <&McMartin> | I guess "malformed" is the wrong word. "Naughty," maybe. |
09:26 | <&McMartin> | He didn't say how they fixed it, but I'm guessing it was something along the lines of "rewrite from scratch and hope that you don't roll two natural 1s in a row again" |
09:34 | <~Vorntastic> | Holy shit |
10:40 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code |
11:12 | <@Alek> | wow |
14:10 | | celticminstrel [celticminst@Nightstar-5cqq2e.dsl.bell.ca] has joined #code |
14:10 | | mode/#code [+o celticminstrel] by ChanServ |
15:12 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
15:12 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
15:39 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
16:05 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [Connection reset by peer] |
17:59 | | Vorntastic [uid293981@Nightstar-2dc.p8m.184.192.IP] has quit [[NS] Quit: Connection closed for inactivity] |
18:03 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
19:49 | <@abudhabi> | Is there an online sketchboard type of service that persists what you drew over time? I mean, I want to go back to what I drew earlier, but I don't want to keep the browser window open all the time. |
19:58 | < Kizor> | I guess there's Google Drive. |
19:58 | < Kizor> | I use it for storing a backup, but it can do stuff like this: https://docs.google.com/drawings/d/1eUs6iA31nu4sCx5VoPSN6hokaZSOrSQQqdlmBhG9Neo/edit |
20:06 | <~Vornicus> | that yours, kizor? |
20:07 | <@abudhabi> | Hmm. |
20:07 | <@abudhabi> | I think I've figured out a way to do this by using screenshots and pinta. |
20:08 | < Kizor> | Vornicus: It is. Feel free to grab a color and make some annotations for the people reading that in 1900. |
20:08 | < Kizor> | (Please. Roscoe's been rain-checking that one for years.) |
20:08 | <~Vornicus> | 'cause man some of that I can rant about at length |
20:51 | <~Vornicus> | there, that should do |
22:07 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed] |
22:40 | | Kindamoody|afk is now known as Kindamoody |
23:07 | | Kindamoody is now known as Kindamoody[zZz] |
23:55 | <&McMartin> | https://pbs.twimg.com/media/D4ncmWeXoAEOl21.jpg |
--- Log closed Sun Apr 21 00:00:11 2019 |