code logs -> 2017 -> Sun, 05 Mar 2017< code.20170304.log - code.20170306.log >
--- Log opened Sun Mar 05 00:00:50 2017
00:05 LadyOfLight` [catalyst@Nightstar-b3fni2.dab.02.net] has joined #code
00:07 LadyOfLight [catalyst@Nightstar-qbljsg.dab.02.net] has quit [Ping timeout: 121 seconds]
00:10 Turaiel is now known as Turaiel[Offline]
00:24 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has joined #code
00:24 mode/#code [+o Alek] by ChanServ
00:58 Kindamoody is now known as Kindamoody[zZz]
01:21 Turaiel[Offline] is now known as Turaiel
03:05 LadyOfLight` is now known as LadyOfLight
04:01
<&McMartin>
So, Vornotron
04:01
<&McMartin>
Here is an interesting graphics primitive for you, looted from the Spectrum
04:02
<&McMartin>
It has a command for arc-drawing
04:02
<&McMartin>
I'm used to this being "center of the circle, start and end angle"
04:02
<&McMartin>
It provides, instead, "start point, end point, and the angle through which it travels"
04:07
< Vornotron>
svg uses start point (implied), end point, and radius.
04:09
< Vornotron>
I once built one for chalain that was "point at which the arc is horizontal" and "point the circle passes through"
04:09
< Vornotron>
Which was a fun one
04:12
< Vornotron>
postscript has, as "arct", one that can be used for rounding corners: you specify three points A B C such that AB and BC are tangent lines to your target circle, and a radius.
04:15
<@celticminstrel>
What was UCB Logo's arc function...?
04:16
<@celticminstrel>
I think it was something like "centre, radius, arc".
04:16
<@celticminstrel>
^angle
04:16
<@celticminstrel>
Turtke heading was probably used too.
04:16
<@celticminstrel>
^Turtle
04:17
< Vornotron>
LOGO had start point radius and angle through.
04:18
<&McMartin>
Sinclair BASIC's graphics primitives are a weird mix of cartesian plotting and turtle-like effects
04:18
< Vornotron>
actually, logo had start point, start angle, radius, and I think angle through
05:14 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has quit [Ping timeout: 121 seconds]
05:17 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has joined #code
05:17 mode/#code [+o Alek] by ChanServ
05:50 chatter [NSkiwiirc@Nightstar-tk8.fil.141.63.IP] has joined #code
05:50
< chatter>
hey guys
05:51 Turaiel is now known as Turaiel[Offline]
05:52
< chatter>
allah is doing
05:52
< chatter>
sun is not doing allah is doing
05:52
< chatter>
to accept Islam say that i bear witness that there is no deity worthy of worship except Allah and Muhammad peace be upon him is his slave and messenger
05:55 chatter [NSkiwiirc@Nightstar-tk8.fil.141.63.IP] has quit [Killed (Ogredude (Go away now kthx.))]
06:00
<&McMartin>
New Bumbershoot post, in which I cause a ZX81 to suffer various kinds of brain damage: https://bumbershootsoft.wordpress.com/2017/03/05/zx81-basic-programs-and-file-fo rmats/
06:35 LadyOfLight` [catalyst@Nightstar-l75k7l.dab.02.net] has joined #code
06:39 LadyOfLight [catalyst@Nightstar-b3fni2.dab.02.net] has quit [Ping timeout: 121 seconds]
07:14 Kindamoody[zZz] is now known as Kindamoody
08:00 celticminstrel is now known as celmin|sleep
08:20
<&jerith>
Ugh. Piston doesn't seem to have a way to look up mouse coordinates.
08:20
<&jerith>
They only arrive in mouse move events. They notably *don't* arrive in mouse button events.
08:35
< Vornotron>
What.
08:40
<&jerith>
I'm starting to think I should try find a different library.
08:42
<&[R]>
Do they tell you what button is pressed at least, or do you have to wait for the button-up event?
08:42
<&jerith>
They tell you which button is pressed.
08:42
<&jerith>
All the code I've found that uses this tracks mouse position by watching for move events.
08:43
<&jerith>
But you're not guaranteed to get one of those before the first click.
08:59
<&McMartin>
... i'm not sure but I think that tracks every mouse system I've ever seen in the 32-bit world
09:03
<&jerith>
Pretty much everything else I've seen at least gives you a way to query the mouse position.
09:03
<&McMartin>
Under the hood I think those are just secretly tracking the move events themselves
09:03
<&McMartin>
I last remember "where is mouse omg" being a function in, uh, direct BIOS calls in real mode
09:04
<&jerith>
How does SDL do this?
09:04
<&jerith>
Do you know offhand?
09:04
<&McMartin>
Almost positive it's exactly like Piston.
09:04
<&McMartin>
But this is also, IIRC, how Win32 itself does it, unless mouse clicks have position info in them
09:04
<&McMartin>
Which they might
09:04
<&McMartin>
One moment while I check WM_MESSAGE details
09:05
<&jerith>
Most things I've seen put mouse position info in click events.
09:05
<&McMartin>
Aha, Win32 does in fact do this
09:06
<&jerith>
It's incredibly frustrating to get a mouse click event and not be able to use it because you don't know where the mouse is.
09:06
<&McMartin>
SDL also packages the x/y data, it looks like, which makes sense because it also packages window information directly.
09:06
<&McMartin>
Piston isn't looking closely enough at the things that should be its inspirations. =P
09:07
<&jerith>
But in Piston, a mouse click is a Press or Release event with a MouseButton enum in it.
09:07
<&McMartin>
Mouse *Wheel* events do not have locations associated
09:07
<&McMartin>
The x/y there are how far the wheel moved, which implies it's less wheel and more trackball
09:08
<&jerith>
These same events can also hold a keyboard enum of some kind.
09:08
<&McMartin>
This is also true of SDL events, which are very much ML-style tagged unions
09:08
<&McMartin>
Which was one reason I always liked SDL; C does tagged unions so much better than it does OO. -_-
09:09
<&jerith>
This API is doubly infuriating because there are multiple ways in which the mouse position can change without necessarily triggering a move event.
09:09
<&jerith>
A Rust enum is basically a tagged union.
09:10
<&McMartin>
Yeah
09:10
<&McMartin>
That's why there's even less excuse. =P
09:11
<&McMartin>
On consideration yeah this one's on Piston
09:12 * Azash goes to check out a channel on Freenode
09:12
<@Azash>
08:41 < chatter29> allah is doing
09:12
<@Azash>
>_>
09:17
<&McMartin>
Yep
09:29 * jerith tries ggez instead of Piston.
09:31 mac is now known as macdjord|slep
09:40
<&[R]>
<McMartin> ... i'm not sure but I think that tracks every mouse system I've ever seen in the 32-bit world <-- Allegro doesn't!
09:40
<&[R]>
Though Allegro's very different in that it keeps variables of the input state rather than sending events.
09:47
<&McMartin>
Yeah as noted I had that bascacally totally backwards
09:55 * [R] was more giving a really different case
09:56
<&[R]>
As you don't really get told when a button is pushed or the mouse is moved in Allegro, you just ask where things are right now when you care to check.
10:06
< LadyOfLight`>
iirc Allegro vastly changed their input model with 5
10:06 LadyOfLight` is now known as LadyOfLight
10:07
< LadyOfLight>
The older versions are definitely polling all the way down
10:09
<&[R]>
Ah, I haven't used it in a long time
10:10
<&[R]>
IIRC though, you could do it event-based if you wanted to though
10:19 LadyOfLight [catalyst@Nightstar-l75k7l.dab.02.net] has quit [The TLS connection was non-properly terminated.]
10:19 LadyOfLight [catalyst@Nightstar-l75k7l.dab.02.net] has joined #code
10:22 LadyOfLight [catalyst@Nightstar-l75k7l.dab.02.net] has quit [The TLS connection was non-properly terminated.]
10:22 LadyOfLight [catalyst@Nightstar-l75k7l.dab.02.net] has joined #code
10:53 LadyOfLight` [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code
10:54
<&jerith>
Bleh. ggez is very primitive.
10:55
<&jerith>
McMartin, LadyOfLight`: Want to help me build a game engine in Rust? :-D
10:55
< LadyOfLight`>
nope!
10:55
< LadyOfLight`>
but thanks for asking :P
10:57
<&jerith>
Maybe I should just use rust-sdl2.
11:01
<&jerith>
I really want to like Piston, but it's just too broken.
11:02
<&jerith>
I kind of want to like ggez, but it's just too incomplete.
11:06
<&jerith>
ggez is heavily inspired by love2d.
11:07
<&jerith>
If it can do font rendering and input sensibly, I can probably forgive it the bits it's missing.
12:24 himi [sjjf@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds]
12:24 himi [sjjf@Nightstar-v37cpe.internode.on.net] has joined #code
12:25 mode/#code [+o himi] by ChanServ
13:05 LadyOfLight`` [catalyst@Nightstar-hrj6sj.dab.02.net] has joined #code
13:08 LadyOfLight [catalyst@Nightstar-l75k7l.dab.02.net] has quit [Ping timeout: 121 seconds]
14:14 LadyOfLight` [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [Connection closed]
14:45 LadyOfLight`` is now known as LadyOfLight
15:36 LadyOfLight [catalyst@Nightstar-hrj6sj.dab.02.net] has quit [Ping timeout: 121 seconds]
16:15 LadyOfLight [catalyst@Nightstar-ro5mi4.dab.02.net] has joined #code
16:22
<&jerith>
Aargh! This font rendering code is broken. :-(
16:23
<&jerith>
It seems to get everything right, except the actual rendered text is just a grey outline.
16:24
<&jerith>
https://docs.rs/ggez/0.2.2/src/ggez/graphics.rs.html#528-541
16:25
<&jerith>
They set every colour component to the "amount of glyph in this pixel" value.
16:25
<&jerith>
Including the alpha value.
16:27
<&jerith>
I guess now I need to create an intermediate image for this to render to and then I can replace everything *except* the alpha with the colour I want the text to be.
16:33 * celmin|sleep recalls something (SDL_TTF maybe?) that set the text to a solid colour and then using alpha alone to form the outlines.
16:36
<&jerith>
Yeah. Using a provided colour (or texture) and getting the alpha from the font renderer seems like the sensible approach.
16:37
<&jerith>
The thing is, this broken mechanism appears to work if you're drawing white on black.
16:37
<&jerith>
Or white on anything, I suppose.
16:46
<&jerith>
I guess I should just write my own text handler.
16:48
<&jerith>
Since I'd need to replace quite a lot to fix this, I may as well make it work in pixels instead of points and let me choose the size at draw time instead of load time.
16:49 * jerith leaves this for now and starts looking at input handling.
16:51 LadyOfLight` [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has joined #code
17:07 * abudhabi is in devops hell.
17:07
<@abudhabi>
Still boning up on missing technologies.
17:07
<@abudhabi>
The development part is simple enough, I think.
17:07
<@abudhabi>
All these devops tools I barely heard about.
17:10 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has quit [Ping timeout: 121 seconds]
17:11
<&jerith>
Which tools?
17:11
<&jerith>
I probably know some of them.
17:14
<@abudhabi>
Docker and Vagrant. I kiiiinda sorta know a miniscule amount about Docker.
17:14
<&jerith>
Ah.
17:14
<@abudhabi>
I'm still trying to figure out if that's all.
17:14
<@abudhabi>
There's stuff here that I haven't heard of, like Confluence.
17:14 Alek [Alek@Nightstar-cltq0r.il.comcast.net] has joined #code
17:15 mode/#code [+o Alek] by ChanServ
17:15
<&jerith>
Both of those are really terrible things, but both are also about the least terrible things for the stuff they do.
17:15 celmin|sleep is now known as celticminstrel
17:15
<@abudhabi>
JIRA seems to just be a BT, so that's no biggie.
17:15
<&jerith>
Confluence is JIRA's wiki.
17:15
<@celticminstrel>
BT?
17:15
<@abudhabi>
Bug Tracker.
17:15
<@celticminstrel>
Oh.
17:15
<&jerith>
JIRA is HEAVYWEIGHT.
17:15
<@celticminstrel>
???
17:16
<&jerith>
It can be configured to work in all sorts of different ways.
17:17
<@abudhabi>
They gave me https://github.com/acntech/vagrant-xubuntu-developer (and a few repos with demo stuff) on Friday afternoon.
17:17
<@abudhabi>
I think I'm supposed to install that.
17:17 Vornotron [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
17:18
<@abudhabi>
Let's see. Ant, Docker, IntelliJ, Java, Maven.
17:18
<@abudhabi>
I infer that Vagrant is some sort of custom package manager.
17:19
<&jerith>
vagrant is a VM manager.
17:19
<@abudhabi>
OK. What am I supposed to do with it?
17:19
<&jerith>
Think of it as a bunch of automation around virtualbox.
17:20
<&jerith>
That repo really should have instructions in the README.
17:20
<@abudhabi>
OK. So I install it, point it at the repo somehow, receive bacon^W work environment?
17:20
<&jerith>
But basically, you install vagrant and virtualbox, clone that repo, and `vagrant up` inside it.
17:21
<@abudhabi>
Right, OK. So I don't need to actually use Ubuntu. Good.
17:21
<@abudhabi>
I mean, on the hardware level.
17:22
<&jerith>
Then it downloads a base VM image, creates a VM from it, and runs whatever provisioning scripts are provided.
17:22
<@abudhabi>
Cool. Thanks.
17:22
<@abudhabi>
I'll do that once my unnecessary cygwin installation completes.
17:23
<@abudhabi>
So far, I'm hoping to be able to blab my way through the trial week.
17:23
<@abudhabi>
This is a government job, which I apparently got through four intermediary companies.
17:24
<&jerith>
Looking at the Vagrantfile in there, that basically means "apt-get update" and then "run puppet with the provided manifests".
17:24
<@abudhabi>
Given their performance in sourcing me a work laptop (I'm borrowing a spare left over when one of my employers moved to HK), and giving me a list of things to learn (on Friday afternoon, after being reminded of it), I don't think they're terribly efficient.
17:25
<&jerith>
Indeed.
17:33
<&jerith>
Oh gods. They don't specify a version of docker to install.
17:34
<&jerith>
So you basically get whatever is "current" when you set up the VM.
17:34
<@abudhabi>
And that is WELCOME TO DIE territory?
17:35
<&jerith>
abudhabi: You might find yourself needing to ask people what docker version they're running.
17:35
<@abudhabi>
And that would require manual installation.
17:35
<&jerith>
docker operates under the blind-optimism-and-not-thinking-things-through model of software development.
17:36
<&jerith>
So every release has exciting new bugs in it and existing features tend to be poorly designed and full of unexpected behaviour.
17:46
<@abudhabi>
jerith: I expect there's no version of Vagrant for Windows?
17:46
<&jerith>
I don't know.
17:46
<&jerith>
It's a pile of horrible Ruby, so it might work on Windows.
17:47
<&jerith>
https://www.vagrantup.com/ claims Windows support.
17:47
<@abudhabi>
Cool.
18:07 Netsplit Golgafrincham.Nightstar.Net <-> Krikkit.Nightstar.Net quits: PinkFreud
18:08 Netsplit over, joins: PinkFreud
18:18 Netsplit Kakrafoon.Nightstar.Net <-> Krikkit.Nightstar.Net quits: PinkFreud
18:19 Netsplit over, joins: PinkFreud
18:32 * abudhabi feels like in the days he installed Windows for a living. :V
18:32
<@abudhabi>
That waiting while shit installs.
18:32
<@abudhabi>
I've gotten to the point where I've started the vagrant up thingy.
18:36
<@abudhabi>
It appears to be... installing virtualbox? But I installed that already!
18:36
<@abudhabi>
Hm. Seems they ship a One True Version with the thing.
18:39
<&jerith>
That's not the case on OSX or Linux, as far as I recall.
19:15
<@abudhabi>
Hmm. No, now that it finished, it seems it was just downloading a base xubuntu image.
19:44
<@abudhabi>
SSH exited with non-zero, so vagrant assumes that something went wrong... but the virtual machine exists and works, and further `vagrant up` yields 'nothing to see here, all up to date'.
19:46
<&jerith>
Is anything useful showing on the VM's display?
19:48
<@abudhabi>
It seems an ubuntu of some sort. The user name is Vagrant.
19:49
<@abudhabi>
Java seems installed, not sure about other stuff.
19:50
<@abudhabi>
Something seems to have gone wrong with the intellij installation.
19:51
<&jerith>
Try `vagrant destroy; vagrant up`.
19:51
<&jerith>
It won't have to download the base image again.
19:52
<@abudhabi>
OK. It'll still configure for an hour.
19:52
<@abudhabi>
I think.
19:53
<&jerith>
Yeah, it still needs to install things and such.
19:53
<&jerith>
Hrm.
19:53 * abudhabi does it.
19:53
<&jerith>
Maybe `vagrant provision` will help.
19:53
<@abudhabi>
Hopefully, it'll get installed right this time.
19:53
<&jerith>
Try that first, if you haven't already destroyed the VM.
19:53
<@abudhabi>
Destroyed.
19:54 * jerith shrugs.
19:54
<@abudhabi>
Well, it's not like I don't have a couple hours still before bedtime.
20:03 macdjord|slep is now known as macdjord|dance
20:13
<@abudhabi>
jerith: What does provisioning do, anyway?
20:14
<&jerith>
It runs the provisioners defined in the Vagrantfile.
20:14
<@abudhabi>
Which are?
20:14
<&jerith>
If you look down at the bottom you'll see them.
20:15
<&jerith>
One is a shell thing that does "apt-get update", the other runs puppet.
20:15
<@abudhabi>
Yeah, I see it.
20:16
<@abudhabi>
Hrm. Same effect as previously... wait, I think I know what's going on.
20:16
<@abudhabi>
The virtual machine is going into sleep mode, due to inactivity, which causes the SSH connection from vagrant to go tits up.
20:16
<&jerith>
Huh.
20:18
<@abudhabi>
Hm. Or not.
20:18
<@abudhabi>
`vagrant provision` just now had the same effect without the simultaneous sleep.
20:19
<@abudhabi>
==> defaeult: Debug: Processing report from vagrant with processor Puppet::Report::Store
20:20
<@abudhabi>
Then it craps out, and vagrant tells me the SSH command exited with non-zero status code.
20:20
<&jerith>
Something in puppet might be broken.
20:21
<@abudhabi>
I'll complain on Monday.
20:21
<&jerith>
Sometimes it just needs a few runs to get itself sorted out.
20:22
<&jerith>
I can't remember the right commands to run that puppet thing from inside the VM.
20:23
<&jerith>
But you can try `vagrant provision` a few more time.
20:23
<@abudhabi>
I will.
20:28
<@abudhabi>
jerith: Well, it's stopping up in the very same place every time.
20:29
<&jerith>
Can you pastebin the full log?
20:30
<@abudhabi>
That's a mite difficult, but I can at least do the last parts.
20:32
<@abudhabi>
jerith: http://pastebin.com/2dJ9L5wH
20:32
<@abudhabi>
I figure the Error is of some importance.
20:33
<&jerith>
==> default: Notice: /Stage[main]/Intellij/Exec[intellij-install]/returns: gzip: stdin: unexpected end of file
20:35
<&jerith>
So yeah, it's failing to install intellij.
20:36
<@abudhabi>
Proposed solutions?
20:36
<&jerith>
Ask the people who provided it to fix it.
20:37
<@abudhabi>
Right-o.
20:37
<&jerith>
I could probably debug it with a bunch of fiddling in the VM, but it's Sunday night and it's not my VM. :-)
20:37
<@abudhabi>
Understandable.
20:38
<&jerith>
Also, since this is a work thing you should probably be doing it on work time instead of your own time.
20:39
<@abudhabi>
Maybe. I got told to look into this shit over the weekend before my trial week.
20:39
<&jerith>
Are you being paid for your weekend work?
20:40
<@abudhabi>
I'm not even sure I'll get paid for the trial week. :V
20:42 * jerith takes a very dim view of employers who expect people to burn their own time on work projects.
20:48
<@abudhabi>
Well, I'm not super-happy about it, either, but it's the first proper opportunity I've been given with this agency, so I'm gonna try to make a good first impression.
20:56
<@abudhabi>
jerith: Thank you for your help, though. I can at least honestly claim to have done something, but having been impeded by failings of others.
20:57
<&jerith>
Glad I could help.
20:58
<&jerith>
I have dug into several of docker's darker corners, but I have thus far managed to entirely avoid docker-compose.
20:59
<@Tamber>
*blinkblink* docker-compost?
21:00
<&jerith>
No, docker-compose. More accurately described wy shorter form "d-compose".~
21:01
<&jerith>
Some of my colleagues have found it useful, but it seems to be *way* too much of a hack for me to be comfortable with it.
21:01
<@Tamber>
hehe
22:03 mac [macdjord@Nightstar-a1fj2k.mc.videotron.ca] has joined #code
22:03 mode/#code [+o mac] by ChanServ
22:04 himi [sjjf@Nightstar-v37cpe.internode.on.net] has quit [Ping timeout: 121 seconds]
22:05 LadyOfLight`` [catalyst@Nightstar-a531hl.dab.02.net] has joined #code
22:06 macdjord|dance [macdjord@Nightstar-a1fj2k.mc.videotron.ca] has quit [Ping timeout: 121 seconds]
22:08 LadyOfLight [catalyst@Nightstar-ro5mi4.dab.02.net] has quit [Ping timeout: 121 seconds]
22:18 ion_ [Owner@Nightstar-gmbj85.vs.shawcable.net] has joined #code
22:56 ion_ [Owner@Nightstar-gmbj85.vs.shawcable.net] has quit [Ping timeout: 121 seconds]
23:04 LadyOfLight` [catalyst@Nightstar-bt5k4h.81.in-addr.arpa] has quit [[NS] Quit: Leaving]
23:08 LadyOfLight`` is now known as LadyOfLight
23:11 ion_ [Owner@Nightstar-gmbj85.vs.shawcable.net] has joined #code
23:20 ion [Owner@Nightstar-gmbj85.vs.shawcable.net] has quit [Ping timeout: 121 seconds]
23:23 Vornotron [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
23:47 himi [sjjf@Nightstar-dm0.2ni.203.150.IP] has joined #code
23:47 mode/#code [+o himi] by ChanServ
23:55 ion [Owner@Nightstar-gmbj85.vs.shawcable.net] has joined #code
--- Log closed Mon Mar 06 00:00:52 2017
code logs -> 2017 -> Sun, 05 Mar 2017< code.20170304.log - code.20170306.log >

[ Latest log file ]