oznek has quit [Remote host closed the connection]
crespire has quit [Remote host closed the connection]
crespire has joined #ruby
ih8u2 has joined #ruby
ih8u has quit [Ping timeout: 248 seconds]
ih8u2 is now known as ih8u
cleo has joined #ruby
jmcgnh has quit [Ping timeout: 244 seconds]
fantazo has joined #ruby
jmcgnh has joined #ruby
grenierm has joined #ruby
Linux_Kerio has joined #ruby
inline has quit [Read error: Connection reset by peer]
wbooze has quit [Remote host closed the connection]
gr33n7007h has quit [Ping timeout: 245 seconds]
gr33n7007h has joined #ruby
infinityfye has joined #ruby
kinduff has quit [Read error: Connection reset by peer]
kinduff has joined #ruby
wnd has quit [Remote host closed the connection]
wnd has joined #ruby
jmcantrell has quit [Ping timeout: 276 seconds]
dionysus69 has joined #ruby
sarna has quit [Ping timeout: 248 seconds]
sarna has joined #ruby
R2robot has quit [Quit: Pull the lever, Kronk. Wrong leverrrrrrr!]
R2robot has joined #ruby
rvalue has quit [Ping timeout: 252 seconds]
TomyWork has joined #ruby
rvalue has joined #ruby
sarna has quit [Ping timeout: 260 seconds]
sarna has joined #ruby
Linux_Kerio has quit [Ping timeout: 260 seconds]
rvalue has quit [Ping timeout: 252 seconds]
rvalue has joined #ruby
mweckbecker has quit [Quit: leaving]
wbooze has joined #ruby
grenierm has quit [Quit: Client closed]
<nakilon>
I always forget how to choose properly; if I'm returning something that's expensive to fetch (like API with pagination) and let's assume I won't even need the block call form, how do I implement such method? should I return Enumerator with a loop and << operator or should I just yield in a loop?
GreenResponse has joined #ruby
<nakilon>
lame-camel: sometimes it's said the complexity is a square of the number of components; same with the number of participants; I never did any "web" but when I struggled to earn some I agreed to make a scraper service for some analytics company (AFAIK they didn't fully pay us so don't work in such sphere at all, I just had to), and
<nakilon>
... I made the service, it was a docker-compose with 7 containers and databases I've never used, the made up REST API, etc., most of it was new to me but I made it in just a few days, it was so fast to build; because I built it alone )
<nakilon>
it had two layers of tests, docs, manual for my friend to manage it all, etc., and in a year they've never reported a bug in it
<lame-camel>
nakilon, i see.
<havenwood>
nakilon: I've done this before with a memoized Enumerator and Pagy. It does work with some backbending.
<lame-camel>
havenwood, so, how do I register on libera chat an account?
<havenwood>
(I just subclassed, for the API-based pagination I was doing. Pagy was flexible enough to make it work whether I knew number of pages up front. It's extremely annoying not to know the number of pages up front from the API and was the only reason I did the back bending with memoizing.)
<havenwood>
Otherwise there are simpler ways. Also had to go to extra lengths to not run into issues of using Enumerators across thread lines, running afoul of using Fibers across Thread boundaries.
lame-camel is now known as The_Camel
<havenwood>
The_Camel: Good to see you!
The_Camel has quit [Changing host]
The_Camel has joined #ruby
<The_Camel>
havenwood, done :>
<The_Camel>
let me just restart my client
<nakilon>
havenwood: I feel like that was an implementation of paging
<nakilon>
judging by the word "step", etc.
<nakilon>
I don't need to implement it, I consume it; I need to implement a method that would make library user not think about that we used paging
The_Camel has quit [Quit: Leaving]
The_Camel has joined #ruby
<nakilon>
yielding is less code but I don't need blocks, it's just REST API with data items
<The_Camel>
test
<The_Camel>
all good.
<nakilon>
probably I should just agree to put more code in the method
<The_Camel>
havenwood, does doing a WHOIS on me still show my IP address?
<kjetilho>
The_Camel: you didn't need to restart to do that. 13:33Z The_Camel (~lame-came@79.97.133.89) has changed host to ~lame-came@user/The-Camel:40090
axsuul has quit [Read error: Connection reset by peer]
<The_Camel>
well, I hope my IP and lame-camel no longer is associated/shown with The_Camel
<The_Camel>
I don't want people port knocking my router :P
<The_Camel>
havenwood, yeah I think it's very. very. very underestimated :P
<The_Camel>
havenwood, being ruby though, the encryption is like, 7 minutes per 1GB
<The_Camel>
which is fine tbh.
<nakilon>
does it increase file size?
<The_Camel>
it does. not by much though.
<The_Camel>
15%?
trillion_exabyte has quit [Ping timeout: 268 seconds]
trillion_exabyte has joined #ruby
<havenwood>
The_Camel: If you encrypt plaintext twice do you get the same ciphertext each time?
<havenwood>
Are the parens part of the payload from your plaintext example?
<The_Camel>
havenwood, yes to the first question.
<The_Camel>
havenwood, elaborate on the second please. not sure i get you.
<havenwood>
The_Camel: Does the plaintext start with `"Lorem` or `Lorem`
<The_Camel>
havenwood, as per the odt, with ""
<The_Camel>
havenwood, the file you got, fully, as it is, is encrypted, so you'll have the opendocument format encrypted with <xml> and stuff
<The_Camel>
so no, it's not the string inside the odt that is ciphered.
<The_Camel>
it's the whole file.
<The_Camel>
odt is plain text though.
<The_Camel>
you will easily recognize it if you manage to crack it, as you'll see a lot of <xml>
<The_Camel>
inside it, the Lorem string too
<The_Camel>
havenwood, just open up the plaintext odt file and you'll see.
<The_Camel>
with gedit or nano
oznek has joined #ruby
LainIwakura has joined #ruby
infinityfye has quit [Killed (NickServ (GHOST command used by infinityfye__))]
infinityfye__ has joined #ruby
denvermullets has joined #ruby
infinityfye__ is now known as infinityfye
<havenwood>
The_Camel: Was looking wtih xxd. Most cryptography chats are going to want to see the source code.
<havenwood>
The_Camel: Looking at the entropy, I can see most is highly random except for one block, a part of which is highly ordered.
<The_Camel>
havenwood, that... shouldn't be the case as that's not what my algorithm does.
<The_Camel>
havenwood, want me to describe the cipher?
<havenwood>
The_Camel: The Shannon entropy seems lower than I'd expect for ciphertext.
<havenwood>
The_Camel: Yeah, sure! Always fun to look at different tactics.
<The_Camel>
havenwood, first layer, I inverse the file. then I take every 8192 bytes and base64 encode that. nothing major here, just plain confusion tactic
manveru has quit [Quit: Ping timeout (120 seconds)]
<The_Camel>
havenwood, I then apply a hardcoded substitution box for every block
manveru has joined #ruby
<The_Camel>
then for each block, i use XOR with portions of the key in random fashion
<The_Camel>
havenwood, last layer, in case everything fails, I use blowfish.
<The_Camel>
so "perhaps" the ordered portion you see might be from what blowfish is doing
LainIwakura has quit [Quit: Client closed]
___nick___ has quit [Ping timeout: 260 seconds]
wbooze has quit [Ping timeout: 260 seconds]
___nick___ has joined #ruby
<nakilon>
anyone using Sublime with rbenv? looks like SublimeLinter-ruby uses default and does not see .ruby-version
inline has joined #ruby
<nakilon>
not even sure how to know the exact version it uses; it just can't comprehend '...' from 2.7
<o0x1eef>
I don't think banister does much Ruby anymore. He's working a 9 to 5 with C++.
<The_Camel>
i love ruby but I think at some point I'll move to java. or probably JRuby
<o0x1eef>
If I was a Java person I'd definitely jump onto JRuby
<The_Camel>
because unlike these pesky VHLLs like node, python, haskell, ruby, etc, java has opensource IDEs
<The_Camel>
and I value an IDE
<o0x1eef>
Historically with languages like Ruby you usually have an environment of different tools working together rather than a monolith IDE that tries to provide everything.
<The_Camel>
i know. it's the same with the others
<The_Camel>
but I don't want to suddenly drop my favourite text editor in favour of an extension based one JUST CAUSE
<o0x1eef>
Not going to lie, with tools like copilot, the benefits of an IDE became much more obvious to me. A good autocomplete goes a long way.
<The_Camel>
sure. it's a visual debugger I yearn.
graywolf has joined #ruby
<The_Camel>
o0x1eef, right now, jetbrains' rubymine is the paid "defacto IDE" for ruby.
<The_Camel>
nothing exists that comes close.
<o0x1eef>
I think developer environments are very subjective and driven by different priorities. Personally I use emacs. Because I can use it over SSH (mainly). But the important thing is to keep an open mind and be open to change. Especially in this era.
andy-turner has quit [Quit: Leaving]
<The_Camel>
yeah, that's why I wished to skip 200 years ahead :P
andy-turner has joined #ruby
<The_Camel>
because I don't really like this era.
andy-turner has quit [Remote host closed the connection]
<The_Camel>
too much incomplete, half baked, opinionated ways of doing 50 things instead of one, defacto, engineering based approach.
<The_Camel>
all I can do is sigh.
<The_Camel>
IF, I had other options, the mere fact ruby has no opensource IDE would have been reason enough for me to not even bother with ruby.
graywolf has quit [Client Quit]
<The_Camel>
it's that sort of eliminative approach that I take but the industry is retarded so I have to rely on the good bits from everywhere instead of one centralized, primary language.
<The_Camel>
everything has disadvantages
<The_Camel>
lol
<The_Camel>
no sweet spot
<The_Camel>
and I hate that.
<The_Camel>
oh thank god
<The_Camel>
perl has an IDE
<The_Camel>
i might make it a priority to learn perl soon.
<o0x1eef>
Visual Studio Code + plugins?
rvalue has joined #ruby
<The_Camel>
o0x1eef, I mentioned above that, while that's an option, I prefer a fully configured IDE
<o0x1eef>
As things stand, I think that's probably the best you're going to get with Ruby. Not perfect but not terrible.
<The_Camel>
o0x1eef, yeah sure. I'll learn perl as well.
ruby[bot] has quit [Remote host closed the connection]
ruby[bot] has joined #ruby
jmcantrell has joined #ruby
dorian_ is now known as dorian
<The_Camel>
o0x1eef, you don't happen to know of a "search" gem that can be used with a search textbox on the web do you?
<The_Camel>
one that implements the handling of multiple boolean arguments