--- Log opened Fri Dec 05 00:00:00 2014 |
--- Day changed Fri Dec 05 2014 |
00:00 | <&McMartin> | Yeah |
00:00 | <&McMartin> | I don't believe I used a properly configured version of X11 until 2003 |
00:00 | <&ToxicFrog> | I don't know about Linux, but SysV terminal emulators definitely did all of that and more in 1990. |
00:00 | <&McMartin> | This includes all the HP-UX systems |
00:00 | <&ToxicFrog> | (I didn't use Linux until 2000-2001 or so) |
00:00 | <&McMartin> | Yeah |
00:01 | <&McMartin> | When I first tried to use X11 it was of the mode "now edit this configuration file by hand, and have a care because doing it wrong will literally burn your house down" |
00:01 | <&ToxicFrog> | Throughout the 90s we not only ran X, we ran four X sessions, one for each person, so you could user switch just by switching ttys |
00:01 | <&ToxicFrog> | But my dad did all the X setup in those days, so I have no idea how much the spiders it was. |
00:02 | <&ToxicFrog> | Reiv: well, it's more "I'm hoping never to have to install windows again, because fuck that noise" |
00:02 | <&ToxicFrog> | So my hope is that by the time win7 is no longer supported, everything I want to play will either run natively on linux or run in wine |
00:02 | <@Reiv> | Ihdle query: Which bit of windows is "Fuck that noise" anyway |
00:03 | < MantaWaffles> | I assume I'm at a huge disadvantage from not being raised on code. |
00:03 | <&McMartin> | My experience from university is that it actually only puts you 1-2 years behind |
00:03 | <&ToxicFrog> | Reiv: well, there's the general "I don't actually enjoy using windows, I just tolerate it for gaming purposes" |
00:04 | <@Reiv> | That'll do it |
00:04 | <&McMartin> | Yeah, it turns out I don't actually enjoy using OSes |
00:04 | <&ToxicFrog> | Then there's the windows installer being not all that great (although hugely improved from the XP days, granted), and the fact that if you want to do anything even slightly unusual like having / and /home on different partitions you are entering a world of pain |
00:05 | <&ToxicFrog> | Which requires either moving your user profile after installation (delicate, finicky, and easy to fuck up) or pre-configuring the install image using third party tools |
00:05 | <@Reiv> | eh |
00:05 | <&ToxicFrog> | Because god forbid the windows installer actually let you configure that. |
00:05 | <@Reiv> | The installation process is pretty much 'click next, go make coffee' these days to be fair |
00:05 | <&McMartin> | Yes, TF's problem is the defaults are "wrong"~ |
00:06 | <&McMartin> | The "delicate, finicky, easy to fuck up" solution is the one that appears to be the intended one |
00:06 | <&ToxicFrog> | McMartin: I'm not sure I'd say I enjoy using linux per se, but I don't dislike using it, and I appreciate how convenient it makes things like software installation. |
00:06 | <&McMartin> | Which seems to come up a lot, and I think is descended from Windows's true home as the thing IT people used to remotely administer thousands of machines |
00:06 | <&McMartin> | s/machines/desktop machines/ |
00:06 | <&ToxicFrog> | Whereas I do actually dislike using windows and am much happier these days now that I use it as a gaming console and HTPC and nothing else ever. |
00:07 | | gnolam [lenin@Nightstar-ii43bc.cust.bredband2.com] has quit [A TLS packet with unexpected length was received.] |
00:07 | <&ToxicFrog> | (ok, gaming console, HTPC, and occasional X terminal) |
00:07 | <&ToxicFrog> | (but thoth has almost completely taken over X terminal duties) |
00:09 | <&ToxicFrog> | MantaWaffles: a disadvantage, yes, but not a huge one. I mean, I was noodling around in LOGO at 5, but it wasn't until high school that I started actually understanding what I was doing. McM's estimate of 2 years sounds plausible. |
00:10 | <&McMartin> | The place where the trained-from-birth part helps is that there is a certain intuitive aspect to breaking large problems into small problems |
00:10 | <&McMartin> | I take on, essentially, religious faith that this is a thing that *can* be taught |
00:10 | <&McMartin> | But the trained-from-birth types generally don't *need* to be because their minds were bent that way early on |
00:10 | < MantaWaffles> | I was almost literally trained from birth by ninjas, but not with code. I'm a martial artist. |
00:11 | < MantaWaffles> | And not ninjas. |
00:11 | | * McMartin nods |
00:11 | <&McMartin> | This probably translates to things like body awareness |
00:11 | <&McMartin> | Or certain kinds of coordination (musical instruments, etc) |
00:13 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
00:13 | | mode/#code [+qo Vornicus Vornicus] by ChanServ |
00:15 | < MantaWaffles> | Coordination and balance and pain resistance and such. |
00:15 | < MantaWaffles> | It helps a lot with video games, and especially with dancing. |
00:15 | <@Reiv> | I get bunnies thrown at my head a lot. |
00:16 | <@Reiv> | I could do with a little co-ordination. |
00:16 | <&McMartin> | Heh |
00:16 | <&ToxicFrog> | ...bunnies |
00:16 | <&ToxicFrog> | ? |
00:16 | <&McMartin> | I've been known to classify a large chunk of videogames as "controller kata" through the relationship with dance |
00:16 | <~Vornicus> | Better than toasters |
00:16 | <@Reiv> | so, we work in the not-a-cubicle desks at work, with the low walls between each desk |
00:17 | <&ToxicFrog> | Aah, plush rabbits? |
00:17 | <@Reiv> | (I tend to lean on one of mine a lot, it's a convinient height and I'm at the end of a row) |
00:17 | <@Reiv> | (Jokes about being a truck driver in a previous life are accordingly rife) |
00:17 | < MantaWaffles> | Controller kata. XD That's a good way to put it. Especially on fighter games that use the same sequences over and over. |
00:18 | <@Reiv> | It's also a pretty noisy place, because we're frankly overcrowded while waiting for the new building |
00:18 | <&McMartin> | MW: Also games like Rock Band, which are literally "here is a sequence of inputs, do them with more or less tight timing plz" |
00:18 | <@Reiv> | So half the team sit there using noise cancelling headphones that work is happy to provide. |
00:18 | <&ToxicFrog> | We're probably going to be in that situation next year, we're expanding really fast and the new buildings won't be ready until fall of next year, probably @.@ |
00:19 | <@Reiv> | My first team member I work with heavily is directly beside me; no problem. The other is at the far end of the desk row, and would have a great deal of trouble attracting my attention without shouting. |
00:19 | <&ToxicFrog> | To the IRC? |
00:19 | <@Reiv> | She does, however, have a three inch long stuffed bunny rabbit on her desk, and exceedingly good aim. >_> |
00:19 | <&ToxicFrog> | Aah. |
00:19 | < MantaWaffles> | XD |
00:19 | < MantaWaffles> | That's great. |
00:20 | <&McMartin> | MantaWaffles: The other thing that's good to do once you've gotten a handle on the basics of a programming language is to read other people's programs and fiddle with them some. This is both easier and harder these days, but a lot of us have toy programs worth either playing with or challenging you to duplicate. :) |
00:20 | <@Reiv> | (It's a little ball of fluff with two ears and a fabric nose. I'll give it a pass.) |
00:20 | <&McMartin> | That you went from the page before that controlflow thing to a fibonacci generator on your own initiative is a good sign there |
00:21 | < MantaWaffles> | Ok! I'd love to! |
00:21 | <&McMartin> | But first you do need to pick up the basics some, so I think the tutorials should get you going there |
00:22 | <&McMartin> | (A minimum would be: if; while; for; when to use each; variables, and the various data types; the ability to define and use your own functions; the ability to import and use handy functions from the libraries) |
00:22 | <&McMartin> | (The tutorials should get you that far) |
00:22 | <@celticminstrel> | Whoa, I missed a lot of talk. |
00:22 | <&McMartin> | (And the classic first challenge is something that can shuffle and then deal out a deck of cards) |
00:22 | <@celticminstrel> | Incidentally. HTML is not a programming language. |
00:23 | < MantaWaffles> | Okiday. |
00:23 | <&McMartin> | (Hilariously, the last time this channel posed that challenge, the guy ended up finding a bug *in Python itself*) |
00:23 | <@celticminstrel> | And not long after that I just skipped the rest. >_> |
00:24 | < MantaWaffles> | ... How does one -find- a bug in python...? |
00:24 | < MantaWaffles> | He was just confused, huh. |
00:24 | <&McMartin> | He had written a program and it was giving wrong answers and he couldn't figure out why |
00:24 | <&McMartin> | So he brought it to us to look at |
00:24 | <&McMartin> | "This looks fine" |
00:25 | <&McMartin> | "... in fact, if we rename this variable it starts working" |
00:25 | <&McMartin> | "...brb, reading Python's own source code" |
00:25 | <&McMartin> | "...brb, filing bug with the Python developers" |
00:25 | <@Reiv> | That's awesome |
00:25 | <@Reiv> | Do we remember the bug |
00:26 | <&McMartin> | Something about the variable name "top" leaking out under certain contexts |
00:26 | <@Reiv> | hunh |
00:26 | <&McMartin> | So instead of referring to the function argument named "top" it was instead pulling out some internal data structure |
00:28 | <~Vornicus> | python bug 9997 |
00:29 | <~Vornicus> | a function named top will explode if you use the global keyword therein |
00:32 | < MantaWaffles> | Hm. Weird! |
00:32 | <~Vornicus> | or something like that |
00:32 | <&ToxicFrog> | Interpreter bugs often are. |
00:34 | <&ToxicFrog> | Re: poking at other people's code: I've only in the past two years started seriously using python, so I have one or two medium-sized (500-1k LOC) projects on github that I wrote partly to practice it. |
00:35 | <@Reiv> | I should learn to program VASSAL. |
00:35 | <@Reiv> | This would be enough to make wonders happen. |
00:35 | <&ToxicFrog> | Reiv: there's not much programming be done; it's a declarative, XML-based format. |
00:35 | <@Reiv> | oh, well hey |
00:36 | <@Reiv> | I have lots of experience in XML these days |
00:36 | <@Reiv> | (Short version: It's awful, but so is everything else) |
00:36 | <&ToxicFrog> | Intended primarily to be manipulated via the in-program editor; it's not at all set up to encourage external manipulation. |
00:36 | <@Reiv> | I may well go do that for a bit one day, then |
00:36 | <@Reiv> | aw |
00:36 | <&ToxicFrog> | Which is the main reason I've never written anything for it, no way am I doing that by hand. |
00:36 | <@Reiv> | but but ;_; |
00:36 | <&ToxicFrog> | If it supports any sort of extension programming -- I don't recall -- it's going to be in Java or something Java-compatible, I think. |
00:36 | <@Reiv> | I want to play ERGO with you lot~ |
00:37 | <&ToxicFrog> | So implement it in VASSAL~ |
00:37 | <&ToxicFrog> | From what you've described ERGO is a pretty simple card game so it shouldn't be at all hard to create; create a deck and import the images and you're 90% of the way there. |
00:37 | <&McMartin> | Like he said~ |
00:37 | <&McMartin> | There is also Volity |
00:38 | <@Reiv> | ToxicFrog: I was sorta hoping to be able to integrate a boolean logic parser into it |
00:38 | <@Reiv> | So you could check out what the proofs resulted to >_> |
00:39 | <@Reiv> | Or perhaps that's the real fun, who knows~ |
00:39 | <@Reiv> | Ergo's single biggest problem, after all |
00:39 | <@Reiv> | Is that you can have bugs slip into your code, and it most certainly is code |
00:40 | <@Reiv> | And because (unlike robo rally) this code is persistent, too many bugs can render the game literally unwinnable, which is a bit fun |
00:59 | | macdjord|wurk [macdjord@Nightstar-7rac1r.mc.videotron.ca] has quit [Ping timeout: 121 seconds] |
01:00 | | MantaWaffles [MantaWaffle@Nightstar-tat.7vc.35.50.IP] has quit [[NS] Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/] |
01:09 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
02:22 | | macdjord [macdjord@Nightstar-7rac1r.mc.videotron.ca] has joined #code |
02:22 | | mode/#code [+o macdjord] by ChanServ |
03:09 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has quit [[NS] Quit: Program Shutting down] |
03:10 | | celticminstrel [celticminst@Nightstar-l2rg83.dsl.bell.ca] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.] |
03:11 | | celticminstrel [celticminst@Nightstar-l2rg83.dsl.bell.ca] has joined #code |
03:11 | | mode/#code [+o celticminstrel] by ChanServ |
03:11 | | * Vornicus tries to learn about bookmarklets |
03:14 | <~Vornicus> | it looks like they're just javascript code. So now I have to figure out how to get what I want with javascript |
03:15 | <&ToxicFrog> | What do you want? |
03:17 | <~Vornicus> | I need to extract links from a particular section of a document. So I have a selector that gives me a bunch of anchor tags, I want to get all their hrefs and put them,... somewhere. |
03:17 | <~Vornicus> | Most of this I know how to do, but the "put them .... somewhere" is the problem |
03:17 | <&ToxicFrog> | Modern JS has a local storage API, although it's not really accessible to the end user unless they feel like using the javascript debug console |
03:18 | <&ToxicFrog> | What are they going to be used for? |
03:18 | <@Reiv> | bookmarklets, eh |
03:18 | <~Vornicus> | I'm then going to pipe those into wget or something so I can pull down the associated pages. |
03:18 | <~Vornicus> | (of which there are 2400 or so) |
03:19 | <&ToxicFrog> | Why not wget -A -r the original pages to start with rather than using a bookmarklet? |
03:19 | <~Vornicus> | And then from there I'll be tearing out their delicious data |
03:19 | <~Vornicus> | TF: because I only want links in a *part* of the page, and links from *certain* pages |
03:20 | <~Vornicus> | And I cannot distinguish the pages from each other neatly. |
03:20 | <&ToxicFrog> | I don't know of a good way to use a bookmarklet to get things "out of the browser"; the best you may be able to do is a popup or inserting an element into the page containing the URLs on copy-pasteable format. |
03:20 | <~Vornicus> | ah, thjat last sounds sensible |
03:21 | <@Reiv> | That's roughly what google does |
03:22 | <@Reiv> | which makes me assume that there's no other Good Way |
03:22 | <@Reiv> | Else they'd have the button to do it~ |
04:23 | <@macdjord> | Tarinaky: 'Hypo' means 'too little'. So 'hypo-critical' would be 'insufficiently criticised'. |
04:23 | <@macdjord> | Tarinaky: The solution a low-thrust, continuous burn transfer is called a 'brachistochrone trajectory'. |
04:23 | <@macdjord> | <McMartin> I wasn't even the only Michael C. Martin associated with the school at the time -_- |
04:23 | <@macdjord> | Heh, 'macdjord' originated as my high school account name. |
04:28 | | * Alek shrugs. |
04:28 | <@Alek> | I was so very naive in HS. and came to the internet scene late. |
04:30 | <@Alek> | while my name was more unique on the internet at the time, I thought the trend was more for unique nicknames. so I mashed together stuff I liked. |
04:30 | <@Alek> | my favorite color, my favorite letter, and my favorite (at the time) show. |
04:31 | <@Alek> | oh, not to mention, iirc hotmail needed invites to get in, at the time. like gmail did much later. |
04:31 | <@Alek> | so I signed up as redomegareboot, to a site I was told about by a classmate, coldmail.com |
04:32 | <@Alek> | yeah, it's LONG gone by now. |
04:32 | <@Alek> | I think it died even before MS bought hotmail. |
04:33 | <@Alek> | oh. the kicker? I was so proud of myself, I went up to the blackboard in my favorite class (math seminar) and wrote down the address, so my classmates could write me. -_- |
04:33 | | * Alek has been cringing about it ever since. |
04:34 | <@Alek> | I did shorten the nickname to omegaboot, and have been using it ever since. almost everywhere. |
04:41 | <@macdjord> | macdjord was constructed automatically from my name (JORDan MACDonald) |
04:41 | <@macdjord> | Conveiniently, it seems to be unique to me~ |
04:43 | <~Vornicus> | DJORD |
04:46 | <~Vornicus> | djordjordjord. |
05:01 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
05:16 | | Kindamoody[zZz] is now known as Kindamoody |
05:22 | | himi [fow035@Nightstar-dm0.2ni.203.150.IP] has quit [Ping timeout: 121 seconds] |
05:48 | <@froztbyte> | man[tab] |
05:48 | <@froztbyte> | that doesn't help. |
06:36 | | Ogredude [quassel@Nightstar-dm1jvh.projectzenonline.com] has quit [[NS] Quit: No Ping reply in 180 seconds.] |
06:36 | | Ogredude [quassel@Nightstar-dm1jvh.projectzenonline.com] has joined #code |
06:36 | | mode/#code [+o Ogredude] by ChanServ |
06:36 | | Turaiel [Brandon@Nightstar-vku52k.resnet.mtu.edu] has quit [Ping timeout: 121 seconds] |
06:37 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has joined #code |
06:37 | | mode/#code [+o Checkmate] by ChanServ |
06:37 | | Turaiel [Brandon@Nightstar-vku52k.resnet.mtu.edu] has joined #code |
06:55 | | celticminstrel [celticminst@Nightstar-l2rg83.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!] |
07:08 | | Harlow [harlow@Nightstar-pq0497.il.comcast.net] has joined #code |
07:08 | < Harlow> | caches are weird. |
07:28 | <@macdjord> | Harlow: http://thecodelesscode.com/case/148?topic=caching |
07:30 | | macdjord is now known as macdjord|slep |
07:33 | < Harlow> | cool |
09:27 | <@Tarinaky> | macdjord|slep: Brachistochrone Trajectory (according to wikipedia) appears to be the case where the velocity is constant... |
09:28 | <@Tarinaky> | Well, except for gravity. |
09:28 | <@Tarinaky> | A cannon shell rather than a rocket is what I' trying to say. |
09:33 | <@Alek> | wait, that's not a parabola? |
09:46 | <@Tarinaky> | Alek: It's a generalisation where gravity is towards a point, rather than uniformly straight down. |
09:47 | <@Tarinaky> | It's still a conic section though. |
09:49 | <@Tarinaky> | Oh no, it isn't. |
09:49 | <@Tarinaky> | Ignore me |
09:49 | <@Tarinaky> | It's a cycloid |
09:53 | | Kindamoody is now known as Kindamoody|afk |
10:16 | < Harlow> | anyone still up? |
10:17 | <@TheWatcher> | No. |
10:18 | < Harlow> | I need to learn some of the time zones people are on around here. |
10:19 | | Irssi: #code: Total of 34 nicks [20 ops, 0 halfops, 0 voices, 14 normal] |
10:25 | <@TheWatcher> | Would be kinda neat to plot the ebb and flow of language expertise throughout the day in here, actually |
10:27 | < Harlow> | ebb? |
10:31 | | Netsplit *.net <-> *.split quits: jeroud, @Syloq, @Reiv, @Xires, Derakon[AFK], Attilla, grindhold, Orth, @Checkmate, @Orthia, (+16 more, use /NETSPLIT to show all of them) |
10:31 | <@TheWatcher> | Means 'decline' in this context. "Ebb and flow" indicates a recurring pattern of coming and going, increse and decrease. |
10:31 | <@TheWatcher> | And how appropriately timed |
10:31 | <@TheWatcher> | DAMN JOO, NETSPLIT *shakes fist* |
10:32 | | Netsplit over, joins: &Orth, @PinkFreud, &jerith, @Orthia, &jeroud, &ToxicFrog, @Tamber, @Alek, @JustBob, @Reiv (+16 more) |
10:32 | | Irssi: #code: Total of 34 nicks [25 ops, 0 halfops, 0 voices, 9 normal] |
10:32 | <@TheWatcher> | Harlow: Means 'decline' in this context. "Ebb and flow" indicates a recurring pattern of coming and going, increse and decrease. |
10:38 | <@TheWatcher> | (of course, doing that would be complicated - knowhing which languages people use is one thing, but a given person's timezone is only loosely related to whether they'll be here, and going off nick presence doesn't help as many of us leave their connection up all the time) |
10:59 | | Harlow [harlow@Nightstar-pq0497.il.comcast.net] has quit [[NS] Quit: This computer has gone to sleep] |
11:07 | | * Tarinaky head desks at the NecronomiCOM |
11:07 | <@Tarinaky> | So the code that used to work no longer works, inexplicably. |
11:07 | <@Tarinaky> | And attempting to make it work again involves trying to call this method: http://msdn.microsoft.com/en-us/library/windows/desktop/ms695279%28v=vs.85%29.as px |
11:07 | <@Tarinaky> | Which the compiler is handily disavowing all knowledge of |
11:07 | <@Tarinaky> | Argh! |
11:10 | <@TheWatcher> | Did you forget to sacrifice the goat before running the compiler? |
11:11 | <@Tarinaky> | Apparently. |
11:18 | <@Tarinaky> | Ahah! |
11:18 | <@Tarinaky> | I was mispelling Initialize |
11:19 | <@TheWatcher> | You mean, spelling it properly, with an 's'?~ |
11:20 | <@Tarinaky> | No, I got the vowels wrong |
11:22 | <@Julius> | TheWatcher: What's wrong with Oxford spelling (you heretic)?~ |
11:23 | <@Tarinaky> | Nothing so glamorous. I made a soup of the vowels. |
11:49 | | VirusJTG [VirusJTG@Nightstar-6i5vf7.sta.comporium.net] has joined #code |
12:08 | | thalass [thalass@Nightstar-14221n.bigpond.net.au] has joined #code |
12:08 | | mode/#code [+o thalass] by ChanServ |
12:58 | | thalass is now known as thalass|afk |
14:05 | | thalass|afk [thalass@Nightstar-14221n.bigpond.net.au] has quit [[NS] Quit: Leaving] |
15:06 | | Checkmate [Z@Nightstar-484uip.cust.comxnet.dk] has quit [Ping timeout: 121 seconds] |
16:24 | | celticminstrel [celticminst@Nightstar-l2rg83.dsl.bell.ca] has joined #code |
16:24 | | mode/#code [+o celticminstrel] by ChanServ |
18:08 | | Checkmate [Z@Nightstar-ev6.6um.94.83.IP] has joined #code |
18:08 | | mode/#code [+o Checkmate] by ChanServ |
18:35 | | _masor [_masor@Nightstar-cj5.osn.9.95.IP] has joined #code |
18:35 | | _masor [_masor@Nightstar-cj5.osn.9.95.IP] has left #code [] |
19:35 | | gizmore [kvirc@Nightstar-6iuknp.pools.vodafone-ip.de] has joined #code |
19:43 | | Kindamoody|afk is now known as Kindamoody |
20:08 | | gnolam [lenin@Nightstar-9kr5bj.tbcn.telia.com] has joined #code |
20:08 | | mode/#code [+o gnolam] by ChanServ |
20:49 | | Kindamoody is now known as Kindamoody[zZz] |
22:23 | | himi [fow035@Nightstar-v37cpe.internode.on.net] has joined #code |
22:23 | | mode/#code [+o himi] by ChanServ |
22:49 | | gnolam_ [lenin@Nightstar-9kr5bj.tbcn.telia.com] has joined #code |
22:51 | | gnolam [lenin@Nightstar-9kr5bj.tbcn.telia.com] has quit [Ping timeout: 121 seconds] |
23:01 | <@celticminstrel> | Okay, for some reason I have this situation where the click event handlers are expected to return a boolean, but that boolean is ignored. I think I should either do something with it, or not require it. Can anyone think of anything for the former? |
23:03 | <&McMartin> | I don't know the specifics of the system you use, but it is often the case that one of those values means "the event has now been completely processed; you can stop forwarding the event now" |
23:04 | <@celticminstrel> | Well, for the focus change handlers, returning false means cancel the focus change, but I can't think of anything analogous for buttons. |
23:04 | <@celticminstrel> | And there's no forwarding to be done. |
23:05 | <@celticminstrel> | (Except the LED groups, and in that case the LED group's trigger system handles it.) |
23:05 | <@celticminstrel> | ...that said, the return value is used in the LED group... |
23:06 | | * celticminstrel will return after mapping out exactly what is going on here. |
23:06 | <@celticminstrel> | (As a side note, this entire thing is coded by me. >_> 0 |
23:06 | <@celticminstrel> | ^) |
23:07 | <@Tamber> | Ah, so; the craziest, strangest, most obnoxious coder you know? |
23:07 | <@Tamber> | ;) |
23:07 | <@celticminstrel> | XD What. |
23:08 | <@celticminstrel> | To be more precise, I wrote this in 2009. |
23:08 | <@Tamber> | See. |
23:08 | <@celticminstrel> | Though it has been updated more recently, a bit. |
23:08 | <@Tamber> | The craziest coder you know, is your past self. |
23:08 | <@Tamber> | :p |
23:08 | <@celticminstrel> | Heh, |
23:08 | | gnolam_ [lenin@Nightstar-9kr5bj.tbcn.telia.com] has quit [[NS] Quit: Z?] |
23:09 | <@celticminstrel> | I'm thinking I might've given it a return value solely for the LED groups. |
23:09 | <@celticminstrel> | But it's also possible that I didn't really have a reason for it, and the LED groups only use it because it's there. |
23:14 | <@celticminstrel> | Is it weird that the group's click event fires before the button's click event? |
23:15 | <@celticminstrel> | (Actually, originally it wouldn't fire at all, I just added this behaviour.) |
23:15 | <&McMartin> | That's the kind of thing where doing passthrough might actually be handy. |
23:15 | <&ToxicFrog> | I give you the 'adb restore' progress indicator: |
23:15 | <&ToxicFrog> | PID=$(pgrep -laf 'adb restore' | cut -d' ' -f1); SIZE=$(du -Lb /proc/$PID/fd/3 | cut -f1); while true; do cat /proc/$PID/fdinfo/3 | grep pos | cut -f2 | lua -e 'io.write(string.format("\r%03.2f%%", tonumber(io.read("*a"))/1839263180*100))'; sleep 1; done |
23:15 | <@celticminstrel> | Hm, McM? |
23:15 | <&ToxicFrog> | You may now vomit. |
23:16 | <@celticminstrel> | ToxicFrog: That looks absolutely insane. |
23:16 | <&McMartin> | celticminstrel: "Someone clicked in the button's space. Other widgets nominally in the same space might have Opinions about that" |
23:17 | <&ToxicFrog> | Aah, wait, no, here's the correct version: |
23:17 | <&ToxicFrog> | PID=$(pgrep -laf 'adb restore' | cut -d' ' -f1); SIZE=$(du -Lb /proc/$PID/fd/3 | cut -f1); while true; do cat /proc/$PID/fdinfo/3 | grep pos | cut -f2 | lua -e "io.write(string.format('\\r%03.2f%%', tonumber(io.read('*a'))/$SIZE*100))"; sleep 1; done |
23:17 | <&ToxicFrog> | celticminstrel: so, adb restore doesn't have a progress indicator of its own |
23:17 | <&ToxicFrog> | But the backup archive format is tar-based |
23:17 | <&ToxicFrog> | So it reads the backup archive linearly without seeking |
23:17 | <&ToxicFrog> | So, by watching the position of the read pointer for the fd attached to the backup archive, you can tell how far along it is |
23:18 | <@celticminstrel> | McMartin: Oh, what you're saying is this could be a reason to use the return value for situations other than the LED group? Like, "return false" means it doesn't send it to other controls that occupy the same space? |
23:18 | <&McMartin> | Right |
23:18 | <@celticminstrel> | Hm, okay. |
23:18 | <&McMartin> | Though whether you do this front-to-back or container-to-child will depend on a design. I'm not convinced there's a standard answer there. |
23:18 | <@celticminstrel> | I think I currently stop when I find the first hit, which is probably less-than-ideal behaviour. |
23:19 | <@celticminstrel> | Yeah, that's what happens. |
23:19 | | * celticminstrel adds TODO note. |
23:22 | <@celticminstrel> | (Especially less-than-ideal when I don't really have a concept of layering - the order of controls is kinda arbitrary.) |
23:23 | <@celticminstrel> | But also: is it weird for the group's click event to fire before the clicked button in the group? |
23:25 | <&McMartin> | I want to say "I've seen this both ways" |
23:25 | <&McMartin> | But my inclination is to have the most specific thing fire first |
23:25 | <&McMartin> | Which means that disabling the group has to be careful to individually disable all components. |
23:26 | <@celticminstrel> | Which is easy in this case, since its components are maintained in a separate list. >_> |
23:27 | <&McMartin> | So yeah, I'd say "it's a little weird, but the important thing is to doc it out and make sure it's clear what's going on" |
23:27 | | * celticminstrel nods. |
23:27 | <@celticminstrel> | The whole reason I'm even asking is because I started actually documenting it and noticed things. |
--- Log closed Sat Dec 06 00:00:21 2014 |