Post 9rxe8koH433OUQkdIO by riking@orb.an6.us
 (DIR) More posts by riking@orb.an6.us
 (DIR) Post #9rwD3baj1GKaWxm3ma by velartrill@pleroma.site
       2020-02-11T19:07:22.898195Z
       
       1 likes, 0 repeats
       
       SCREAMINGimage.png
       
 (DIR) Post #9rwD3bvdlV3rZpYlNo by velartrill@pleroma.site
       2020-02-11T19:14:11.022194Z
       
       3 likes, 0 repeats
       
       > "lightweight"> init> pythongod have mercy on us all
       
 (DIR) Post #9rwD3cO043kKzmpPaS by velartrill@pleroma.site
       2020-02-11T19:14:20.714666Z
       
       0 likes, 0 repeats
       
       just use C you fucking freaks
       
 (DIR) Post #9rwD3cnWXAAAGwlnN2 by farhan@social.farhan.codes
       2020-02-11T19:23:46.969121Z
       
       0 likes, 0 repeats
       
       @velartrill I used to think that too, but there are some real advantages to using python over C.
       
 (DIR) Post #9rwD3dJ4drOrqnWzY0 by velartrill@pleroma.site
       2020-02-11T19:24:19.415127Z
       
       0 likes, 0 repeats
       
       @farhan not for init!!
       
 (DIR) Post #9rwD3dkN0NEbDSIn5s by feld@bikeshed.party
       2020-02-11T19:33:20.747131Z
       
       1 likes, 0 repeats
       
       @velartrill @farhan the advantage is that it’s so slow you’ll have time to take a break at work. Unless you’re on freebsd and we patched the slowness out of pythonhttps://svnweb.freebsd.org/ports?view=revision&revision=518640
       
 (DIR) Post #9rwFS6WTrsZfJzbAv2 by farhan@social.farhan.codes
       2020-02-11T19:51:06.624390Z
       
       0 likes, 0 repeats
       
       @feld @velartrill Writing the code takes time too. It really depends what you're doing.
       
 (DIR) Post #9rwFS7HH3u0Lf7UXr6 by velartrill@pleroma.site
       2020-02-11T19:55:20.597753Z
       
       0 likes, 0 repeats
       
       @farhan @feld yeah and if this were a one-off quick hack kind of thing i could understand it, but it's part of a major project that huge numbers of people use & was intentionally released for that purpose
       
 (DIR) Post #9rwFS8D3b4E2YKWgvA by feld@bikeshed.party
       2020-02-11T20:00:11.795318Z
       
       2 likes, 0 repeats
       
       @velartrill @farhan and don't forget that the python 3 runtime startup penalty is like 3000ms now, so imagine the pain of launching a thousand containers on this
       
 (DIR) Post #9rwFxgGZ1dFf9dD6wq by velartrill@pleroma.site
       2020-02-11T20:01:36.802725Z
       
       0 likes, 0 repeats
       
       @feld @farhan hahaha WOW three fucking seconds?? that's insane
       
 (DIR) Post #9rwFxgf1YgokNUee4e by feld@bikeshed.party
       2020-02-11T20:05:54.459204Z
       
       1 likes, 0 repeats
       
       @velartrill @farhan it might be better now, but 3.x series has been pretty terrible. There were people with automated infrastructures glued together with tons of individual python scripts and when migrating to 3.x the jobs couldn't finish in time anymore.
       
 (DIR) Post #9rwqQfZGIWIzjh4vaq by IRC@fedi.absturztau.be
       2020-02-12T02:54:32.966156Z
       
       0 likes, 0 repeats
       
       @farhan we missed you @cvcvcv ;-;@velartrill hey man, I understand where you're coming from, but if your static compiler takes ages to build and _run_, you might want to optimize your toolkits.Time is money. Anyways GCJ is ok.
       
 (DIR) Post #9rwraZURqhJvjj7212 by farhan@social.farhan.codes
       2020-02-12T03:00:19.115561Z
       
       0 likes, 0 repeats
       
       @IRC @velartrill missed me? Huh??
       
 (DIR) Post #9rwraZwSAZip8aDOfQ by IRC@fedi.absturztau.be
       2020-02-12T03:07:34.022365Z
       
       0 likes, 0 repeats
       
       @farhan I missed a character @velartrill used to roleplay as:https://bsd.moe/users/cvcvcvSeems the market moved to kotlin for native machine code.
       
 (DIR) Post #9rxGhA1dQFEPdksFPc by lachs0r@nazrin.moe
       2020-02-11T19:17:21Z
       
       1 likes, 0 repeats
       
       @velartrill you realize docker is literally a hackernews invention, rightalso it’s written in go
       
 (DIR) Post #9rxGhbjAQV61YaRtVw by velartrill@pleroma.site
       2020-02-11T19:23:19.231213Z
       
       1 likes, 0 repeats
       
       @lachs0r aaaaaaaaaaaaaaaaa
       
 (DIR) Post #9rxGkn5Ieqr1eHJqrY by rabcyr@mastodon.social
       2020-02-11T23:43:07Z
       
       0 likes, 0 repeats
       
       @feld @velartrill @farhan WAT!?
       
 (DIR) Post #9rxGknkmAe1ziuiyVk by rabcyr@mastodon.social
       2020-02-11T23:44:36Z
       
       1 likes, 0 repeats
       
       @feld @velartrill @farhan i’m annoyed that the mongodb perl driver has an almost half second penalty, when most everything else in perl loads in an imperceptible amount of time
       
 (DIR) Post #9rxWfGLIYxRnv6BjZg by velartrill@pleroma.site
       2020-02-12T00:11:19.477468Z
       
       0 likes, 0 repeats
       
       @rabcyr @feld @farhan jeez is it calling out to PHP or something
       
 (DIR) Post #9rxWfGrYd1FfX9HUrA by tyil@soc.fglt.nl
       2020-02-12T10:47:45.624503Z
       
       0 likes, 0 repeats
       
       @velartrill @rabcyr @farhan @feld I know you’re joking, but of course, Perl can do this: https://metacpan.org/pod/PHP::Include
       
 (DIR) Post #9rxe8koH433OUQkdIO by riking@orb.an6.us
       2020-02-11T19:28:41.638140Z
       
       0 likes, 0 repeats
       
       @velartrill @farhan but all it has to do is start processes and wait on children? It's not setting up block devices or anything, that's done by the container runtime
       
 (DIR) Post #9rxe8lUSXCnWbGUK36 by velartrill@pleroma.site
       2020-02-11T19:54:40.444948Z
       
       0 likes, 0 repeats
       
       @riking @farhan and that's a reason to use python???
       
 (DIR) Post #9rxe8ltz0JDLsQQhpg by riking@orb.an6.us
       2020-02-12T03:02:28.594261Z
       
       0 likes, 0 repeats
       
       @velartrill @farhan it's a reason to use whatever the fuck you want / whatever the rest of your code is in
       
 (DIR) Post #9rxe8mYOa3XZtlKyp6 by velartrill@pleroma.site
       2020-02-12T12:01:23.277736Z
       
       0 likes, 0 repeats
       
       @riking @farhan its a fucken init
       
 (DIR) Post #9rxe8n3wgkmHTc6B04 by lachs0r@nazrin.moe
       2020-02-12T12:06:41Z
       
       1 likes, 0 repeats
       
       @riking you have no business doing systems programming if you’re not ready to write the 100 lines of C that it takes for this minimal init@velartrill @farhan
       
 (DIR) Post #9ryq61QOEBJDl70FUm by velartrill@pleroma.site
       2020-02-12T12:01:42.330264Z
       
       1 likes, 0 repeats
       
       @IRC @farhan > a character @velartrill used to roleplay aswat
       
 (DIR) Post #9ryqi7DH9eHIiR27yy by lachs0r@nazrin.moe
       2020-02-12T12:22:40Z
       
       0 likes, 0 repeats
       
       @IRC @velartrill @farhan kotlinnative machine codeit runs on the jvm you clown
       
 (DIR) Post #9ryqi7dVa7GI1nJ4s4 by IRC@fedi.absturztau.be
       2020-02-13T02:07:08.482456Z
       
       0 likes, 0 repeats
       
       @lachs0r target LLVM, it's in your options:https://kotlinlang.org/docs/reference/native-overview.htmlI've been trying it all day long, it's okish.I can see the potential for cross compilation already on androids & lineageos and other platforms. Importing to netbsd is going to take me a while.Also, try being nice to people, it does wonders.@velartrill nvm then, I really enjoyed it.@farhan untag?
       
 (DIR) Post #9ryr6hs4VqRfMHqE9g by farhan@social.farhan.codes
       2020-02-13T02:11:34.908493Z
       
       1 likes, 0 repeats
       
       @IRC @lachs0r @velartrill I'm reading along :)
       
 (DIR) Post #9rysFVk34wUMIfqo8O by lachs0r@nazrin.moe
       2020-02-13T02:24:01Z
       
       1 likes, 0 repeats
       
       @IRC @velartrill @farhan oh yeah, okay.hang on, hello world in kotlin/native generates an executable that’s nearly 200k in size (after stripping), which is even larger than the garbage that comes out of rustc (which somehow ends up making over 120 syscalls)just go away
       
 (DIR) Post #9rysO2NfbxuVqSRuCG by farhan@social.farhan.codes
       2020-02-13T02:25:56.661775Z
       
       0 likes, 0 repeats
       
       @IRC @lachs0r @velartrill Here, I'll contribute to this conversation.Depending on what I was writing, I would use the language for that purpose, but I think there's a business case to be made here:While C is indisputably faster, there is a time cost associated with writing it - it takes longer and is "harder" if you aren't used to thinking in terms of memory (btw, I find that easier, but I also grew up with it, so I'm not representative)Just today I had to write some code that parsed out a fairly large CSV file. I wrote a parser in python in about 1 hour which did the job, and then I threw away the code.If I wrote something similar in C, it would take me a lot more time, maybe 2-3 hours, PARTICULARLY AROUND STRING MANIPULATION. The execution of this code took 15 minutes in python. Let's say it ran in 2 minutes in C. I would much rather lose 13 minutes than of execution time than 1 hour of writing time.
       
 (DIR) Post #9rysW9wTNlchc3bImG by velartrill@pleroma.site
       2020-02-13T02:27:05.993775Z
       
       1 likes, 0 repeats
       
       @lachs0r @IRC @farhan yeah kotlin has its whole own massive stdlib that it embeds into everything it compiles. with java it's much worse, i'm frankly amazed that they managed to trim it down to 200K for native
       
 (DIR) Post #9rysbprKxkfR43uAds by farhan@social.farhan.codes
       2020-02-13T02:28:26.925748Z
       
       0 likes, 0 repeats
       
       @velartrill @lachs0r @IRC Winter, ask yourself, why don't you write everything in assembly? I've produced some pretty wicked binaries in ASM that C couldn't touch.If you say "it takes a lot longer", that's sorta the point with using python over C.
       
 (DIR) Post #9ryssNvk3Tp1MprAx6 by farhan@social.farhan.codes
       2020-02-13T02:31:25.783280Z
       
       0 likes, 0 repeats
       
       @velartrill @IRC @lachs0r I wrote a fairly large web application in Python with the Django and Twisted libraries. The target customer would have been end users on their browsers.I had a moment where I thought "I should have written this in Go, its closer to the metal than python is". But then I realized, that also would have taken me 100x longer to write, and I would have never taken it to market. Even if I had 1000 users at once, I know my code would have ran just fine on even older server hardware.We have to look at the business tradeoffs.
       
 (DIR) Post #9ryt0M4KrMDpuXg0vo by velartrill@pleroma.site
       2020-02-13T02:31:34.877132Z
       
       0 likes, 0 repeats
       
       @farhan @IRC @lachs0r絵.png
       
 (DIR) Post #9ryt0N1BKZIGr3D0ee by farhan@social.farhan.codes
       2020-02-13T02:32:50.765865Z
       
       0 likes, 0 repeats
       
       @velartrill @IRC @lachs0r haha, that's awesome, you're not playing around. What are you writing? (relevant to the conversation)
       
 (DIR) Post #9rytBHmN9Ii1nAUF3w by lachs0r@nazrin.moe
       2020-02-13T02:31:41Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @velartrill fair enough. also, every time you write a csv parser, god kills a kitten, because it is a deceptively simple task. (i have been in the unfortunate position of working around bugs in other people’s csv parsers/writers — ironically the ones written in C worked just fine)
       
 (DIR) Post #9rytBIQ4lgT5mJ3wwq by farhan@social.farhan.codes
       2020-02-13T02:34:49.503600Z
       
       0 likes, 0 repeats
       
       @lachs0r @IRC @velartrill I wasn't writing one, I was just using the standard python library.I'm sure C works just fine, but it would have taken me longer to write.
       
 (DIR) Post #9rytFXqlL95KnEZTYe by velartrill@pleroma.site
       2020-02-13T02:32:37.779737Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @lachs0r a web application is not an init
       
 (DIR) Post #9rytFYDnxTW5whLsTQ by farhan@social.farhan.codes
       2020-02-13T02:35:37.313157Z
       
       1 likes, 0 repeats
       
       @velartrill @IRC @lachs0r wait, is this conversation about init scripts or using C vs higher level in general?
       
 (DIR) Post #9rytMFGIqf6JAciEU4 by velartrill@pleroma.site
       2020-02-13T02:34:50.581581Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @lachs0r oh, it was just a proof-of-concept asm binding to xlib. i never ended up doing anything with it because i lost the mental bandwidth for graphical programming
       
 (DIR) Post #9rytMFWxqiQc0IVXSC by farhan@social.farhan.codes
       2020-02-13T02:36:48.874304Z
       
       1 likes, 0 repeats
       
       @velartrill @IRC @lachs0r I was writing a fairly large C reimplementation of git for FreeBSD. I just stopped after a while because I was having a crash and didn't feel like debugging it...well, the real reason is because I got married and my time went away :)
       
 (DIR) Post #9rytSkmUZdIwf9s86i by velartrill@pleroma.site
       2020-02-13T02:36:51.196527Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @lachs0r not init scripts, init daemons themselves. i.e. PID 1
       
 (DIR) Post #9rytSlAx6gs1t1JfEW by farhan@social.farhan.codes
       2020-02-13T02:37:59.558984Z
       
       0 likes, 0 repeats
       
       @velartrill @IRC @lachs0r ohhhhhhhh, then yes. C all the way. Yeah, there's really no question here. You should write that in C. Is anyone saying otherwise?
       
 (DIR) Post #9rytg1NSBHHvtpUFqC by velartrill@pleroma.site
       2020-02-13T02:37:56.643997Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @lachs0r have you looked into fossil btw? it's what i've been using exclusively for years and i'm extremely happy with it. much less painful than git in nearly every way (unless you need commit hooks or shit like that, which it still doesn't have for some reason)
       
 (DIR) Post #9rytg2C98nq0R3Cjr6 by farhan@social.farhan.codes
       2020-02-13T02:40:23.073357Z
       
       0 likes, 0 repeats
       
       @velartrill @IRC @lachs0r I haven't, I am pretty content with regular git now. I realized, its a business tool, first and foremost. If its meeting the need there's no need to reinvent the wheel.I'm more passionate about writing kernel drivers.https://github.com/khanzf/opengitYou can see exactly when I got married :)
       
 (DIR) Post #9rytlPPoEfd5tr9qsq by velartrill@pleroma.site
       2020-02-13T02:36:16.624053Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @lachs0r *GUIof course, the penalty of writing software in assembly is that it's permanently locked to that processor. as someone who runs her code on both ARM and x86-64 very frequently i usually write things in C or a language that compiles to C (mostly chicken scheme)
       
 (DIR) Post #9rytnVOux69z2jjyXg by velartrill@pleroma.site
       2020-02-13T02:40:20.398525Z
       
       0 likes, 0 repeats
       
       @farhan @IRC @lachs0r @riking (who seems to have been dropped out of this branch of the thread) was arguing that python was better for this because it was "safer"
       
 (DIR) Post #9rytnVpVMFQYNCBCz2 by farhan@social.farhan.codes
       2020-02-13T02:41:44.755167Z
       
       0 likes, 0 repeats
       
       @velartrill @IRC @lachs0r @riking it depends. it can be...depends what you're doing, I guess.
       
 (DIR) Post #9rytoSTvI8DkHLXJ2G by velartrill@pleroma.site
       2020-02-13T02:41:34.091670Z
       
       2 likes, 0 repeats
       
       @farhan @IRC @lachs0r my writing took a similar hit when @lachs0r and i got married haha. loooot going on
       
 (DIR) Post #9rytrp0O0PmJ0GKAVs by velartrill@pleroma.site
       2020-02-13T02:40:39.992224Z
       
       1 likes, 0 repeats
       
       @farhan @IRC @lachs0r @riking there, third time's the charm
       
 (DIR) Post #9rytwJywmDP6EanSVM by farhan@social.farhan.codes
       2020-02-13T02:43:20.371791Z
       
       0 likes, 0 repeats
       
       @velartrill @IRC @lachs0r That's funny.So, is part of your argument that python, because it has more abstraction layers + cruft, is more prone to failure than C which will inherently be less code?
       
 (DIR) Post #9ryuRubcezkYnXwzcu by lachs0r@nazrin.moe
       2020-02-13T02:46:20Z
       
       0 likes, 0 repeats
       
       @farhan @IRC @velartrill not only that — it also is a completely irresponsible use of system resources, especially when the situation calls for a “lightweight” initliterally just including barebones systemd in the image would have been more lightweight than pulling in python.
       
 (DIR) Post #9ryuRv7AlgzGNOiBns by farhan@social.farhan.codes
       2020-02-13T02:49:02.329513Z
       
       0 likes, 0 repeats
       
       @lachs0r @IRC @velartrill oh...if its init, It strikes me as very odd that you would use anything but C.I'd have to know the business case for anything but C. Maybe a PoC ?
       
 (DIR) Post #9ryudTbkrasuXaWisS by IRC@fedi.absturztau.be
       2020-02-13T02:51:09.143990Z
       
       0 likes, 0 repeats
       
       @lachs0r apologies, I thought you wanted me to compare CXXs and python, when I was introducing @farhan to the fact that the current implementations of python yield to many debts @velartrill was talking about.I also understand farhan's point if view: you something need quick prototypical code to ship something quick and be done with, both everyone here is right: we need both a language prototyping becomes second nature, and it writes efficient native code for the target architecture.When I used to program in Java, I focused on GCJ because it used GCC's assembler, and you could customize everything.That's obsolete, and the market moved to kotlin; so much, banks are using it internally.Evangelism doesn't work, but building the tools everyone needs does.I'm not gone, I am busy with my family after a long day. This is my reading time.For inits, we do need something new, I'm on Riscv, jcore, and arms, post spectre disclosures.
       
 (DIR) Post #9ryurNvOn2mcy8LaAi by lachs0r@nazrin.moe
       2020-02-13T02:53:24Z
       
       1 likes, 0 repeats
       
       @IRC @velartrill @farhan it just strikes me as odd that with all the “safer” ”easier” systems programming languages popping up, no one’s been taking care of the elephant in the room: libc
       
 (DIR) Post #9ryuw7QjXmwZGAGFBw by IRC@fedi.absturztau.be
       2020-02-13T02:54:31.284572Z
       
       0 likes, 0 repeats
       
       @lachs0r that's part of everyone's debts.I'm willing to say on record Harvard archs were too.@velartrill @farhan
       
 (DIR) Post #9ryv32xsXpMRRC4Gum by farhan@social.farhan.codes
       2020-02-13T02:55:45.900524Z
       
       0 likes, 0 repeats
       
       @lachs0r @IRC @velartrill What's wrong with libc?
       
 (DIR) Post #9ryvCIqGsmKvHovIkS by farhan@social.farhan.codes
       2020-02-13T02:57:25.639181Z
       
       1 likes, 0 repeats
       
       @IRC @lachs0r @velartrill oh, on a side note...I asked one of the engineers here why they use Java. He said Java's JIT compiler is so efficient these days that it is comparable to system-level languages for their purposes.They also custom modified openjdk :)
       
 (DIR) Post #9ryvDIDQhI6ddJE9oW by IRC@fedi.absturztau.be
       2020-02-13T02:57:36.246592Z
       
       0 likes, 0 repeats
       
       @lachs0r @velartrill you two be kind.@farhan you have unleashed a wall of text.
       
 (DIR) Post #9ryvMhJyiykk6Rm7Si by IRC@fedi.absturztau.be
       2020-02-13T02:59:18.489120Z
       
       0 likes, 0 repeats
       
       @farhan that was probably me. Shhhhhh.But no, the Oracle vs. Google case made me switch back to C89 + chicken scheme. Lots and lots of work to do.@lachs0r @velartrill
       
 (DIR) Post #9ryvRF80yMk670LXxw by velartrill@pleroma.site
       2020-02-13T02:59:47.764301Z
       
       1 likes, 1 repeats
       
       @farhan @lachs0r @IRC it would be easier to answer the question, "what isn't wrong with libc"c.comint.su/libk has some details
       
 (DIR) Post #9ryviyqgEqTepmhEfI by lachs0r@nazrin.moe
       2020-02-13T03:01:29Z
       
       1 likes, 0 repeats
       
       @velartrill @IRC @farhan there’s also wm4’s rant on libc locale bullshit https://github.com/mpv-player/mpv/commit/1e70e82baa9193f6f027338b0fab0f5078971fbe
       
 (DIR) Post #9ryvjMj3Sqdct5JU6y by lachs0r@nazrin.moe
       2020-02-13T03:02:16Z
       
       1 likes, 0 repeats
       
       @velartrill @IRC @farhan (some of the comments are interesting as well)
       
 (DIR) Post #9rzCEjnpJTjyheWhyi by riking@orb.an6.us
       2020-02-13T03:45:43.282350Z
       
       0 likes, 0 repeats
       
       @farhan @velartrill @IRC @lachs0r sorry, that wasn't the actual reasoning I have, might have gotten lost in my wordsUse python because you already know python, which is because it's memory safe. Not "use python for init" in the general case. Use it because it's more maintainable in the specific case.
       
 (DIR) Post #9rzCEkJ1RUh6GP7cbQ by velartrill@pleroma.site
       2020-02-13T03:56:32.971730Z
       
       1 likes, 0 repeats
       
       @riking @farhan @IRC @lachs0r "memory safe" is a marketing buzzword, not a virtue. it means "does not expose APIs that are vital for low-level coding." it does not meaningfully improve safety because 1) the underlying problem is *logic errors,* which can be made plenty of other places as well, and 2) lack of access to these primitives creates its own problems, most notably memory leaks, naive allocation strategies, and runaway duplication (perhaps python is sufficiently automagical to have solved this problem for non-pathological cases but i highly doubt that). regardless, the general principle remains: hiding part of a system from a developer does not make them safer, it merely impairs their ability to reason about that system.