channel logs for 2004 - 2010 are archived at http://tunes.org/~nef/logs/old/ ·· can't be searched
#osdev2 = #osdev @ Libera from 23may2021 to present
#osdev @ OPN/FreeNode from 3apr2001 to 23may2021
all other channels are on OPN/FreeNode from 2004 to present
Friday, 13 January 2023
00:01:00 <epony> "rate my comment with 5 pi.14" --...
00:02:00 <mjg> zid: so i'm curious, if not yaml, then what?
00:03:00 <mjg> don't leave me hanging baby
00:05:00 <gog> json
00:05:00 <FireFly> that's just sensible yaml without comments
00:05:00 * FireFly ducks
00:06:00 <moon-child> at one point, I had to write yaml, and I couldn't figure out the syntax, so I just wrote it in json
00:06:00 <moon-child> since it's a subset (or near-subset? Iirc there were some edge-cases)
00:06:00 <mjg> i'm asking zid
00:06:00 <mjg> he ranted about it more than i did on rust
00:06:00 * mjg stirring some shit
00:06:00 <epony> hehehe
00:06:00 <epony> it's still liquid
00:06:00 <zid> mjg: ini
00:07:00 <zid> if you need something more complicated than ini, sqlite
00:07:00 <mjg> your weener is tini
00:07:00 <epony> that's why you bring your buns
00:07:00 <epony> to hide it
00:07:00 <epony> mustard / gas?
00:08:00 <zid> mjg: https://i.redd.it/ooz45sbvjlba1.jpg
00:09:00 <mjg> zid: some people have uarchs, some people have udicks
00:09:00 <moon-child> https://0x0.st/o7t2.jpg
00:09:00 * mjg <-- uarch person
00:10:00 <epony> and some have µBIOS
00:10:00 <moon-child> what if I have both
00:10:00 <gog> you win
00:10:00 <mjg> moon-child: your parents love you anyway
00:10:00 <mjg> moon-child: all that matters
00:10:00 <epony> speaking of winning, did you know that Windows is made by Windians? ;-)
00:10:00 <mjg> moon-child: not the bio ones though
00:40:00 <FireFly> moon-child: yaml is explicitly a json superset since some version of yaml, idk exactly
00:40:00 <FireFly> ...the nix toYAML serializer just calls toJSON, it's just there for convenience/documentation reasons heh
00:41:00 <FireFly> https://github.com/NixOS/nixpkgs/blob/master/lib/generators.nix#L238-L243
00:41:00 <bslsk05> github.com: nixpkgs/generators.nix at master · NixOS/nixpkgs · GitHub
01:03:00 <zid> Just a reminder, so nice that my keyboard is working again, jesus christ my spare is bad
01:03:00 <zid> and I genuinely like this keyboard and it cost plenty
04:18:00 <epony> you can have 9 more spares for the cost of 1 of these fancy priced same thing
04:18:00 <epony> most of the time "it's idling"
04:19:00 <klys> ipmi support at the power supply level may mean replacing something like this https://www.ebay.com/itm/144541532547 with something like this: https://www.ebay.com/itm/304120762970 and https://www.ebay.com/itm/325237119028
04:19:00 <bslsk05> www.ebay.com: 1800W Fully-Modular Power Supply 80 Plus Gold Certified PSU with Silent 14cm Fan | eBay
04:19:00 <bslsk05> www.ebay.com: Supermicro PDB-PT216-2824 23-Pairs Power Distributor Assembly for SC216 Chassis | eBay
04:19:00 <bslsk05> www.ebay.com: Supermicro PWS-1K81P-1R 1800W 80 Plus Platinum Server Redundant Power Supply PSU | eBay
04:20:00 <epony> at a slight overage for the supermicro branding
04:20:00 <epony> spermicro are kind of overpriced on everything other than mainboards
04:21:00 <klys> yeah tho what does that have to do with ipmi?
04:21:00 <epony> ipmi is a protocl for power management and control
04:21:00 <klys> http://static6.arrow.com/aropdfconversion/6380a6ee71158c643a018481a7f479fc2095d8ae/pgurl_pws.aspx.pdf
04:22:00 <epony> so it is present on server rated hardware as bmc and have integration with the machine i/o superchip and power management
09:57:00 <zid> surprisingly quiet without heat
10:24:00 <gog> hi
10:26:00 <dinkelhacker> hi^^
11:53:00 <kaichiuchi> hi
11:54:00 <sham1> hi
11:56:00 <kaichiuchi> hi
11:57:00 <Ermine> hi
11:57:00 <sham1> Uug, two more hours at work with having done all the work. Boredom
12:00:00 <gog> i have a lot to do and 5 hours left
12:01:00 <gog> but it's lunch and then i have a short appointment
12:12:00 <zid> I have choice cuts of free range chicken in a luxurious breading, atop finest aromatic rice, with a medley of mediterranean vegetable pureé
12:12:00 <gog> tasty
12:13:00 <zid> chicken nuggies and ketchup <3
12:13:00 <moon-child> chicken nuggets on rice?
12:14:00 <zid> yea is good
12:14:00 <zid> make sure you salt the nuggets, and use good rice
12:14:00 <zid> sorry I mean, the breaded choice chicken cuts
12:15:00 <gog> i'm gonna go get burger and fries and a beer
12:15:00 <zid> I could beer..
12:15:00 <zid> I have a box from christmas I've been taking the odd one out of when I feel like an beer
12:15:00 <moon-child> beer meh
12:15:00 <zid> don't really drink much
12:16:00 * moon-child prefers wine
12:16:00 <zid> and whine
12:17:00 <zid> I don't mind wine but I can't say I actually enjoy it
12:17:00 <Ermine> Moonshine
12:17:00 <zid> I genuinely like a nice pint of bitter every few weeks
12:18:00 <Ermine> Can you say for metric system people how much is it?
12:19:00 <zid> That is metric.
12:19:00 <zid> It's one hundredth of 100 pints
12:19:00 <zid> and 1000x as much as a millipint
12:19:00 <moon-child> Ermine, zid is an imperialist
12:19:00 <zid> (It just isn't SI)
12:20:00 <zid> The four standard units of length, mass, time and beer.
12:20:00 <zid> meters, newtons, seconds, pints
12:20:00 <Ermine> moon-child: yeah
12:20:00 <moon-child> newtons are mass?
12:21:00 <Ermine> and pascals are the force
12:21:00 <zid> kilos are weight, or something? science is hard.
12:21:00 <moon-child> no, kilos are mass
12:21:00 <moon-child> newtons are force
12:21:00 <moon-child> iirc, N = kg*m/s^2?
12:21:00 <Ermine> And gogs per bazingas is velocity
12:21:00 <moon-child> indeed
12:25:00 <zid> a moon-child is 1/1000th of a heat
12:25:00 <zid> which I suppose makes him equivalent to a millikelvin?
12:56:00 <dminuoso> moon-child: confusing weight with mass is so common, but understandable given that most humans havent left the mostly uniformly constant gravity at the earth surface.
16:34:00 <kaichiuchi> heat: let us count together
17:20:00 <Ermine> heat: am I supposed to use onyx master?
17:37:00 <kaichiuchi> Ermine: you’re now known as Ermac to me
17:38:00 <kaichiuchi> because i cannot stop initially reading your nick properly
17:38:00 <kaichiuchi> improperly*
17:53:00 <sham1> Ermacs
18:34:00 <Ermine> heat: minimal sysroot link not working :\
18:42:00 <heat> Ermine, hi, yes master
18:43:00 <heat> would it work for you if you used one of the prebuilts?
18:43:00 <heat> they're all built in CI so you can trust em
18:43:00 <heat> (or ... just follow CI)
18:44:00 <Ermine> Yes I guess
18:46:00 <Ermine> You mean using Onyx ISO from CI artifacts?
18:46:00 <heat> no, I mean one of the toolchains
18:47:00 <heat> if you're set on building that is
18:47:00 <Ermine> Ah
18:52:00 <heat> Ermine, fwiw, the minimal sysroots are right beside the toolchains in the CI output :))
18:52:00 <Ermine> Yeah, found it
19:00:00 <kaichiuchi> hi
19:02:00 <heat> Ermine, dont know what you're looking at but I have a nice wrapper script that does things
19:04:00 <heat> Ermine, if you go through https://github.com/heatd/Onyx/blob/master/.github/workflows/main.yml#L300 it should be ennuff
19:04:00 <bslsk05> github.com: Onyx/main.yml at master · heatd/Onyx · GitHub
19:05:00 <mjg> where is onyx yaml parser
19:07:00 <kaichiuchi> https://godbolt.org/z/6cf91986b
19:07:00 <bslsk05> godbolt.org: Compiler Explorer
19:07:00 <kaichiuchi> i need a 2nd pair of eyes
19:07:00 <kaichiuchi> the results should be the same between both functions
19:07:00 <kaichiuchi> not really sure why they are not
19:10:00 <heat> mjg, its not
19:10:00 <heat> i did import a horrible header-only json parser though
19:10:00 <heat> increases my C++'s build time to almost a second and a bit
19:11:00 <heat> (on each file it's included)
19:11:00 <heat> kaichiuchi, aw seriously, const on fucking parameters?
19:11:00 <mjg> so when you gonna get back to some benching mofo
19:11:00 <kaichiuchi> heat: why the fuck not
19:11:00 <mjg> can we try to drop the f-word/
19:12:00 <heat> it's unreadable
19:12:00 <mjg> or reduce its usage
19:12:00 <heat> mjg, sorry ma
19:12:00 <kaichiuchi> why the FUDGE is it unreadable
19:12:00 <kaichiuchi> :(
19:12:00 <mjg> that tone as well
19:12:00 <kaichiuchi> what i’m just kidding :(
19:12:00 <kaichiuchi> heat knows he is loved
19:12:00 <kaichiuchi> i hope
19:15:00 <heat> all i know is that I love you
19:16:00 <kaichiuchi> <3
19:17:00 <heat> mjg, btw i'll be back to optimizing idk, when i stop being busy
19:17:00 <heat> same for the great sysctl patch
19:18:00 <gog> hi
19:45:00 <Ermine> heat: thank you
20:40:00 <mats2> love u 2
22:39:00 <geist> oh yay, relaxing: https://defrag.shiplift.dev/
22:39:00 <bslsk05> defrag.shiplift.dev: Defrag - By ShipLift LLC
22:45:00 <Ermine> It refreshed the page before finishing :(
22:47:00 <geist> you must start anew
22:48:00 <mjg> oh hehe
22:49:00 <mjg> you know, on my first PC there was scandisk from microsoft and a variant from symantec
22:49:00 <geist> the 'files' are laid out a little too randomly for me, if there was a bit of clustering it'd look much more realistic
22:49:00 <mjg> the disk was clean, except for one block where they "argued"
22:49:00 <geist> if it weren't written in js i'd consider fixing it up
22:49:00 <mjg> as in you run scandisk, it claims the block is crap and it can fix it
22:50:00 <mjg> then it is clean
22:50:00 <mjg> you run the symantec variant, same story
22:50:00 <geist> ah, it should have just marked it bad block and move on
22:50:00 <mjg> i don't know if it was a bad block
22:50:00 <mjg> i do know it did not like *something* about it
22:50:00 <geist> in FAT that's basically a particular sentinel token in the FAT that caused it to be avoided forever
22:50:00 <geist> ah
22:50:00 <mjg> this reminds of a funzy
22:51:00 <mjg> i swear i have a memory of creating *two* files with the same name ona floppy drive from norton commander
22:51:00 <heat> you know, i liked defragging
22:51:00 <heat> it feels very satisfying
22:51:00 <mjg> and then it failing to read the disk
22:51:00 <geist> 100%. to this day i love defragging, except you dont really want to do it on SSDs
22:51:00 <geist> which is a sads
22:51:00 <mjg> i was never able to replicate tho
22:51:00 <mjg> geist: is this why you keep the old shit around?
22:51:00 <heat> geist, which i still don't understand. how is random access as good as sequential?
22:52:00 <heat> it's just not. it's impossible
22:52:00 <mjg> no seek time?
22:52:00 <heat> doesn't matter
22:52:00 <mjg> how so
22:52:00 <geist> heat: i think with modern nvme and ssd it's basically the same
22:52:00 <heat> ssds cache heavily
22:52:00 <heat> they have what, 4-8GB of DRAM? how do you cache when doing random access
22:52:00 <mjg> i'm sayin seek time may be small enough that you remain limited by other factors
22:52:00 <geist> specifically even if you have to issue 10 transactions to do the same thing, with NCQ and or nvme you can just issue it all at once
22:53:00 <heat> even then, there's almost an understanding in linux that when doing ext4 you don't need to defrag because "the operating system deals with it"
22:53:00 <heat> which is authentically BS
22:53:00 <geist> but yeah i think there's a teensy bit of an advantage to defragging highly fragmented individual files
22:53:00 <geist> but only then it's a tradeoff of lifetime of SSD
22:54:00 <geist> i have a defrag app on windows that can scan everything and then give you a list of the worst files and you can selectively defrag those, so sometimes i do, like a VM file that has 200k frags, etc
22:54:00 <geist> but i figure mostly you're also reducing the list of fragments in the FILE record
22:54:00 <geist> does it matter? probably not
22:55:00 <mjg> ext4?
22:55:00 <geist> heat: re: caching most of the reason the SSDs have a lot of dram (and some dont actually) is to hold the translation table in memory
22:55:00 <heat> my pacman.log (package manager log) has 143 extents for just 2.2MB
22:55:00 <mjg> i'm confident you need to defrag the shit ouf that one
22:55:00 <mjg> that's the point
22:56:00 <mjg> ext4 originates from filesystems which did not like fragmented files
22:56:00 <geist> but a log is also the sort of file that it doesn't matter at all if it's fragmented
22:56:00 <geist> because you rarely really read it back anyway
22:56:00 <mjg> and the storage being fast is not going to make up for extra metadata
22:56:00 <heat> ext4 tries to patch around the issue
22:56:00 <mjg> is not ext4 also the fs which recommends you fsck it?
22:56:00 <heat> if you write everything in one go, you're golden
22:56:00 <mjg> :]
22:56:00 <heat> they all do?
22:56:00 <heat> it's UNIX tradition :v
22:56:00 <geist> right log files tend to fragment if you're just dribbling data at it over time
22:57:00 <mjg> heat: on crash, sure
22:57:00 <mjg> but standard *linux* recommendation is to fsck from time to time
22:57:00 <heat> i've never heard of that
22:57:00 <mjg> just to be safe(tm)
22:57:00 <mjg> no?
22:57:00 <heat> will never matter as fsck just skips over "clean" filesystems
22:57:00 <mjg> dude, you would literally get fsck after 150 or whatever days when you boot
22:57:00 <mjg> nope!
22:57:00 <mjg> well it may be this has changed past few years
22:57:00 <heat> you mean a forced fsck? fsck -f?
22:57:00 <geist> i think that's kinda changed a bit recently, actually was trying to get ubuntu server to run fsck on boot, and turns out it doesn't really work and hasn't since like 18.04
22:57:00 <mjg> but back in my day the system would fsck on its own
22:57:00 <mjg> yea
22:58:00 <geist> and it's just understood you can't really easily do it without booting from a usb stick
22:58:00 <heat> it does here
22:58:00 <heat> sure you can. initrd
22:58:00 <geist> 'easily do it'
22:58:00 <heat> yeah. they all have an initrd
22:58:00 <geist> as in the canonical way to do it is to break into initrd and run it manually
22:58:00 <geist> the 'recovery mode' boot that even has a menu option that says 'fsck all the disks' doesn't work
22:58:00 <geist> and hasn't for years
22:59:00 <geist> reason being that / is already mounted rw at that time
22:59:00 <heat> that's on them. my system does auto fsck on the /
22:59:00 <geist> what are you running
22:59:00 <heat> before mounting it I assume
22:59:00 <heat> arch linux (systemd)
22:59:00 <geist> did i not prefix all of this with 'ubuntu doesnt...'
22:59:00 <heat> sure, which is why "that's on them"
23:00:00 <geist> fine, but my point is some distros can't do it. i think debian has the same problem
23:00:00 <geist> and seeing as those are a sizable chunk of the distros, it's a thing that i thnik is worth pointing out
23:00:00 <heat> systemd and the 4 or 5 initrd generation mechanisms have support for all of this
23:00:00 <heat> which tbh doesn't make much sense
23:00:00 <heat> you could just pay attention to mount rejecting the filesystem and *then* do a fsck
23:01:00 <geist> in this case it's about linux not having a way to convert a rw to a ro fs after the fact
23:01:00 <geist> with freebsd at least the canonical way was to just remount ro and then do it, iirc
23:01:00 <heat> it does
23:01:00 <geist> i dont think so, i was poking around and couldn't find it
23:02:00 <heat> 1) you can manually remount ro 2) there's a behavior you can configure in ext2/3/4 to remount RO on corruption
23:02:00 <geist> how can you do #1?
23:02:00 <heat> there's also a behavior for panic on corruption :)
23:02:00 <heat> mount -o remount,ro ?
23:03:00 <geist> and yes you can `mount -r -o remount /` i think but it always fails with somethouhg busy
23:03:00 <geist> and that's just 'oh yeah systemd/etc etc has an open file'
23:03:00 <geist> which doesn't help
23:03:00 <heat> ah, oh well
23:03:00 <geist> ie, you can't force it
23:03:00 <heat> i don't know if the kernel-internal mechanism Just Works
23:03:00 <geist> that's the point, something changed in the last few years (probably systemd) that broke ubuntu/debian's fsck recovery mechanism
23:03:00 <geist> and the failure is that it can't remount as ro and thus doesn't work anymore
23:04:00 <geist> and it seems the word on the internet is 'yeah that's never gonna get fixed, if you want to fsck you can boot on a usb stick'
23:04:00 <heat> in theory you wouldn't need to. but I don't know how early boot debian works
23:05:00 <geist> one suggestino i found that kinda works is you can break into grub and add some option (i forget it already) that basically causes the kernel to halt just after it mounts initrd
23:05:00 <geist> and then i think breaks into a shell
23:05:00 <heat> you mean init=/bin/sh?
23:05:00 <geist> somehting like `initrd-halt` or something. a feature i hadn't seen before
23:06:00 <Ermine> chkdsk
23:06:00 <geist> it may actually be a switch to systemd or whatever script is running on initrd to tell it to stop
23:07:00 <geist> anyway, it kinda worked, but then i lost interest in the problem and moved on. i just wanted to fsck some disks on a VM that had its NFS server pulled out from underneath it a few times, and thus could have picked up disk level corruption
23:10:00 <Ermine> systemd ships its own stuff for fscking
23:10:00 <Ermine> (afaik)
23:10:00 <geist> probably would need to, yeah
23:13:00 <heat> no? it's just regular fsck
23:13:00 <geist> yeah but you might have to have for example systemd stop the world so that it could do a ro remount, for example
23:14:00 <geist> possible the only thing in my case keeping it from remount was some journal file open somewhere that it could close
23:14:00 <heat> you can't ever safely fsck a mounted fs
23:14:00 <geist> ah https://www.freedesktop.org/software/systemd/man/systemd-fsck@.service.html
23:14:00 <bslsk05> www.freedesktop.org: systemd-fsck@.service
23:14:00 <geist> yes i said so it could do a ro remount
23:15:00 <geist> but looks like this is more of a 'super early service you can trigger' thing
23:15:00 <heat> not even ro I think
23:15:00 <heat> if your fsck changes things I don't think there's any way to do it when mounted
23:15:00 <geist> classically that's what you did in something like freebsd, and if you found an error you must reboot ASAP
23:16:00 <geist> since it could have done precisely that
23:16:00 <geist> pulled metadata out from underneath the kernel
23:16:00 <heat> AFAIK e2fsprogs actively stops you from fsck'ing a mounted fs
23:16:00 <heat> yeah totally
23:16:00 <geist> but the idea was at least it's ro so the kernel wont stomp all over the newly fixed thing
23:16:00 <geist> basically ideally you were running nothing but a shell anyway at that point
23:17:00 <geist> oh the days before initrd, sigh.
23:17:00 <heat> good ol days before those dang ol fake disks
23:17:00 <geist> yeah things gotta be all complicated n stuff now
23:18:00 <geist> i still compile and run my gentoo VM as no modules no initrd no systemd
23:18:00 <geist> kinda fun to watch it just start up and use very little ram
23:19:00 <heat> aw you wouldn't
23:19:00 <heat> red hat disliked your message
23:19:00 <heat> they're now trying to take over the initrd generation in systemd too
23:19:00 <heat> it's nuts
23:22:00 <heat> mjg, what happened to your lkml thing?
23:22:00 <mjg> it's not good man
23:23:00 <mjg> i wanted to whack cpu_relax for amd64, but was to to whack it altogether
23:23:00 <mjg> it first showed because of itanium and itanium maintainer said he is going to whack the arch
23:23:00 <mjg> the patch landed https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/lib/lockref.c?id=f5fe24ef17b5fbe6db49534163e77499fb10ae8c
23:23:00 <bslsk05> git.kernel.org: kernel/git/torvalds/linux.git - Linux kernel source tree
23:23:00 <mjg> ... and now itanium users are protesting the planned removal of the arch
23:24:00 <mjg> >
23:24:00 <mjg> The computer necrophiliacs at Debian and Gentoo seem determined
23:24:00 <mjg> to keep ia64 alive.
23:24:00 <mjg> if itanium stays, this will have to be patched again
23:24:00 <mjg> fucking mess man
23:25:00 <heat> haha
23:25:00 <heat> that was remarkably fast eh?
23:25:00 <mjg> i'm not responding to the mail https://marc.info/?l=linux-arch&m=167364646924793&w=2 as i expect there will be choice words from the man himself
23:25:00 <bslsk05> marc.info: 'RE: [PATCH] lockref: stop doing cpu_relax in the cmpxchg loop' - MARC
23:25:00 <mjg> ye for the change at hand it defo went smooth
23:25:00 <mjg> until it did not, see above
23:25:00 <mjg> :)
23:26:00 <mjg> even so, i think i wrote a decent commit message
23:26:00 <heat> choice words?
23:26:00 <geist> nice!
23:27:00 <geist> yeah Will from arm is a good guy, i've talked to him before
23:27:00 <mjg> heat: i suspect there will be a rant about itanium
23:27:00 <mjg> i should have seen the issue with removal coming
23:27:00 <mjg> there is *always* some fucking guy who claims to use $thing
23:28:00 <heat> sure, but the man himself will be pro removal
23:28:00 <mjg> the q is how how much weight one puts on the guy
23:28:00 <mjg> well we will see
23:28:00 <heat> Yeah, if it was ia64-only, it's a non-issue these days. It's dead and
23:28:00 <heat> in pure maintenance mode from a kernel perspective (if even that).
23:28:00 <mjg> anyhow the funny bit is, the lockref perf bug was the one thing which kept linux vfs scalability behind freebsd
23:29:00 <mjg> for the benchmarks in the commit
23:29:00 <geist> at $work this would be one of those 'file a bug about the thing that's being removed so someone can add it back if for <special case>'
23:29:00 <mjg> i don't mention that bit to not steer up any shit :p
23:29:00 <geist> but i guess in lkml you must satisfy all the parties
23:29:00 <heat> you're a linux dev now mjg
23:29:00 <heat> gpl tainted
23:29:00 <mjg> you do realize i worked for red hat for 6 years
23:30:00 <heat> yes
23:30:00 <Ermine> woah, how it was like?
23:30:00 <heat> but now you're a linux dev again
23:30:00 <mjg> Ermine: it's nothing to be proud about if that's what you mean
23:30:00 <heat> Ermine, it sucks, they force you to wear these horrible looking fedoras!
23:30:00 <mjg> interview is a piece of cake
23:31:00 <mjg> here is a funny tidbit: i got rejected from G after an onsite interview, the evenining it got back home i got an interview invite from rh
23:31:00 <mjg> the interview took place few days later and was turbo easy, especially in comparison
23:31:00 <mjg> and then i was told that's it, i'm hired
23:31:00 <mjg> this should give you some idea :s
23:31:00 <heat> that sounds great
23:31:00 <Ermine> lol
23:32:00 <dh`> tech interviews are essentially large expensive dice
23:33:00 <mjg> geist: but ye, there is this idea that lkml is a hostile place
23:33:00 <heat> I don't think any real
23:33:00 <mjg> geist: but my personal experience with linux devs was mostly positive
23:33:00 <heat> practice). what lol
23:33:00 <heat> hardware implements the YIELD instruction (i.e. it behaves as a NOP in
23:33:00 <Ermine> at least I know where to get a job in case I fail everywhere else
23:33:00 <mjg> heat: ikr
23:34:00 <moon-child> lol redhat
23:34:00 <mjg> Ermine: dude cz rh office was close to ibm buildings
23:34:00 <heat> mjg, unix geezers where
23:34:00 <mjg> Ermine: interns on the truck on the wya there would fall off due to bumps on the road
23:34:00 <mjg> Ermine: and would be come senior devs at red hat instead
23:35:00 <mjg> now that ibm bought rh they got all their intended interns back
23:35:00 <mjg> smart move
23:35:00 <heat> why are you shitting so much on rh
23:35:00 <mjg> i'm hostting on part of rh
23:35:00 <mjg> i have to say it is also a great place to work if you have the right team/manager
23:35:00 <mjg> ... which a lot of people don't
23:36:00 <Ermine> this is right for any other company isnt it
23:36:00 <mjg> about half time time i spent at rh i rmember very fondly. tons of personal freedom to work on stuff
23:36:00 <heat> sure
23:36:00 <mjg> g has 20% proj, at rh i had more like 80%
23:36:00 <mjg> fuckin A in that regard
23:36:00 <heat> they have great talent retention
23:36:00 <mjg> Ermine: no, some companies suck top to bottom
23:36:00 <heat> so it must be good
23:37:00 <mjg> i am saying the bottom to get the job is basically people from the street
23:37:00 <mjg> you have to pretend they don't exist
23:37:00 <heat> is it much worse than "here's a stupid super FAAAAAAAAAAAAAAAAAAAANG interview, gl hf"
23:38:00 <heat> with young people doing fucking summersaults and twerking to these companies in search for an opportunity like it's their fucking life mission to work on big tech
23:39:00 <heat> i did like the arm interviews I did though
23:39:00 <heat> very straight to the point and actually relevant to low level work
23:39:00 <heat> instead of "reverse this binary tree, thanks"
23:42:00 <mjg> to toot my own horn a little, i think i was doing great interviews from tech standpoint
23:42:00 <mjg> as in conducting
23:43:00 <mjg> as the job was about diagnosing shit in teh kernel, i woudl for example ask why it's not legal to spin_lock(foo); mutex_lock(bar);
23:43:00 <mjg> basically all quetsions were open-ended and *relevant*
23:48:00 <heat> yeah
23:48:00 <heat> an argument I've heard is that you give them a problem and then analyse their thought process and how they are to actually work with
23:49:00 <heat> which sounds more productive then "hey mr, why spinlock and then mutex no work"
23:49:00 <mjg> how is the spinlock -> mutex not a problem
23:50:00 <mjg> explain why this goes haywire... or does not!
23:50:00 <mjg> seems to me one has to show understanding of what's going on
23:50:00 <mjg> and not just recite a formula
23:50:00 <heat> the thought process being that anyone can learn how spinlocks and mutexes work and seeing how someone thinks and collaborates is more important
23:51:00 <heat> tbf this probably makes more sense in big tech like Google, etc where everyone (ok, most people) is fucking amazing and can quickly pick things up
23:51:00 <mjg> whatever problem you give them to work on
23:51:00 <mjg> can literally get the same comment
23:52:00 <mjg> just try me dawg
23:52:00 <mjg> > bro that's a well known intv problem they pre-memorized
23:52:00 <mjg> is one possibler esponse
23:52:00 <mjg> i got more, just show me what you got
23:52:00 <heat> sure, and that sucks
23:52:00 <heat> I wouldn't ask you to reverse a binary tree because who tf does that
23:52:00 <mjg> not really answering my q
23:53:00 <mjg> give me "shows how the candidate" thinks problem
23:53:00 <mjg> darn, misplaced "
23:53:00 <heat> ok, someone I worked with always used the same question: implement a stack
23:54:00 <mjg> lol it's a first year student exercise
23:54:00 <mjg> next
23:54:00 <heat> sure is, until it doesn't work
23:54:00 <heat> because the N is too large for your shitty O(n) solution
23:54:00 <mjg> ? D:
23:54:00 <heat> that question is a multi-layered problem
23:54:00 <mjg> how peole end up with non-O(1) stacks?
23:55:00 <heat> pop()
23:55:00 <mjg> > I suspect nobody will notice, and if ia64 is the only reason to do
23:55:00 <mjg> > this, I really don't think it would be worth it.
23:55:00 <heat> if you're using an array or something, which you should. if not, perf is probably slow enough
23:55:00 <mjg> i thought there would be a rant, but here it goes
23:57:00 <heat> he explained it to me as "it's a multi layered question. first they implement a basic stack, then they will see it doesn't exactly work with how large the problem set is, so the extra effort goes into making it work for very large N's"
23:57:00 * moon-child awaits the rant