Saturday, December 21, 2019

so, where am i? what happened?

as noted, i went grocery shopping yesterday afternoon. i left a little before 12:00 and was back around 21:00. so, my computer was off around 10:00. i did a lot of walking yesterday on an empty stomach (i hadn't eaten since tuesday night) and it took a toll on my legs. so, i got something to eat, took a shower and sat down to type, hoping to implement some of the ideas i had thought through regarding the html frontend for the liner notes.

i stated previously that i haven't done any scripting, but that wasn't entirely true; i have taken courses in functional programming, and i was actually unusually good at it. i actually found functional programming to be conceptually easier to understand and work with than object-oriented programming, which is unusual and says something about how i think, in comparison to how others think. it's a sort of a proof that i really am an anarchist to my core being, rather than it being a decision i made as something to identify with, as an adult. i'm more of a concrete thinker and less of an abstract one; i think in terms of very specific and precise details and dwell on those precise details, rather than in terms of lofty principles or generalized concepts, which, in most contexts, i would broadly reject as non-existent. in almost every application and context in reality, generalized concepts and lofty principles have no empirical basis but rather only exist in our minds, and can consequently only lead to confusion and poor outcomes when applied usefully in any conceivable way at all. there is no forest, there are only trees. for that reason, i will almost always reject the application of any sort of generalized knowledge, and will instead look at each situation entirely uniquely, in order to understand the situation as a unique situation, isolated from the situations around it. when i was in school, this tendency would frequently upset my math professors, as i used to prove everything from first principles rather than apply the theorems because i found it easier to work through the specific logic on a case-by-case basis in each precise scenario than apply broad ideas abstractly, which led them to question if i even understood what they were doing, even as i was clearly demonstrating that i did. they were frequently confused as to how a student could make it as clear that they understood the material as i routinely did, yet make it equally clear that they didn't understand how to apply the results of it, which i also did. was i not able to generalize? i ultimately didn't trust the theorems - i felt the need to show everything on a case-by-case basis, instead, to be sure it was actually true. merely citing a theorem struck me as an insufficient way to demonstrate a claim, and i think that is a broader truth to hold to that is more useful in every day life. was it that i couldn't generalize, or was it that i realized that, in truth, generalization is an intellectually invalid process, contrary to the general opinion of historical scholarship? citing theorems is in truth not a good epistemology; your theorem is almost certainly wrong, and attempting to apply it to reality will almost certainly lead to poor outcomes. i did not initially realize any of this, but, at the end of my time studying math, i became cognizant of my identification with a school of mathematics called constructivism, which is an obscure view that rejects much of the platonism underlying the field of mathematics in favour of the requirement of explicit demonstration, every time. i actually prefer the linearity of functional programming and find it easier to follow than the often opaque abstraction of oop, which i'm less adept at understanding. it's just how my brain is wired, but our brains are plastic, and it's consequently a result of experience, and not genes. i've trained myself to think like this. most people would find it difficult to follow the complexity of functional programming and instead prefer the relative simplicity of oop because they've trained themselves (or been trained by the school system) to think in simplified generalizations. we used scheme instead of lisp, but scheme is very similar to lisp and most people would take lisp as their reference point rather than scheme. 

i had an epiphany walking out to get some salami today when i realized i should be approaching this problem less like it's oop and more like it's functional programming, as i worked the logic through during the walk. java is inherently oop, so you wouldn't think to do functional java programming, but the solution became apparent immediately once i did make that shift in mindset.

as mentioned, this is a tricky issue. i'm fighting against the api; i'm asking it to do something it was designed to prevent. in a sense, i'm breaking it. it looks like an easy task, and it would be in any other context, but javascript isn't supposed to be aware of what's happening locally, and it isn't supposed to run without user input. it's supposed to compile remotely. but, as stated, i don't want any of that.

and, no, i don't want to tell people to install some other language, like python. everybody has java; it's baked into the browser. i might have some fun with a lisp-centric browser, though. there was a time when lisp was all over the internet.

if i approach this from a functional programming perspective instead, i should be able to get the right listener to launch on a play error. i was trying to get it to react to the canplay(), which is a haphazard error testing, but it just wouldn't load. i was emulating what the standard pushed down; if you look at the source code in the html5 repository, it must essentially be running a try...catch block in just throwing out the different file types. however, i can't even get it to do that without prompting for a click. it's just the api. it needs some kind of user input.

if i can set the variable to the mp3 array by default and then listen for an error when it tries to play a different file type, i should be able to introduce some adhoc error handling when the error triggers (it will look like an expanded recursion, but i can't recurse because the array is hardcoded, and that's actually the point - it's more like an expanded lisp routine) that checks all of the options and exits when it finds the right one. what i'm imagining doing is really just expanding the built-in error handling by inserting a block of code that handles the error how i want it to, which relies on the ability to write that code functionally, as it exists at run-time, which is not how javascript is supposed to behave (it is how lisp is supposed to behave).

i'm not 100% sure that javascript will do this the same way that lisp or scheme would, but so long as it does, i think it should work.

if not, i'm going to have to ask for the click. so be it.

anyways.

i got out of the shower around midnight and sat down to type, when i went to turn the machine back on to find that same rpcrtremote.dll error. ugh.

we have a pattern here, don't we? it seems to break when i go out. why is that?

why was my chromebook parallel to my bed? it's always perpendicular. always.

why was my universal power adapter, which i use for my laptop, pulled out of it's socket?

why was my (admittedly dilapidated) converted desk all disheveled, as though somebody had tried to move it?

i have checked the power usage, and there's no obvious spike when i was gone. however, it seems like somebody was down here, probably around the same time that the cops were circling around me at the store. the thought crossed my mind, even then.

what, exactly, can i do besides turn the router off and reimage? i got a start on it before i passed out, and got to finishing it this morning. it took a few tries this time, which is making me wonder what they did. i know that what worked was a three-pass format of the drive, indicating that they may have inserted something in there pretty deeply.

when i got back up, i checked my email and found a response from the oiprd, who were supposed to provide an application record by thursday but are instead offering to redo the review around the question of the arrest. i rejected their request outright. they are continuing to insist on this reductionist perspective, and they're still refusing to consider the pattern of harassment by the officer, which is the actual crux of the complaint. i fully expect that if i were to allow them to conduct a second review, they'd miss every deadline, and i'd either be back in divisional court for delay or in divisional court for review. that strikes me as a pointless waste of time, and i don't want to go through with it - i want the issue dealt with by an actual judge, and i think i should have had the right to get the thing in court from the fucking getgo.

they pointed out that a case was released yesterday that updates dunsmuir, so i had to take a look at it. as mentioned, i don't think the new rules really affect this particular case, but i hope that the outcome isn't a lessening of judicial oversight. the oiprd is a good example of the kind of tribunal that needs serious judicial oversight. it may have statutory powers, but it has no relevant expertise, whatsoever. i poked around a little, and some for-profit style lawyers are claiming they love it, but i'm not sure the reasons they're providing are very well thought through. if their optimism pans out, the result could be an americanizing of the law, which would be deeply catastrophic, for canada. i don't want to be an american. i'm afraid of americans.

so, for example, the language about not needing to check the expertise of the panel is very worrying on the surface (i would strongly support the use of judicial review in scenarios where the tribunal does not have the expertise to rule correctly, and who could argue otherwise?), but so long as the judiciary continues to pull these cases on the basis that the rulings are unreasonable, it might be less of a problem than i'm imagining that it could be. i think the previous precedent is more thorough, but i do acknowledge that there is sometimes a redundancy in worrying about whether the panel did do it right or whether the panel can do it right; if the panel can't do it right, they almost certainly didn't do it right, so this scenario where they don't have the expertise and somehow get the right answer is going to be exceedingly rare. but, the law should be thorough, and if this is a taste of the direction that the court is moving in, there should be some critical essays written about it to try and pull them back from it. there's no purpose in hardcoding logical shortcuts into the law, like that.

frankly, the truth is that it's lazy, and that's maybe the easy way to state what's wrong with the changes they made. there may not be serious, substantive differences, but it's far less rigorous, and it just comes off as lazy and haphazard.

the thing those lawyers wanted to see was a precedent that didn't bother assessing the abilities of the panel, and you can imagine scary outcomes resulting from the judiciary mindlessly deferring to these unqualified juntas "because legislation". the worst case scenario is a perfect algorithm for third-world backwardsness. it's potentially devastating, but only if they actually defer this way (and, my case is actually an example of this, as the judiciary should not be deferring to "members of the community" on issues of law, that would be retarded), and, so long as they continue to defer properly to the reasonableness standard, they really shouldn't.

likewise, abolishing the correctness standard is at first glance a pretty frightening proposition. certiorari is one of the oldest rules that we have. the supreme court should hardly be gutting 2500 year old roman precedent; this is the heart of our legal system, arguably the most important legal precedent that we have, anywhere, ever. certiorari does exist in ontario statute, but this is a part of the "unwritten rules and conventions" in the preamble of the constitution, really. a western legal system would no longer be a western legal system, without it.

however, taking a closer look at it pulls out that they aren't actually doing that. rather, they're just fucking with the language and, in the end, they might even be giving themselves more power, if they no longer have to rely on anything besides a broad and purposefully undefined concept of "reasonableness".

obviously, the judiciary needs a check on it, too - the principle of judicial independence is paramount, but they can't have absolute power. however, i think the balance of power should lie in the courts, and not in these panels and tribunals. i'm in favour of activist judges; what i'm worried about is giving these "independent bodies" too much power. so, i would appear to be directly ideologically opposed to the new chief justice on this matter. and, again this is frustrating, because the guy was put in power by the liberals, and he's carrying through with a reform party style harperist agenda.

it's not as bad as it looks at first; i honestly don't think it will be nearly as substantive as some commenters are suggesting.

i've been at that all afternoon.

now i need to get back to the html frontend; let's hope this new approach works,

what to do about this thing? i've kept the image unmodified from the backup, to see what happens. will it stay stable for a while? a strict reimage doesn't take that long, but how long can i avoid it for?