--- Log opened Sat Oct 26 00:00:46 2013 |
00:06 | | You're now known as TheWatcher[T-2] |
00:20 | | You're now known as TheWatcher[zZzZ] |
00:41 | | Turaiel is now known as Turaiel[Offline] |
00:43 | | Stalker [Z@Nightstar-b920a19c.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
00:48 | | * McMartin uploads 14K of docs to the engineering wiki |
00:48 | <&McMartin> | This task is long overdue~ |
00:49 | < Harlow> | McMartin: what wiki is that? link? |
00:49 | <&McMartin> | Not online |
00:49 | <&McMartin> | Internal wiki at work |
00:49 | < Harlow> | ah |
00:50 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
00:50 | <&McMartin> | I've spent the past couple days basically reverse-engineering a legacy system from years ago that we want to either replace or evolve |
00:50 | <&McMartin> | Part of my task was to determine which of those was more sensible |
00:50 | <&McMartin> | Happily, it looks like it'll be "evolve" |
01:46 | <@simon`> | does anyone know of a good set of questions for the game "20 questions"? |
01:55 | <&ToxicFrog> | Any such set would need to be expressed as some kind of tree or knowledge->question mapping, since what questions you ask later will be informed by the answers to earlier ones. |
01:55 | <&ToxicFrog> | It will also be very large. |
01:55 | <&ToxicFrog> | That said, there are 20 questions solving programs out there that might be a good first place to look. |
01:56 | <&McMartin> | "Is it alive" and "Is it bigger than a breadbox" are the traditional first two questions |
01:57 | | * simon` goes to 20q.net and plays for a while, gathering questions. |
01:58 | <@simon`> | McMartin, right :) |
01:58 | <@simon`> | actually, a student of mine provided a pretty nice version of this game in 100 lines of SML. |
01:59 | <@simon`> | it only guesses about 20 film characters and refuses that Harry Potter is real, but otherwise, it works quite well. (it also randomizes questions with weight on properties of possible answers that haven't been filtered out yet) |
01:59 | | thalass [thalass@C2A270.CAA584.F46356.2B2C1C] has joined #code |
02:00 | <@simon`> | so... no tree structuring and no interactive learning, but to some extent smart guessing. |
02:12 | | iospace is now known as io|drunk |
02:23 | | thalass is now known as Thalass|werkinghonest |
02:36 | | Thalass|werkinghonest is now known as thalass|actuallyworking |
02:37 | <@Alek> | http://notalwayslearning.com/the-wrong-right-answer/32524 |
02:41 | | thalass|actuallyworking [thalass@C2A270.CAA584.F46356.2B2C1C] has quit [Ping timeout: 121 seconds] |
03:02 | | Vorntastic [Vorn@Nightstar-13771485.sub-70-211-1.myvzw.com] has joined #code |
03:16 | | thalass|actuallyworking [thalass@C2A270.CAA584.F46356.2B2C1C] has joined #code |
03:16 | | thalass|actuallyworking is now known as Thalass|werkinghonest |
03:22 | <&ToxicFrog> | I also tend to deploy "is it fictional" early on. |
03:34 | | Thalass|werkinghonest [thalass@C2A270.CAA584.F46356.2B2C1C] has quit [[NS] Quit: time to go back to work again. IN MY PANTS] |
03:37 | | ktemkin is now known as ktemkin[awol] |
03:54 | | Turaiel[Offline] is now known as Turaiel |
04:16 | < [R]> | TF: That table in JS thing makes me think of ExtJS. |
04:18 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
04:18 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
04:19 | | Vorntastic [Vorn@Nightstar-13771485.sub-70-211-1.myvzw.com] has quit [[NS] Quit: Bye] |
04:28 | < JustBob> | Heh. |
04:28 | < JustBob> | So, you know that coding homework? |
04:28 | < JustBob> | It was 50-odd lines. |
04:28 | <@Alek> | ? |
04:29 | < JustBob> | My first iteration was 200+ until it was made clear to me that it would be whitespaced values of a specific type. |
04:29 | < JustBob> | http://i.imgur.com/I8o7HQV.png <- That was part of my homework; it took me maaaybe an hour to write, and most of that was spent figuring out the damned format for formdata() |
04:43 | | Kindamoody[zZz] [Kindamoody@Nightstar-05577424.tbcn.telia.com] has quit [Client exited] |
04:44 | | Kindamoody|autojoin [Kindamoody@Nightstar-05577424.tbcn.telia.com] has joined #code |
04:44 | | mode/#code [+o Kindamoody|autojoin] by ChanServ |
04:44 | | Kindamoody|autojoin is now known as Kindamoody |
04:44 | <&ToxicFrog> | [R]: ExtJS? |
05:39 | | celticminstrel [celticminst@Nightstar-90d86201.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
06:10 | | Turaiel is now known as Turaiel[Offline] |
06:32 | | thalass [thalass@C2A270.CAA584.F46356.2B2C1C] has joined #code |
06:48 | | RichyB [RichyB@D553D1.68E9F7.02BB7C.3AF784] has quit [[NS] Quit: Gone.] |
06:51 | | RichyB [RichyB@D553D1.68E9F7.02BB7C.3AF784] has joined #code |
07:02 | | thalass [thalass@C2A270.CAA584.F46356.2B2C1C] has quit [[NS] Quit: huzzah home time!] |
07:03 | | Derakon is now known as Derakon[AFK] |
07:22 | | Kindamoody is now known as Kindamoody|out |
07:41 | | ErikMesoy|sleep is now known as ErikMesoy |
08:54 | | Harlow [Harlow@Nightstar-2dbe3d64.il.comcast.net] has quit [[NS] Quit: BED] |
09:04 | | thalass [thalass@Nightstar-141785b5.bigpond.net.au] has joined #code |
09:14 | | LurtzCZ [Lurtz@Nightstar-0604e0ca.cust.termsnet.cz] has joined #code |
09:49 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds] |
09:53 | | Alek [omegaboot@Nightstar-4093ec22.il.comcast.net] has quit [Ping timeout: 121 seconds] |
09:58 | | Alek [omegaboot@Nightstar-4093ec22.il.comcast.net] has joined #code |
09:58 | | mode/#code [+o Alek] by ChanServ |
10:12 | | You're now known as TheWatcher |
10:19 | | himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code |
10:19 | | mode/#code [+o himi] by ChanServ |
10:28 | | thalass [thalass@Nightstar-141785b5.bigpond.net.au] has quit [Ping timeout: 121 seconds] |
10:53 | | thalass [thalass@Nightstar-141785b5.bigpond.net.au] has joined #code |
11:10 | | Stalker [Z@Nightstar-b920a19c.cust.comxnet.dk] has joined #code |
12:05 | | Stalker [Z@Nightstar-b920a19c.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
13:54 | <@simon`> | I'm looking for a good variable name here. I'm making an event-based server where clients can send a query, which gets delegated to a sub-process and once this sub-process returns, a response is sent to the client. |
13:54 | <@simon`> | I'd like to call the quantity of clients waiting for a response for a queue, but it doesn't actually behave like a queue. |
13:54 | <@simon`> | i.e. no FIFO |
13:55 | <@simon`> | what's a better name? WaitingClients? |
13:56 | <@Azash> | Pending? |
13:57 | < ErikMesoy> | Blocked? |
14:03 | | io|drunk is now known as iospace |
14:09 | < thalass> | LegionBot? |
14:12 | < [R]> | TF: A framework that kind of mandates that sort of design, however it does give advantates (such as the user being able to sort the table [which ExtJS calls Grids] and can pageinate huge data sets, only pulling the parts currently displayed) |
14:13 | <@simon`> | Azash, thanks! sounds nice. |
14:29 | | LurtzCZ [Lurtz@Nightstar-0604e0ca.cust.termsnet.cz] has quit [Ping timeout: 121 seconds] |
14:29 | | thalass is now known as Thalass|sleeeeeeep |
14:32 | | LurtzCZ [Lurtz@Nightstar-0604e0ca.cust.termsnet.cz] has joined #code |
14:34 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
15:09 | | LurtzCZ [Lurtz@Nightstar-0604e0ca.cust.termsnet.cz] has quit [Ping timeout: 121 seconds] |
15:34 | | Thalass|sleeeeeeep [thalass@Nightstar-141785b5.bigpond.net.au] has quit [Connection closed] |
15:42 | <&ToxicFrog> | [R]: so, the table is sortable |
15:43 | <&ToxicFrog> | But the actual way to do that is to render the table directly into the page, and then include the three lines of javascript that call one of our libraries to make it sortable. |
15:43 | < [R]> | Ah |
15:43 | <&ToxicFrog> | And it's not doing on-demand loading or anything, the whole dataset is loaded and displayed at once |
15:43 | < [R]> | Okay, so not ExtJS then (since it wants to do all the "rendering" |
15:43 | <&ToxicFrog> | No, it's not. |
15:44 | <&ToxicFrog> | This is all hand-crafted, bespoke headfuck. |
15:44 | < [R]> | But if you've got a standardized way that's not that, then yeah, that's WTFy |
15:44 | < [R]> | Probably not even modularized (IE: reusable)? |
15:46 | <&ToxicFrog> | Yeah, no, this is totally non-reusable. Part of it looks like it was made to be reusable and some of the API complication comes from that, but it's not actually re-used anywhere. |
15:55 | | LurtzCZ [Lurtz@Nightstar-0604e0ca.cust.termsnet.cz] has joined #code |
16:48 | | Derakon[AFK] is now known as Derakon |
17:02 | <@Tarinaky> | UI Usability level, Formula 1 http://i.imgur.com/tG7PObK.jpg |
17:02 | <@Tamber> | Ouch. |
17:04 | < ErikMesoy> | Needs more context. |
17:05 | < ErikMesoy> | I can't say it's necessarily terrible if someone has a use case of needing to watch lots of different values at once and change which sets of values are being watched. |
17:05 | <@Tarinaky> | It's the telemetry from a F1 race car. |
17:06 | <@Tarinaky> | Apparently during that shot the car is actually 'off'. |
17:11 | <@Tamber> | "nEngine 0rpm" Yeah, I'd say it's off. :p |
17:12 | <@Tamber> | (That and the exhaust temperatures are approximately room temp.) |
17:12 | < [R]> | "As of 7/9/2013, the bug has been fixed. This bug still in effect." |
17:12 | < [R]> | Thanks. |
17:12 | <@Tamber> | ...*snrk* |
17:13 | <@Tarinaky> | Tamber: In my defence it's difficult to know where to look with a display like that :p |
17:13 | <@Tarinaky> | I've seen more verbose variable names in code written by Physicists. |
17:14 | | Syka [the@Nightstar-fa556128.iinet.net.au] has quit [Ping timeout: 121 seconds] |
17:15 | | Syka [the@Nightstar-04740ca8.iinet.net.au] has joined #code |
17:16 | <@Tamber> | Tarinaky: Yeah, it's... I suppose you have to know where to be looking at what point, especially in a hurry :x |
17:20 | <@Tarinaky> | There is a special punishment in hell reserved for programmers where they have to maintain code written by Scientists. |
17:20 | <@Tarinaky> | *and mathematicians. |
17:21 | <@Tarinaky> | All of the variables will be named things like theta and a... And they'll change at random according to the nomenclature chosen by the person who wrote whatever book or article they're taking the formula from. |
17:22 | <@Tarinaky> | If you're unlucky they'll just choose any letter of the alphabet that isn't already in scope :/ |
17:22 | <@Tamber> | a, aa, aaa, aaaa, aaab |
17:22 | <@Tarinaky> | If you're /really/ unlucky they'll insist on using camel case at the same time. |
17:23 | <@Tarinaky> | iA, fAa... |
17:23 | <@Tamber> | a, aA, aAa, AaAa? |
17:25 | <@Namegduf> | Also a and A as distinct variables. |
17:25 | <@Tamber> | And, if possible, α. |
17:25 | <@Tarinaky> | Well of course, a is a scalar and A is an array representing a Matrix. |
17:27 | <@Tarinaky> | s/scalar/float/ |
17:29 | <@Namegduf> | Yes. |
17:30 | <@Tarinaky> | Complete with some beautifully obtuse C functions for Matrix arithmetic. Handrolled of course. |
17:31 | <@Tamber> | Using single-letter variables throughout. Re-using them where possible. |
17:31 | <@Tamber> | Oh, and heavy abuse of pre-processor. |
17:31 | <@Tamber> | Got to get that efficiency. |
17:32 | <@Tarinaky> | If you want to see the future of your code base after client-handoff, Winston, imagine a jackboot stomping on the face of your carefully designed UML forever. |
17:58 | | * Syka hugs her buildbot |
17:58 | < Syka> | i have a code style checker, pyflakes and tests done by trial in both cpython and pypy |
17:58 | < Syka> | <33 |
17:59 | <@Tamber> | Tarinaky, frankly, if someone stomped over my code with jackboots, it could hardly be much worse. |
18:02 | <@Tarinaky> | I'm sure we can find some more sections of 1984 to paraphrase. |
18:05 | <@Tamber> | :) |
18:08 | <@Tamber> | #define mem_x_ind (mem[(word) (mem[((mem[(word) (mem[reg_PC + 1] + reg_X)] + 1) << 8) + mem[(word) mem[reg_PC + 1]] + reg_X])]) |
18:09 | <@Tamber> | If you can figure out what *that* does... (...you probably need help of some description.) |
18:13 | <@Tarinaky> | Appears to be some sort of concatenation... |
18:14 | <@Tarinaky> | I'm not sure if that's actually valid C though. |
18:15 | <@froztbyte> | Tamber: I'm reading that on my phone and I'm still reasonably capable of following it :( |
18:16 | <@Tamber> | hehehe |
18:16 | <@froztbyte> | Tarinaky: the "<< 8" is one kind of tell |
18:17 | <@Tarinaky> | Obviously, it's concatenating two bytes. |
18:17 | <@Tarinaky> | I'm not sure why though. |
18:18 | <@Tamber> | "Take a byte from the address given, shift it left 8, then stuff on the byte from (address+1); the 16-bit word that gives you, plus whatever's in X, is the address of the value you're actually after." (Indirect addressing. :D) |
18:18 | <@Tamber> | I think, anyway. I did start glueing it together a while back. |
18:18 | <@Tamber> | And past me apparently hates documentation of "obvious" stuff like that. *eyeroll* |
18:20 | <@froztbyte> | Two-phase pointers! |
18:21 | <@Tamber> | 16-bit addresses, 8-bit data. X,IND addressing. <r.harris> Can you tell what it is yet? </r.harris> |
18:41 | | LurtzCZ [Lurtz@Nightstar-0604e0ca.cust.termsnet.cz] has quit [Ping timeout: 121 seconds] |
18:45 | | Kindamoody|out is now known as Kindamoody |
20:24 | | Kindamoody is now known as Kindamoody[zZz] |
20:42 | | ErikMesoy is now known as Prelzelle |
20:45 | | hhhh [NSwebIRC@Nightstar-234efb0a.tbcn.telia.com] has joined #code |
21:01 | | ktemkin[awol] is now known as ktemkin |
21:35 | | hhhh [NSwebIRC@Nightstar-234efb0a.tbcn.telia.com] has quit [[NS] Quit: Page closed] |
21:53 | <&McMartin> | Tamber: It appears to be big-endian, and it's using X, so it's not 6502 or 65816 or z80 or x86. |
21:54 | <&McMartin> | (When you indirect through X on a 65xx it's "the address you load is actually the start of an array of addresses, and the X is an index into *that*. The base+index indirection always uses Y) |
21:55 | <@Tamber> | See, I *think* it's an attempt at trying to do something 6502-like, whilst drunk. |
21:56 | <&McMartin> | I never used the 68000, but ISTR it was 16-bit registers. What was its prototype? |
21:57 | <@Tamber> | 6800? |
21:57 | <&McMartin> | (X_IND) for 6502 is "read from addr+1, shift left 8, add in what you read from addr, add in X, dereference" |
21:57 | <&McMartin> | Oops, no |
21:57 | <&McMartin> | That is Y_IND, and it's Y |
21:57 | <&McMartin> | X_IND is the cracktastic one |
21:57 | <@Tamber> | Hmm. I should try to figure out what I was doing, and unmongle it, at some point. |
21:58 | <&McMartin> | "read from addr+X+1, shift left 8, add in what you read from addr+X, dereference" |
21:58 | <&McMartin> | UNLESS! |
21:58 | <&McMartin> | ... and even then it's big-endian, so it's not 6502... |
21:58 | <&McMartin> | That's not "X_indirect" |
21:58 | <@Tamber> | It's 0265? :p |
21:59 | <&McMartin> | But is actually straight "X-indexed" and addr there is the rest of the instruction |
22:00 | | * Tamber idly ponders a 6502 with some 32-bit addressing modes. ...then again, that'd be even scarier to see drunken!Tamber try and implement. |
22:01 | <&McMartin> | 65816 had 24-bit addressing modes. |
22:02 | <&McMartin> | That's the 16-bit extension that the Apple IIgs and the SNES used. |
22:02 | <@Tamber> | Hmmm |
22:02 | <&McMartin> | gcc can target it! |
22:03 | <@Tamber> | But will it run linux? (Hahahahaha, probably not without a lot of pain. :) |
22:07 | <&McMartin> | It has the space, but it doesn't have an MMU |
22:08 | <&McMartin> | POSIX OSes have been written for it, and some others have been written for the 8-bit 6502 |
22:08 | <@Tamber> | Hm. Apparently you can run Linux sans-MMU but it is firmly in the Not Fun category. |
22:08 | <&McMartin> | http://www.linuxquestions.org/questions/linux-distributions-5/linux-on-an-apple- ii-211639/ |
22:09 | <&McMartin> | This has links to Wings and LUnix and GNO, all of which are Unices targeting the chip |
22:09 | <&McMartin> | More on the Commodore side because The Commodore Scene Is Better ;-) |
22:09 | <@Tamber> | hehehe |
22:10 | <&McMartin> | Well, it has a different focus, really |
22:11 | <&McMartin> | The Apple stuff seems to be about keeping the hardware going and modern tech is just there as a context to exist in |
22:11 | <&McMartin> | The Commodore stuff is incredibly hard-core for cross-development and new development |
22:11 | <&McMartin> | If you want to write new Apple stuff you'd better have the old dev tools from the 80s sticking around. |
22:11 | <&McMartin> | I honestly don't get this split, but it's super-drastic |
22:16 | <&McMartin> | (I have a couple of theories: Commodores used peripheral standards that were industry standard and stayed so, which means that you could swap out the controlling machine for something more modern easily, and vice versa; Apple machines, OTOH, kept being used through the 1990s because nothing else could talk to the damned machines) |
22:17 | <@Tamber> | *snrk* |
22:18 | <&McMartin> | Also contributing, and indeed, what confounded me when I tried to do apple crossdev: |
22:18 | <&McMartin> | ProDOS and Apple DOS are programs on a disk drive, so there isn't a usable level of structure below "disk image" for apple stuff |
22:18 | <&McMartin> | CBM DOS was burned into a ROM *on the disk drive* for the *disk drive's own CPU to execute* |
22:19 | <&McMartin> | Which means the control channel for the computer itself was "send a string command, get a stream of bytes back" *on the wire* |
22:19 | <&McMartin> | So the architecture makes it trivial for an 8-bit CBM machine in an emulator to think it is talking to a disk drive but actually be talking to a SAN. |
22:21 | <&McMartin> | But then there are also ftp-like utilities for reading and writing files on a disk image, and I never found any of those for the Apple II because why wouldn't you just use System Commander etc |
22:23 | <&McMartin> | Now that I look again, a program for doing this is now available. |
22:23 | <&McMartin> | ... it was payware until 2007 |
22:23 | <@Tamber> | *wince* |
22:23 | <&McMartin> | (I last checked in 2002, when this program did not even exist) |
22:24 | <&McMartin> | And it still doesn't seem to be the kind of thing c1541 is. |
22:25 | <&McMartin> | http://ciderpress.sourceforge.net/index.htm |
22:25 | <&McMartin> | It looks like part of the problem is also "because DOS wasn't burned into the drive's ROM, there was no standard disk or even file format" |
22:30 | | Pandemic [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [Client closed the connection] |
22:36 | <&McMartin> | I'm going to have to look into this CiderPress thing |
22:45 | | Prelzelle is now known as ErikMesoy|sleep |
22:50 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
22:50 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
22:53 | | Harlow [Harlow@Nightstar-b902fba7.chi.megapath.net] has joined #code |
22:56 | <@froztbyte> | <Tamber> But will it run linux? (Hahahahaha, probably not without a lot of pain. :) |
22:56 | <@froztbyte> | this question is typically easily answered |
22:57 | <@froztbyte> | "does a (modern) toolchain for the target exist, and can you use `./configure && make` it fairly easily?" |
22:57 | <&McMartin> | froztbyte: And the answer in this case is "yes to the first, no to the second, because there's no MMU and the hardware hasn't been manufactured in 20 years and needs assembler drivers" |
22:57 | <@froztbyte> | otherwise the answer is "4 weekends, and lots of PDF reading" |
22:58 | <@froztbyte> | McMartin: pfft assembler drivers |
22:58 | <@froztbyte> | McMartin: just dump a binary blob from some chassis and use a shim loader! |
22:58 | | * froztbyte hides |
22:58 | <&McMartin> | Yeah, uh, did you see the part above |
22:58 | <&McMartin> | "I have a disk image, I would like to manipulate the files on it" didn't have an OSS option until 2007 |
22:59 | <@froztbyte> | oh, no |
22:59 | <&McMartin> | The specific question here is "Can you run Linux on an Apple IIgs" |
23:00 | <&McMartin> | People *have* implemented chunks of POSIX on that CPU, and even its 8-bit predecessor, but they've done so with more convenient-to-the-modern-world hardware setups. |
23:00 | <@froztbyte> | mmmmmmmm |
23:01 | <&McMartin> | (And they weren't Linux ports, because, again, no MMU, you're better off using something else) |
23:01 | <@froztbyte> | my kneejerk reaction to that (not knowing the hardware at all) is that you'd probably get to spend a fairly large chunk of time figuring out what bits to actually try make work |
23:01 | <@froztbyte> | just on space etc considerations |
23:02 | <&McMartin> | Well, if you get to trick it out arbitrarily, a IIgs could have 16MB of RAM and gigs of disk space, so that's Not A Problem, AIUI. |
23:02 | <&McMartin> | You won't be running X, but... |
23:02 | | Tamber [tamber@furryhelix.co.uk] has quit [Ping timeout: 121 seconds] |
23:02 | <@froztbyte> | eh |
23:02 | <@froztbyte> | maybe |
23:02 | <@froztbyte> | if you got real creative on your archeology |
23:03 | <&McMartin> | Yeah |
23:03 | <@froztbyte> | my very first intro to linux was the super-mini distro kind |
23:03 | <&McMartin> | You know how I said the Commodore 8-bit world was better? |
23:03 | <&McMartin> | http://www.1541ultimate.net/content/index.php |
23:03 | <@froztbyte> | Damn Small Linux 0.7.3 was the very first thing I ever consciously used knowing it was linux |
23:03 | <&McMartin> | Plug SD cards directly into C64, use as if they were a disk drive |
23:04 | <@froztbyte> | and the smallest distro I've used was a 1.1~1.3MB thing |
23:04 | <@froztbyte> | McMartin: hah, neat |
23:05 | <&McMartin> | Both Apple and Commodore had very-well-documented peripheral specs, because micro hobbyists of the era were totally expected to also be fabricating small electronic devices to have their computers control |
23:06 | <&McMartin> | The big difference in terms of "how easy is it to work with now" (CBM) vs "how long with the old machines stick around" (Apple) is that CBM's documents were basically "please consult the IEEE spec for RS-232" |
23:06 | <@froztbyte> | other thing |
23:06 | <@froztbyte> | is that it was actually a whole lot more feasible in those days |
23:07 | <@froztbyte> | you had a fairly stable upper limit on your various kinds of interfaces |
23:07 | <&McMartin> | Yeah |
23:07 | <@froztbyte> | that's part of what I'm loving about things like Bus Pirate and friends atm |
23:07 | <@froztbyte> | it's nice to see people learning about it |
23:08 | <@froztbyte> | I just kinda get annoyed with the stupid bullshit that ensues |
23:08 | <@froztbyte> | like the recent HN tweet of "omfg this integer is a valid IP address!" thing |
23:08 | <&McMartin> | Weak Typing: The New Hotness |
23:08 | <@froztbyte> | in my mind it's just a case of "well how the fuck did you /think/ it worked, you fucking moron? magic?" |
23:09 | <&McMartin> | I have this dream that after Windows 8 is the standard for desktops, MS will try to reintroduce the "desktop" as a bold new innovation |
23:09 | <&McMartin> | As many apps as you want on the screen at once! |
23:09 | <&McMartin> | And you can put them WHEREVER YOU WANT! |
23:09 | <@froztbyte> | hahaha |
23:09 | <@froztbyte> | well |
23:09 | <@froztbyte> | W8 has made things flat again |
23:09 | <@froztbyte> | so we can definitely upgrade to 3.1 from there. |
23:09 | <&McMartin> | No more fisher-price UI |
23:10 | <&McMartin> | I kind of like W7's version of the fisher-price UI, though~ |
23:10 | <@froztbyte> | man |
23:10 | <@froztbyte> | just imagine |
23:10 | <&McMartin> | Well |
23:10 | <&McMartin> | I mean |
23:10 | <&McMartin> | I actually, unironically want a Tiling WM for Windows |
23:10 | <@froztbyte> | the 'upgrade' to 3.1-esque window styling, but modern graphics |
23:10 | <@froztbyte> | and then the evolutionary path through 95 and 98 |
23:10 | <@froztbyte> | them'd be some good drugkz. |
23:10 | <&McMartin> | When the initial demos for Windows 8 looked like Metro was a tiled WM, my reaction was "sold" and then "unsold" when the developer preview made it clear it was no such thing |
23:11 | <@froztbyte> | haha |
23:11 | <@froztbyte> | is it still possible to replace the shell? |
23:11 | <@froztbyte> | in my XP days I used to run blackbox in the form of bb4win |
23:12 | <&McMartin> | "Which shell? There are three in a stock Win7 install." |
23:12 | <@froztbyte> | it might be possible to get ion3/awesome/whatever going on windows |
23:12 | <@froztbyte> | McMartin: I hate that I know (a bit) about that |
23:12 | <&McMartin> | I need to look into abusing PowerShell some |
23:12 | <&McMartin> | I like the idea of linking Unity against it |
23:13 | <&McMartin> | They're both using a CLR bridge! |
23:13 | <@froztbyte> | game unity? |
23:13 | <&McMartin> | Yeah |
23:13 | <@froztbyte> | or ubuntucrazy unity? |
23:13 | <@froztbyte> | ubuntunity! |
23:13 | <&McMartin> | Ubuntu Unity is using CrazyPants Tech until they switch to SanePants Tech in, apparently, 14.10 or so |
23:13 | <&McMartin> | (The plan AIUI is to shift their stuff over to Qt5) |
23:13 | <@froztbyte> | eh, I don't care too much |
23:14 | <@froztbyte> | as far as I'm concerned, canonical's gone off with hookers and blow |
23:14 | <@froztbyte> | I stopped caring about 2 years ago |
23:14 | <&McMartin> | I'm just saying Qt is the least spiderful of the UI layers I've ever used |
23:14 | <@froztbyte> | I'll wait another 3 |
23:14 | <@froztbyte> | big plans take ~5 years to get going |
23:15 | <@froztbyte> | McMartin: entertainingly, people seem to hate it because of the C++/Qt mashup flavouring |
23:15 | <&McMartin> | I'm pretty firm on that being a feature~ |
23:15 | <@froztbyte> | and the fact that you get something like 3/5 of an OS in Qt |
23:15 | <&McMartin> | But yes, it does mean your build process is complicated |
23:16 | <&McMartin> | That's a problem in some domains, which "desktop windowing UI layer" is not one of~ |
23:16 | <@froztbyte> | but literally everything I've ever encountered points to Qt being of higher quality than anything GTK-based |
23:16 | <&McMartin> | Yeah, that C++/Qt mashup thing? |
23:16 | <&McMartin> | BUILT-IN MULTICAST METHODS WITH OBJC SEMANTICS IF YOU WANT THEM |
23:16 | <@froztbyte> | even though GTK has far more people on it in general |
23:16 | <&McMartin> | Which is to say "yes plz" |
23:16 | <@froztbyte> | haha |
23:16 | <@froztbyte> | that's not multicast like I know it, I'm guessing ;) |
23:17 | <&McMartin> | "Make what looks like a method call, every widget subscribed to that event gets a method call in its event loop" |
23:17 | <@froztbyte> | (same idea, I guess, but not the exact same thing) |
23:17 | <&McMartin> | C# calls those multicast delegates |
23:17 | <&McMartin> | Under the hood, it's a publish/subscribe model for UI events or other events + widgets |
23:18 | <&McMartin> | Which is to say, it's automating 90% of the bullshit you have to do to make Swing work |
23:18 | <@froztbyte> | hehe |
23:18 | <@froztbyte> | my Swing knowledge is not very vast |
23:18 | | Tamber [tamber@furryhelix.co.uk] has joined #code |
23:18 | <&McMartin> | (Swing's event model actually isn't terrible, but it's horribly hobbled by a static type system) |
23:19 | <@froztbyte> | all I recall of it is about 3 weeks worth of layout fun, and differences between windows and linux java |
23:19 | <@froztbyte> | this was ~'06 |
23:19 | <&McMartin> | It's using publish/subscribe everywhere, so the usual technique is to attach anonymous inner listener classes to your widgets as you hook them up to specify the forwarding mechanisms |
23:19 | <&McMartin> | Yeah, Swing's layout system is the same as the awful pre-Swing stuff |
23:19 | | Tamber [tamber@furryhelix.co.uk] has quit [Connection closed] |
23:20 | <&McMartin> | But for whatever reason I'm handier with it than Gtk's, even though Gtk's is closer to Qt's, which is (as per usual) my preferred one |
23:20 | <&McMartin> | Qt uses nested boxes and has explicit "spring" objects to fill up space |
23:20 | <&McMartin> | The one layout thing Java has that I wish other things had is the BorderLayout, which is often handy to supplement your nested box systems. |
23:21 | <&McMartin> | Anyway, a hilarious side effect of Swing's listener system with its heavy reliance on singleton reaction classes is that Swing accidentally ends up merging *awesomely* with Clojure |
23:21 | <@froztbyte> | I've been meaning to put aside some time with Kivy |
23:21 | <&McMartin> | http://clojure.org/jvm_hosted |
23:21 | <@froztbyte> | for writing a PoC android app |
23:22 | <@froztbyte> | I don't particularly care to write java :s |
23:22 | <&McMartin> | Here's a Swing app in Clojure and it fits on one screen |
23:22 | <@froztbyte> | but, the reason I mention this |
23:22 | <@froztbyte> | http://kivy.org/docs/guide/lang.html |
23:23 | <&McMartin> | This is in some sense a solved problem, but I think these are the first guys to try to make it human-writable. |
23:23 | <&McMartin> | It looks semantically roughly equivalent to Glade's or Qt Creator's XML formats. |
23:23 | <&McMartin> | In terms of what it's doing |
23:23 | <&McMartin> | But those are, well, XML and low-abstraction |
23:24 | <@froztbyte> | ye |
23:24 | <@froztbyte> | Kivy has similar goals as Qt |
23:24 | <@froztbyte> | in that it can run across a couple of platforms |
23:24 | <@froztbyte> | which is pretty nice |
23:25 | <@froztbyte> | downside, though |
23:25 | <@froztbyte> | is you get to ship a whole python runtime with your app. |
23:26 | <@froztbyte> | they should find ways of improving that, like having a single kivy platform (this has dragons: python versioning over time) and then the ability to have your app's code launched via said platform |
23:26 | <@froztbyte> | but yeah |
23:26 | <@froztbyte> | later. |
23:26 | <@froztbyte> | maybe later today actually, might have some time to do it |
23:26 | | * froztbyte wanders off to sleep |
23:37 | | Tamber [tamber@furryhelix.co.uk] has joined #code |
23:37 | | mode/#code [+o Tamber] by ChanServ |
23:37 | <@Tamber> | Rasmfrasm. |
23:38 | <&McMartin> | There should be an assembler named that |
23:39 | <@Tamber> | :p |
--- Log closed Sun Oct 27 00:00:01 2013 |