--- Log opened Wed Mar 13 00:00:04 2019 |
00:10 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed] |
00:28 | | Kindamoody is now known as Kindamoody[zZz] |
01:51 | | Callidus [Callidus@Nightstar-pc7srk.cable.rogers.com] has joined #code |
02:02 | | Omega [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has joined #code |
02:02 | | mode/#code [+o Omega] by ChanServ |
02:04 | | Alek [Alek@Nightstar-o723m2.cicril.sbcglobal.net] has quit [NickServ (RECOVER command used by Omega)] |
02:04 | | Omega is now known as Alek |
04:21 | | celticminstrel is now known as celmin|sleep |
04:29 | | Derakon is now known as Derakon[AFK] |
04:35 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code |
04:41 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds] |
05:40 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
05:55 | | macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has quit [[NS] Quit: Deep inside, every housecat believes themself to be just a temporarily embarrassed tiger.] |
06:12 | | macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has joined #code |
06:12 | | mode/#code [+o macdjord] by ChanServ |
06:21 | | Callidus [Callidus@Nightstar-pc7srk.cable.rogers.com] has quit [[NS] Quit: have fun!] |
06:31 | | macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has quit [[NS] Quit: Deep inside, every housecat believes themself to be just a temporarily embarrassed tiger.] |
06:38 | | Degi [Degi@Nightstar-5551hq.dyn.telefonica.de] has joined #code |
06:38 | | macdjord [macdjord@Nightstar-grpbnp.mc.videotron.ca] has joined #code |
06:38 | | mode/#code [+o macdjord] by ChanServ |
06:46 | | Degi [Degi@Nightstar-5551hq.dyn.telefonica.de] has quit [Connection closed] |
07:16 | <&McMartin> | Success, of a sort. https://bumbershootsoft.wordpress.com/2019/03/13/mandala-initial-port-complete/ |
07:30 | < simon_> | cool. |
07:31 | <&McMartin> | The game rules degenerate into unplayability more or less instantly with two human players, so this program seems to *only* work if played against a suicidal AI. |
07:31 | <&McMartin> | So it turns out *all* the rules of checkers/draughts are important~ |
08:32 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code |
08:32 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
08:51 | < simon_> | hmm, wat. |
08:52 | < simon_> | so our new iOS developer thinks that POST requests should have JSON bodies rather than URLencoded parameters. |
08:54 | <&McMartin> | That is a thing that it is possible to do in a standards-compliant way. |
08:54 | <&McMartin> | It is a thing I have myself perpetrated, when the posted body is a semistructured chunk of data rather than simply a wodge of text. |
08:55 | < simon_> | I just never thought about challenging the fact that GET and POST parameters are URL-encoded. |
08:56 | <~Vornicus> | I've interacted with both. Also ones with xml bodies |
08:56 | <&McMartin> | IIRC for POST in particular there is a specific header you have to set to aver that what you are sending is in fact URL-encoded and not some other mime type |
08:57 | <&McMartin> | IIRC nginx can be configured to do some automatic parsing of JSON bodies |
08:57 | < simon_> | is this a step in a good direction? |
08:57 | <&McMartin> | Anyway, it is *probably* not relevant that the dude is an iOS developer, though as an iOS developer myself I can aver that the NSURLSession class and related classes make it quite easy. |
08:57 | <~Vornicus> | I prefer json of the three |
08:57 | < simon_> | this guy comes in and has all these crazy ideas like our interfaces should be RESTful, and we should be using other status codes than 200, 301, 302 and 404. |
08:57 | <&McMartin> | But I've done it with unusual abuses of curl too |
08:58 | <&McMartin> | Properly deployed REST is fantastic, speaking as a client developer |
08:58 | <&McMartin> | Properly deployed it makes sessions unnecessary and lets you have stateless conversations that are extremely amenable to unit testing |
08:58 | <&McMartin> | Improperly deployed they are an excuse for server devs to goldbrick and try to devolve all work onto the dudes writing the protocol spec~ |
08:58 | < simon_> | whenever someone new starts, they always react controversially to the local insanity. it's like a breath of fresh air, and I want to cling onto it and use the momentum to change some of the things he sees that I've already accepted. |
08:59 | <&McMartin> | And like Vorn, I too prefer JSON to XML or URL encoding |
08:59 | <&McMartin> | But none of the three are strictly right or wrong |
08:59 | < simon_> | but then again, these hipster developers thinks we should put JSON in our coffee machines! |
08:59 | <~Vornicus> | the largest web thing I made also made use of 400 401 403 and 304, but not much beyond that |
08:59 | < simon_> | McMartin, right, OK. I suppose URL-encoding lets you post a regular HTML form to it. |
08:59 | <&McMartin> | An iOS dev is likely to prefer JSON for a lot of things, because iOS's core data structure libraries let you transparently serialize to and from JSON into core library collections |
09:00 | < simon_> | McMartin, but I suppose you could handle *either* URL-encoded or JSON-encoded as long as the JSON is flat. |
09:00 | <&McMartin> | A trick common in stuff like Python but ObjC compiles to machine code and gets to have it too |
09:00 | <&McMartin> | Yep |
09:00 | <&McMartin> | Now, if the thing you need to send *isn't* flat, that's when you want to consider XML or JSON over URL. |
09:00 | < simon_> | I'll see if our web framework supports that. |
09:01 | < simon_> | right.. |
09:01 | <&McMartin> | I know some do out of the box, but I'm not a server guy and only have vague understandings of it |
09:35 | | * TheWatcher readsup |
09:38 | <&[R]> | <Vornicus> I prefer json of the three <-- same |
09:39 | <@TheWatcher> | I'd tend to agree with your new iOS dev, but then I've been doing a lot of REST API stuff over the past couple of years, and the convention has pretty much come down on the side of sending JSON in POST and PUT in my experience |
11:25 | | Kindamoody[zZz] is now known as Kindamoody |
12:23 | | Kindamoody is now known as Kindamoody|afk |
12:32 | | Degi [Degi@Nightstar-5551hq.dyn.telefonica.de] has joined #code |
12:58 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
13:04 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
14:08 | < simon_> | turns out there's a security conflict with the entire rest of the website: our current web-framework can access query parameters with either $self->param('foo') or $self->every_param('foo'); we know for certain that $self->param('foo') is either a string or undef, and we know for certain that $self->every_param('foo') is a (possibly empty) array. this maps nicely to URL-encoded query parameters. |
14:10 | < simon_> | so the first incompatibility is that JSON can have nested types and are selected like '/foo' rather than 'foo'. but I could make some kind of backwards-compatible translation here to allow 'foo' to mean '/foo' in case of JSON. |
14:10 | < simon_> | as for lists, if $self->param('foo') can return JSON, we can't know that $self->param('foo') is either a string or undef, since it might be a list or an object (or a boolean or a number, but Perl cares very little for this distinction). |
14:11 | < simon_> | I could hack $self->param('foo') into meaning "the first element of the list '/foo'" and $self->every_param('foo') to mean "the entire list '/foo', if it's a list." |
14:12 | < simon_> | but I couldn't easily hack $self->param('foo') into meaning anything good if '/foo' is a hashmap/object. there's no generally useful way to express a hashmap/object as a scalar. |
14:13 | < simon_> | if old code does $self->param('foo') and something non-stringy/non-scalar comes out, I can't generally stick it into our ORM, since it is too magical. |
14:14 | < simon_> | so if I want a neat interface to access POST request parameters via JSON, it seems as if I'm forced to use a different interface. |
14:21 | < simon_> | </rant> |
14:24 | | Degi [Degi@Nightstar-5551hq.dyn.telefonica.de] has quit [Ping timeout: 121 seconds] |
16:56 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code |
19:15 | <~Vornicus> | "You can have these snippet tutorial disks that are unlocked in sequence no matter what order you pick up the disks, so you'll always get the ones that introduce basic concepts before you get the ones that do kickflips down stairs onto the rake." |
19:16 | <~Vornicus> | (me, on a thing that could be done in a game focused on programming) |
19:33 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
19:39 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
20:11 | | Reiv [NSkiwiirc@Nightstar-ih0uis.global-gateway.net.nz] has quit [[NS] Quit: http://www.kiwiirc.com/ - A hand crafted IRC client] |
20:13 | | Reiv [NSkiwiirc@Nightstar-ih0uis.global-gateway.net.nz] has joined #code |
20:13 | | mode/#code [+o Reiv] by ChanServ |
21:05 | | Tamber_ [tamber@furryhelix.co.uk] has joined #code |
21:05 | | Tamber [tamber@furryhelix.co.uk] has quit [Connection closed] |
21:06 | | Tamber_ is now known as Tamber |
21:06 | | mode/#code [+o Tamber] by ChanServ |
21:07 | | catalyst` [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
21:08 | | catalyst`` [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
21:11 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
21:12 | | catalyst` [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
21:23 | | catalyst` [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
21:27 | | catalyst`` [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [Ping timeout: 121 seconds] |
21:31 | | Degi [Degi@Nightstar-5551hq.dyn.telefonica.de] has joined #code |
21:31 | | Kindamoody|afk is now known as Kindamoody |
21:32 | <&McMartin> | Oh hey |
21:33 | <&McMartin> | icculus has been working on an actual SDL1->2 compat layer |
21:33 | <&McMartin> | https://www.patreon.com/posts/25321792 |
21:50 | <~Vornicus> | did he also write the Helping Friendly Book |
21:51 | | himi [sjjf@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds] |
22:43 | | Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds] |
22:50 | | catalyst` [Jessikat@Nightstar-5dv16h.cable.virginm.net] has quit [[NS] Quit: Leaving] |
22:50 | <&McMartin> | I do not believe so |
22:50 | | catalyst [Jessikat@Nightstar-5dv16h.cable.virginm.net] has joined #code |
23:00 | | Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Connection closed] |
23:13 | | Callidus [Callidus@Nightstar-pc7srk.cable.rogers.com] has joined #code |
23:14 | | Callidus is now known as NSGuest33446 |
23:15 | | NSGuest33446 is now known as Callidus |
23:15 | | Degi [Degi@Nightstar-5551hq.dyn.telefonica.de] has quit [Connection closed] |
23:41 | | himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code |
23:41 | | mode/#code [+o himi] by ChanServ |
23:43 | | Netsplit Golgafrincham.Nightstar.Net <-> Traal.Nightstar.Net quits: @crystalclaw, @jeroud, @celmin|sleep, Mahal, @JustBob, tripflag, @jerith, catalyst, @iospace, @VirusJTG, (+1 more, use /NETSPLIT to show all of them) |
23:43 | | Netsplit over, joins: @JustBob, &jerith, Mahal, &jeroud, &VirusJTG, @iospace, catalyst, &McMartin, tripflag, @crystalclaw (+1 more) |
23:48 | | Netsplit Deepthought.Nightstar.Net <-> Krikkit.Nightstar.Net quits: @jeroud, @crystalclaw, @celmin|sleep, Mahal, @PinkFreud, @JustBob, tripflag, @Syloq, @jerith, catalyst, (+3 more, use /NETSPLIT to show all of them) |
23:49 | | Netsplit over, joins: @JustBob, &jerith, Mahal, &jeroud, &VirusJTG, @iospace, catalyst, &McMartin, tripflag, @crystalclaw (+1 more) |
--- Log closed Thu Mar 14 00:00:06 2019 |