<oprypin>
i was gonna post some introduction too but I'm not comfortable with it being indexed by search engines
<FromGitter>
<anamba> @oprypin and... that is somehow more invasive than having all your irc messages being indexed? š
<oprypin>
they are possible to index but usually don't show up, there's a lot of noise
<oprypin>
the introductions are more personal than what i usually write on irc anyway
<FromGitter>
<anamba> along those lines, PSA to everyone here: because of the IRC bridge, everything you post here ends up in public IRC logs
<FromGitter>
<DanilaFe> oh
<FromGitter>
<DanilaFe> that's neat
<FromGitter>
<DanilaFe> there's probably a searchable history somewhere then that isn't through gitter
<FromGitter>
<DanilaFe> Wasn't Vlad Faust working on a Crystal forum? Did he publish it at an unlucky time :(
_whitelogger has joined #crystal-lang
<FromGitter>
<anamba> @DanilaFe it's still there https://forum.crystalcommunity.org/ he just got tired of waiting for the official one i think
<FromGitter>
<DanilaFe> yeah, I'm sure he wouldn't just shut it down right away, but feels like now that there's an official forum, it's preferable to the community forum?
return0e has quit [Ping timeout: 240 seconds]
return0e has joined #crystal-lang
Raimondi has joined #crystal-lang
Raimondi has quit [Ping timeout: 240 seconds]
_whitelogger has quit [Ping timeout: 268 seconds]
_whitelogger has joined #crystal-lang
_whitelogger has joined #crystal-lang
<FromGitter>
<Willyboar> Is there any CI written in Crystal?
<FromGitter>
<Willyboar> I think crystal needs a really cool service to be self-founded.
<FromGitter>
<vladfaust> Hey, yes, Iām going to shut my forum down. The official one does the job š
<FromGitter>
<proyb6> @Willyboar Crystal have been around but for business perspective, Golang is prefer for services
<FromGitter>
<Willyboar> Well then for what crystal preferred?
<FromGitter>
<bararchy> @proyb6 wait what? what do you mean by that?
return0e has quit [Read error: Connection reset by peer]
<FromGitter>
<proyb6> Part of it is popular in China for the growing economy and marketing to push to adoption.
<FromGitter>
<bararchy> Ok I just misunderstood you, all good
<FromGitter>
<proyb6> Go is no friendly to beginner unlike Ruby and I think that could also generate some bad impression that most Ruby (not RoR) developers don't have a good portfolio or knowledge to deliver complex projects unless it's RoR? Kickstarter and Dev.to uses RoR are impressive stories but the only starting point we need is a lot of useful "libraries" to help startups gaining adoptions. Javascript grew too fast for that
<FromGitter>
... reasons, massive packages. Here, we really need an impressive marketing to push forwards in 2019.
<FromGitter>
<Willyboar> @proyb6 that's what I say. Marketing will push crystal popularity.
<FromGitter>
<Willyboar> I have already checked 1,2 but I think they have a lot of time to committed
<FromGitter>
<proyb6> I have tried Play Framework and left although I have participated in giving a cool PlayFramework tag but got changed a bit in their official tagline, it mean nothing to me now even if they have a cool marketing and it's not really high velocity. :) ā https://www.playframework.com/
<FromGitter>
<Willyboar> I think web frameworks for crystal is in the right path. Most of them I tried is cool. Of course there are place for more.
<FromGitter>
<kingsleyh> @bararchy and Oprypin - I've finally got my ECDSA openssl binding lib working - I've switched to using an older version of openssl so that it's easier to use - as I was using the latest convenience methods which were only available in openssl 1.1.1 - but now it should work with almost any version of openssl
<FromGitter>
<kingsleyh> It only has sign and verify so far on the curve - but currently working on the diffie hellman stuff
tdc has quit [Quit: Leaving]
<FromGitter>
<bararchy> nice!
<FromGitter>
<bararchy> great job @kingsleyh
<FromGitter>
<kingsleyh> Thanks for your collective help so far :)
<FromGitter>
<bararchy> not sure how much I helped but I hope you manage that, I know multiple people talked about it
<FromGitter>
<Willyboar> @kingsleyh give a link if you want please. I am checking any library I can
<FromGitter>
<Willyboar> OK I will check it . Thank you for sharing it. š
<FromGitter>
<j8r> @kingsleyh good job! Too bad the wrapper isn't OOP
<FromGitter>
<j8r> `hex_private_key` can be an ivar
<FromGitter>
<kingsleyh> @j8r thanks for the feedback :)
<FromGitter>
<Willyboar> @kingsleyh Nice work but i am unfamiliar with crypto. But I liked your design.š
<FromGitter>
<bararchy> @Willyboar are you looking for a project to help out in?
<FromGitter>
<Willyboar> @bararchy I will take a deeper look in Crystal holidays. I have created a team for open source projects and crystal attract my attention. Although I am open to help if it is possible.
<FromGitter>
<bararchy> Sounds cool, what's your usual fields of interest?
<FromGitter>
<Willyboar> Mostly web but I am curious for desktop apps and devops
akaiiro has quit [Ping timeout: 245 seconds]
Raimondi has joined #crystal-lang
Raimondi has quit [Ping timeout: 240 seconds]
akaiiro has joined #crystal-lang
JuanMiguel has joined #crystal-lang
JuanMiguel has quit [Read error: Connection reset by peer]
Yxhuvud has quit [Ping timeout: 250 seconds]
JuanMiguel has joined #crystal-lang
Yxhuvud has joined #crystal-lang
JuanMiguel has quit [Quit: Saliendo]
<Yxhuvud>
Bleh. Todays AoC was even worse than day20. Part1 was trivial but the only consistent way to solve part2 seems to be to throw sat solvers at the problem :/
<oprypin>
mps, yxhuvud, problem is u probably cant just read part 2?
<mps>
oprypin: I just read and not tried to solve and will not try. don't like such exercises
<oprypin>
yep
Jenz has joined #crystal-lang
non-aristotelian has joined #crystal-lang
non-aristotelian has quit [Client Quit]
DTZUZO has quit [Ping timeout: 250 seconds]
Jenz has quit [Quit: leaving]
<FromGitter>
<girng> @proyb6 reddit is very mean to op in that thread. why i don't post there
JuanMiguel has joined #crystal-lang
JuanMiguel has quit [Client Quit]
return0e_ has joined #crystal-lang
return0e has quit [Ping timeout: 246 seconds]
JuanMiguel has joined #crystal-lang
JuanMiguel has quit [Client Quit]
<FromGitter>
<j8r> Yep me too mps, remind me all this useless exercises in school
<mps>
j8r: right :) I prefer real work where are needs to solve real problems. When read books about new programming where I need to grasp just concepts never do exercises and instead trying to make something what could be useful
* mps
meant new programming languages
<oprypin>
:)
<mps>
btw, my daughter is a IT student, so I have to look (to help her) at really stupid^Wstrange exercises made by academic people :)
<FromGitter>
<j8r> She is on Alpine, at least :P?
<mps>
j8r: yes, but have two VMs, one with Debian for mysql and one with windows10 because professor insist on that crap, and I think he insist because he doesn't know to use anything else
<mps>
'she has' or 'she have', i'm not native speaker
<FromGitter>
<j8r> What DE? KDE, Gnome?
<mps>
she use Xfce, but I use awesomewm
<FromGitter>
<j8r> My pref is (more->less): LXQt, KDE, Xfce, LXDE
<FromGitter>
<j8r> Xfce is great
<mps>
ah, remember from last night chat
<FromGitter>
<j8r> She's probaly one of the few with Linux :(
<mps>
you would like to have LXQt on Alpine
<FromGitter>
<j8r> Haha yes :) Recently they have done a bit a refacto for they build scripts to be POSIX
<mps>
i thought so, but she told me that there are some of her colleges who uses linux, ubuntu
<FromGitter>
<j8r> Nice!
<mps>
but most are on windows
<mps>
can't remember if anyone tried to package lxqt to alpine
<FromGitter>
<j8r> Hopefully it shares components with kde
<mps>
Alpine doesn't have KDE :(
<FromGitter>
<j8r> šæ
<FromGitter>
<j8r> Does she tried Crystal yet?
<mps>
not yet, but i showed her some examples
<mps>
she knows C, C++ and Java (and little perl) so could understand basic of crystal
<FromGitter>
<j8r> And why Alpine and not BSDs like Freebsd?
<mps>
i'm proud father, she was the best in the two first years at faculty
<mps>
Alpine is musl based, doesn't use systemd and packaging is easy
<FromGitter>
<j8r> That's good, nevertheless the most important is to be successful after that :)
<FromGitter>
<j8r> Like BSDs ā alpine remind me them
<mps>
Alpine runs on x86_64, x86, armhf, armv7, aarch64, pppc64
<mps>
i'm one of the early user of Linux, from 1993 year
<mps>
or maybe 1994, can't remember exactly
<FromGitter>
<j8r> the main difference in fact is the kernel vs other BSDs.
<mps>
imo, not big difference
<mps>
and i use some arm and mips small computers, linux is better for them
<mps>
for example, now i type from alpine on chromebook
<FromGitter>
<j8r> Have you tried redox?
<FromGitter>
<j8r> A kernel in Rust, userspace components too
<mps>
i read about it, but didn't thought to try it
<mps>
because i'm conservative, i prefer systems which i understand and don't like to find perfect one, there is no perfect OS, imho
<mps>
looked to learn Rust, but for now don't have something to push me there, probably in future will be forced to learn it, will see
<mps>
and you, you know Rust?
<mps>
from my superficial view it looks as better C++, but not sure
<FromGitter>
<sam0x17> is there a way to call an overloaded version of initialize from initialize?
<FromGitter>
<sam0x17> e.g., I want my 0 arg initialize to call my 2 arg initialize with some default values
<oprypin>
sam0x17, no
<oprypin>
well actually you can call it just fine, just that it won't "count" for anything
<oprypin>
insize an `initialize` you MUST set every `@variable =` directly or through `super`
<oprypin>
inside*
<FromGitter>
<sam0x17> but if those variables have default values, will that "count"?
<FromGitter>
<straight-shoota> @sam0x17 You should usually only define one `#initialize` method (multiple only if they are strictly different) and provide `.new` overloads.
<FromGitter>
<straight-shoota> In your example, just rename the first method to `self.new` and call `new("a different value")`
<FromGitter>
<sam0x17> yeah, can someone give me a high level explanation on the thinking behind new vs initialize, this was something I always didn't understand in ruby
<FromGitter>
<sam0x17> so my most complex (most args) version should be the initialize, and then do new overloads for that basically?
<oprypin>
sam0x17, yeah that was a good suggestion
<oprypin>
i just didnt pick up on it cuz it was attacked from the wrong angle
<oprypin>
sam0x17, so yeah, do that, and also don't forget that you can do helpers. `def helper; @a = foo(); end` won't work but `def helper(); foo(); end; def initialize; @a = helper(); end` will
<FromGitter>
<straight-shoota> `#initialize` does the basic object initialization. The default `.new` implementation (typically not visible) cares about memory allocation etc. and calls `#initialize` which then bootstraps the object. You can provide `.new` overloads for nice API.
trashhalo[m] has joined #crystal-lang
trashhalo[m] has left #crystal-lang ["User left"]
trashhalo[m] has joined #crystal-lang
<oprypin>
sam0x17, also something to help you understand, calling it `initialize` makes absolutely no difference, it's still just a `helper` like above
<oprypin>
but yes, default values stop the requirement of initialization. it's not very nice though, you can end up fooling yourself while fooling the compiler