IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#saltr
/2023/10/22
Irc2PGuest60863 it's of course literally much more human readable
Irc2PGuest60863 no sane person would say a bunch of rando text dumped in a file without any kind of dates or comments is more human readable than a self-describing format like xml where stuff is clearly labeled and namespaced
Irc2PGuest60863 it's only weirdly insane programmers who can't see things from their own weirdly insane pov that think otherwise
Irc2PGuest60863 ironically I've just had this discussion in real life where the stakes actually mattered
zzz definitely a hot take, I give you credit for standing by it
dr|z3d > <Irc2PGuest60863> xml is much more human readable than a custom format
dr|z3d what do I want to see in my file? an ip address, and a hostname. that's it.
Irc2PGuest60863 the real problem with developers writing their own custom formats btw is that it leads to brittle software. unless performance is an absolute priority there's no reason to do it. in this case even csv would be better than dumping a bunch of rando text to disk
zzz <zzz> the file format objection is silly but if you claim it's a csv file you might win the argument
dr|z3d this conversation is becoming circular. the reason the format is the way it is is entirely because that's what I want. it's human readable. if I just wanted a file, I could dump the stream to disk.
dr|z3d yeah, I'm not claiming it's anything other than what it is ip -comma - {hostname|"unknown"} - \n
Irc2PGuest60863 dr|z3d: the format is just a time bomb waiting to go off. encoding it as utf-8 is almost certainly a mistake since hostnames and ip addresses are all guaranteed to be ascii. And if you have a file that humans can edit or merge and there's no way to validate it or even labels describing what's what, it's just a matter of time until somebody makes a mistake and puts the data in wrong
Irc2PGuest60863 stuff like this is learned through experience. I don't expect to convince you and don't care either way. My point was, "inventing your own file format is a bad idea unless performance is an absolute concern". anything else would be better even Java Properties File Format
RN this file is a cache, so performance IS THE concern
dr|z3d put some wrong data in there, see what happens. I'll tell you. not much.
dr|z3d you want to corrupt the file, go ahead.
dr|z3d it's only enabled right now if you explicitly enable it.
dr|z3d so time bomb is a shade hyperbolic.
dr|z3d can it be improved? no doubt. does it work as is? yes. so, you know, show me the code. put your money where your mouth is.
zzz it *is* csv, but somehow that point's been lost
dr|z3d I wasn't going to force the point, but yeah :)
Irc2PGuest60863 zzz: is it really? I wasn't sure about that because of the newline thing but anyways if so use a proper csv library for reading and writing it
zzz we don't pull in 3rd party libs for trivial stuff
dr|z3d > the newline character is used to indicate the end of a row or record in a CSV file
Irc2PGuest60863 csv certainly has different rules about line termination on different oses. that code might produce valid csv on unix I think but it'd blow up windows
Irc2PGuest60863 dr|z3d: it would certainly blow up some windows tools which want csv to end in /r/n
dr|z3d who cares? if you need it windows format csv, convert it. it's primary purpose is to serve as a cache.
Irc2PGuest60863 then again "pretend windows doesn't exist, follow unix conventions everywhere" can be a valid strategy
dr|z3d if you want to do stuff with it in windows and treat it as a valid line terminated csv file, you'll know how to handle it.
Irc2PGuest60863 dr|z3d: like I said the problem comes up when people actually try to use the file. you might say its csv but wait until bob tries to open it in his favorite csv editor. the larger point here is that following standards and not reinventing the wheel is generally a good way to go and it's not really controversial
dr|z3d you're creating problems that don't exist except in your imagination.
Irc2PGuest60863 in this specific case I could go either way until you said you see people editing this file manually. in that case I'd tell you to delete the file and never speak of it again
Irc2PGuest60863 the file format should have a version identifier too lol
dr|z3d I don't mind taking feedback from zzz because a) he actually codes rather than just speaking about it, and b) he's insightful.
dr|z3d And just as importantly, he actually knows what he's talking about when it comes to i2p.
zzz his code review is spot-on, he found things I missed, so don't stop listening
dr|z3d I'm listening, but I'm also becoming somewhat annoyed with the "you should do this, you should do that" line of discussion.
RN all files should end with RN
RN :D
RN meanwhile back at the ranch, I'm stuck on rule 16 here neal.fun/password-game
dr|z3d you haven't got time for games! content, content, content, as Steve Ballmer might have said :)
dr|z3d did you update, mesh. and if so, still tracker2 issues?
RN LOL
RN need the distraction in different flavors
Irc2PGuest60863 dr|z3d: I'll update right now
Irc2PGuest60863 well not right now... soon
RN not in the right frame of mind for code right now, was working on something earlier and just kept making errors
dr|z3d 62+ might have been one of those fat finger updates, can't remember.
dr|z3d some rrd4j updates, nothing hugely exciting, zzz, but he bumped the version.
T3s|4_ lols - let's jump forward 50 releases; just upgraded a long ignored Fed system from F38 to F39; as well from -16+ to -66+ :D
RN T3s|4_, is a Fed? Oh noes!
T3s|4 yep, long term Fed here, since it was called Core. Go warrantless, mass-surveillance NSA!!! ;p
dr|z3d and -67+ now available!