Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Sinestro
Oct 31, 2010

The perfect day needs the perfect set of wheels.
edit: I'm a dumb poo poo. Fart fart fart.

Sinestro fucked around with this message at 01:12 on Feb 17, 2016

Adbot
ADBOT LOVES YOU

Hammerite
Mar 9, 2007

And you don't remember what I said here, either, but it was pompous and stupid.
Jade Ear Joe

sarehu posted:

Your "exclusionary as all hell" source code, people.
https://github.com/wch/r-source/blob/b156e3a711967f58131e23c1b1dc1ea90e2f0c43/src/library/utils/R/str.R#L57

The dude that submitted the issue is this guy.

Who cares who submitted it, if they were justified in doing so (which they were). If the code has stuff in it that easily reads like a sexually charged joke, even though it's unintentional, then the appropriate thing to do is to change it. I don't have strong views on the "inclusivity/exclusivity" concerns given by the person who wrote the blog post, but purely on the basis of both maintaining professionalism and being seen to maintain professionalism, changing it is the right course of action.

Winter Stormer
Oct 17, 2012

sarehu posted:

Your "exclusionary as all hell" source code, people.
https://github.com/wch/r-source/blob/b156e3a711967f58131e23c1b1dc1ea90e2f0c43/src/library/utils/R/str.R#L57

The dude that submitted the issue is this guy.

Now I just want to read that bug report.

crazypenguin
Mar 9, 2005
nothing witty here, move along

Way to get way more offended than the original person, and at the same time pathetically fall for sarehu trolling this thread.

Also, :lol: at calling for death over variable renaming. What's next, nuclear exchanges over tab vs spaces? You know what? This is just too over the top to be real. You're got to be trolling.

edit: re: your edit:

quote:

an unintentional thing like that is so loving trivial

Right. It's a variable rename patch. People accept indentation change patches all the time. It is trivial. That's the point.

crazypenguin fucked around with this message at 01:23 on Feb 17, 2016

No Safe Word
Feb 26, 2005


:stare: that sure is a post

pseudorandom name
May 6, 2007

Winter Stormer posted:

Now I just want to read that bug report.

https://webcache.googleusercontent....n&ct=clnk&gl=us

quote:

ironholds 2016-01-25 20:05:52 UTC

Created attachment 2008 [details]
diff of the patch against trunk

Some of R's code is older than modern slang, and this can cause a problem when slang turns out to mimic our variable names and be rather inappropriate for a programming language ;p. If you don't get what I mean from the patch, google or urban dictionary may clear it up.

This bug report has an associated patch which resolves the problem. Distinctly from that I'd like to deprecate the argument name of "give.head" entirely but that's a far wider conversation involving backwards-compatibility and suchlike. Fixing this doesn't cause issues there, so I thought I'd distinguish it so we could at least fix the most egregious example.

Sinestro
Oct 31, 2010

The perfect day needs the perfect set of wheels.

crazypenguin posted:

Way to get way more offended than the original person, and at the same time pathetically fall for sarehu trolling this thread.

Also, :lol: at calling for death over variable renaming. What's next, nuclear exchanges over tab vs spaces? You know what? This is just too over the top to be real. You're got to be trolling.

Yeah, the original part was me being intentionally way over the top because the issue does piss me off in certain ways that probably make me a lovely person, but then I realized that I probably wasn't going to be taken as "person who genuinely doesn't like this going about ten times over the top for humorous effect on a comedy forum". That's my deep-seated hatred of serious posting coming through, although I've been doing it really far too often lately. I'm gonna rewrite that here a third time to see if I can make my actual point in a way where I'm not frothing quite so strongly at the mouth. Please, do know that I'm not actually that angry over a stupid programming thing, that's a mixture of me having a really lovely day with exaggerating for effect.

crazypenguin posted:

Right. It's a variable rename patch. People accept indentation change patches all the time. It is trivial. That's the point.

What I probably should have written would be something like this:

I do not see that it is really an issue that matters either way to where it should be ignore the existing rules of a codebase. I don't know about you, but personally I almost never see a patch that just changes variable names on a barely-justified lark (what I'd consider that objection to be) get accepted, at least in the codebases that I've contributed to lately. I've never read other parts of the R codebase, but I'm guessing that if the person wasn't making it intentionally, they were just following a pattern of other similar names throughout the codebase. (Even if they were, it's a stupid little joke, snicker at it once and move on. If clang had an optimizer that talked about "dumb C units (DUMBCUNTS for short)" that'd be a valid thing to fast-track removal outside of any other arguments. I accept that I've lost this fight in society, so I won't argue that point further.) Assuming that it was done to fit in with other names or just because, ignoring the double meaning, it's the name that makes the most sense there, I'd say that it should stay and I'd honestly be a little concerned about having the person be in the outreach portion of the community, because that's an attempt that pushes away people like me who code to hide from politics and I suspect is maybe half a step better than pink cupcakes at attracting more female coders, considering that it's not even connected to humans in any way other than two words that happen to match up with an idiom. And well, if it is an anomaly that isn't the most obvious name in the context it's being used, then that's a reason to change the name right there, nothing about how it's a 'microaggression' needs to be involved.

Sinestro fucked around with this message at 01:41 on Feb 17, 2016

sarehu
Apr 20, 2007

(call/cc call/cc)
Please be quiet, people are trying to pretend they're making the world a better place.

(And greetings, fellow porpoise. Death to humans?)

VikingofRock
Aug 24, 2008




If the variable name is seen as exclusionary, what's the harm in accepting a patch to change it? Similarly, with the Rust/Elm codes of conduct, what valuable contributions to the programming language discussion do you think are being lost?

The STEM fields are exclusionary as they stand now, and aiming to be more inclusive is a laudable goal.

JawnV6
Jul 4, 2004

So hot ...
It sure is an even debate between "we're parroting Linus from the 80's for lack of any other role model" and "idk maybe don't ban several contributors from a bug tracker for having the gall to swap window dressing around"

I recognize how difficult it is. I, too, was forged in the days of brusque RTFM brushoffs and anyone who hadn't bathed in the ashes of documentation for years just didn't have the kind of drive this project needs. But I'm less convinced that model is the only viable one. And in general I'm trying to de-monster my technical interactions with folks.

crazypenguin
Mar 9, 2005
nothing witty here, move along
Serious posting on comedy forums is a good time. :) But I'll only add this:

Sinestro posted:

I don't know about you, but personally I almost never see a patch that just changes variable names on a barely-justified lark

Some projects are quite explicit about deliberately accepting such patches, just to allow new contributors to get used to the whole patch writing and acceptance process, in the expectation that more substantial things might follow. Linus "lol" Torvalds of all people supports whitespace patches to the kernel for this reason, iirc.

Oh, and I can't resist adding, there's plenty of people who hold things like this up as symbols of larger problems, not really as problems themselves. People get upset not because of variable names, but because there's a nice long history of trivial patches like this setting off some people's triggers and getting banned from the community with internet posters the world over calling for their deaths.

And of course, getting treated as a symbol instead of a person can suck. So some people do get justifiably upset back, but of course they reply rashly and... things go poorly for them.

(re: "his". Fixed. Sry.)

sarehu
Apr 20, 2007

(call/cc call/cc)

VikingofRock posted:

If the variable name is seen as exclusionary, what's the harm in accepting a patch to change it?

That depends on whether it's made in good faith or by some jackass that wants to waste your time. I happen to have made patches in the name of not being exclusionary before, and I'm pretty sure my motivations one time were not in 100% good faith. Maybe 50-75% the desire to treat all people equally, 25-50% my being a drama queen. (Did you know?? I'm actually an "SJW".) And I can tell you, the right thing to do is to shut anti-social behavior down. Not just for your project but for society in general.

Nude
Nov 16, 2014

I have no idea what I'm doing.

Out of curiosity what is R? Like what is it suppose to do? Reminds me of the time where a programmer snuck in a sexist joke in a easter egg.

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

I've worked on projects with subcomponents named "libpr0n" and "GraphicsEx", and I don't think anyone ever actually submitted a diff to change them (though diffs renaming directories weren't really a thing then I guess).

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe

Nude posted:

Out of curiosity what is R? Like what is it suppose to do? Reminds me of the time where a programmer snuck in a sexist joke in a easter egg.

It's a language geared towards research and statistics. Kind of like MatLab except (I assume) without all of the things that make MatLab such an awful, awful language.

FamDav
Mar 29, 2008

Nude posted:

Out of curiosity what is R? Like what is it suppose to do? Reminds me of the time where a programmer snuck in a sexist joke in a easter egg.

R is a array-based programming language w/ a large library of statistics packages.

https://en.wikipedia.org/wiki/R_(programming_language)

FamDav
Mar 29, 2008

Subjunctive posted:

I've worked on projects with subcomponents named "libpr0n" and "GraphicsEx", and I don't think anyone ever actually submitted a diff to change them (though diffs renaming directories weren't really a thing then I guess).

tell us about the orange fields pawpaw

Sinestro
Oct 31, 2010

The perfect day needs the perfect set of wheels.
This somehow turned into a good discussion out of nowhere. I'll go with it.

JawnV6 posted:

It sure is an even debate between "we're parroting Linus from the 80's for lack of any other role model" and "idk maybe don't ban several contributors from a bug tracker for having the gall to swap window dressing around"

I recognize how difficult it is. I, too, was forged in the days of brusque RTFM brushoffs and anyone who hadn't bathed in the ashes of documentation for years just didn't have the kind of drive this project needs. But I'm less convinced that model is the only viable one. And in general I'm trying to de-monster my technical interactions with folks.

I fully admit that I am of that former camp, even if that's not my time period at all. A shameful part of what made me decide that programming was for me was reading Torvalds rants and thinking that he was cool and it'd be fun to be respected while getting to tear people down like that. I've mostly moved on from that and chilled out. They shouldn't have gotten banned, but the patch shouldn't have been treated any different than any other 'let's rename something, but not everywhere because that would break too much stuff' kind of patch. i.e. either reject it or plan out fully migrating away from it if it's such a problem, instead of leaving something called one thing some places and another thing other places.

crazypenguin posted:

Some projects are quite explicit about deliberately accepting such patches, just to allow new contributors to get used to the whole patch writing and acceptance process, in the expectation that more substantial things might follow. Linus "lol" Torvalds of all people supports whitespace patches to the kernel for this reason, iirc.

Oh, and I can't resist adding, there's plenty of people who hold things like this up as symbols of larger problems, not really as problems themselves. People get upset not because of variable names, but because there's a nice long history of trivial patches like this setting off some people's triggers and getting banned from the community with internet posters the world over calling for their deaths.

And of course, getting treated as a symbol instead of a person can suck. So some people do get justifiably upset back, but of course they reply rashly and... things go poorly for them.

As gross and Randian by way of ~esr this sounds, I got into programming first because it was an interesting thing that I could do that didn't have anything to do with identity and is (this is where I have to let out a disgusted groan) a meritocracy where it didn't matter who I was but just that I could contribute, when I was a dumb kid dealing with dumb problems and wanting to just have something to to put my time into, in the same way a lot of people get super into video games or drawing Sonic characters turning into Russian military aircraft and having sex. I react pretty shittily to all of this kind of stuff as people try to bring Correct Politics into my technical safety blanket, because when I'm frustrated with something like that in real life I go and hammer out some little bug fix for something I'm following on Github sometimes, because then I'm at least going to be frustrated with something that I can fix, because even the worst non-deterministic multithreading bug is more tractable than social progress.

I'm guessing it's intentional, but that very last thing is pretty much exactly what happened there. I said some pretty lovely crazy things, but it was definitely a rash sort of response because I was popping on the forum after having a lovely time because of the general terrible attitude of a certain class of programmer type towards anyone who isn't a straight white cis male, and it pissed me off to see someone throwing their cake into the mud over something that was a tiny, trivial change either way that hardly made a difference is a kind of grandstanding that I loathe when it's political or just over some other little change. I do appreciate the deep irony of me (even sarcastically) calling for people's death over them being overly dramatic over an incredibly minor issue, that was something of the point.

(Also, it's totally cool! I wasn't saying that you were being intentional or anything, I just had to chuckle a little bit at it. What matters isn't always getting things right, I'm glad that you just corrected it and apologized!)

Sinestro fucked around with this message at 02:22 on Feb 17, 2016

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

FamDav posted:

tell us about the orange fields pawpaw

cvs ci -r MERGE_BASE_19990417 -m "please no loving conflicts"

:corsair:

Sinestro
Oct 31, 2010

The perfect day needs the perfect set of wheels.
if i worked in the valley, this is where i'd post something about how if we can debug software we can debug the world

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

Sinestro posted:

if i worked in the valley, this is where i'd post something about how if we can debug software we can debug the world

If you worked in the valley you'd know that we can't debug software.

Kazinsal
Dec 13, 2011

Subjunctive posted:

I've worked on projects with subcomponents named "libpr0n" and "GraphicsEx", and I don't think anyone ever actually submitted a diff to change them (though diffs renaming directories weren't really a thing then I guess).

I am reminded of the Markdown rendering library libsoldout, which was changed from libupskirt after the person behind it was bombarded with so much hate she said she would have rather not written the library in the first place.

The developer was not a native english speaker and was basically forced out of open source development by the kerfuffle.

Sinestro
Oct 31, 2010

The perfect day needs the perfect set of wheels.

Subjunctive posted:

If you worked in the valley you'd know that we can't debug software.

:thejoke:

Subjunctive
Sep 12, 2006

✨sparkle and shine✨


Too soon.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Subjunctive posted:

I've worked on projects with subcomponents named "libpr0n" and "GraphicsEx", and I don't think anyone ever actually submitted a diff to change them (though diffs renaming directories weren't really a thing then I guess).

https://bugzilla.mozilla.org/show_bug.cgi?id=66984

Open since 2001, fixed in 2011.

Storysmith
Dec 31, 2006

Sinestro posted:

it pissed me off to see someone throwing their cake into the mud over something that was a tiny, trivial change either way that hardly made a difference is a kind of grandstanding that I loathe when it's political or just over some other little change. I do appreciate the deep irony of me (even sarcastically) calling for people's death over them being overly dramatic over an incredibly minor issue, that was something of the point.

Having missed the original freakout, which person was throwing their cake into the mud? I think the fact that people within the project felt free to react with bannings and locking of the bug is a pretty big sign of a problem there.

I feel like a lot of nerds got into computers because we were bullied underdogs and then never internally recalibrated to the fact that almost every one of us makes more than the median salary and has a poo poo ton of opportunity ahead of us, and are no longer underdogs.

I don't know if this counts as a coding horror, but I find it interesting and I don't think it's been posted before: 57 small programs that crash compilers (by John Regehr, who has one of the best track records I've ever seen for gcc bug reports that were acknowledged and fixed)

Subjunctive
Sep 12, 2006

✨sparkle and shine✨


Ah, fix came weeks after I left. Nice.

kloa
Feb 14, 2007


HFX posted:

If you like programming, never become anything resembling a tech lead.

Oh, I never intend to. I've seen the calendars of leads and management, and I cannot handle being in that many meetings per week.

I enjoy the logic and creativity involved in programming. I'm currently a DBA, which has its own learning curve and creativity, but have spent the last year building an ASP.NET webapp and it's been pretty fun. Lots of logic to bounce around, ideas to improve it constantly, and creativity involved with making something from scratch.

E: For content, my coworker put out the idea to replace all of our LINQ queries with stored procedures, as he believes it'll help with maintainability down the road. Horror or good idea?

kloa fucked around with this message at 14:04 on Feb 17, 2016

Wardende
Apr 27, 2013
Probably a horror if the LINQ queries have any kind of compound predicates or include any business logic. Simple CRUD ops are ok I guess? Stored procedures can under certain circumstances be faster, I don't think I've ever had them proposed as more maintainable.

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



kloa posted:

E: For content, my coworker put out the idea to replace all of our LINQ queries with stored procedures, as he believes it'll help with maintainability down the road. Horror or good idea?

Are they in source control and automatically updated with the latest deploy?

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

Wardende posted:

Probably a horror if the LINQ queries have any kind of compound predicates or include any business logic. Simple CRUD ops are ok I guess? Stored procedures can under certain circumstances be faster, I don't think I've ever had them proposed as more maintainable.

I've noticed a tendency, probably out of comfort+familiarity, for DBAs to tend to feel like everything that *can* be in a SP *should* be in a SP. Not all of them, mind you, but it's not unheard of.

ExcessBLarg!
Sep 1, 2001

Storysmith posted:

Having missed the original freakout, which person was throwing their cake into the mud?
The bug report is no longer viewable, and I'm not sure if it's archived somewhere.

There was an update post which explains that the bug was fixed (variable was renamed), that the reporter's bugzilla account was reopened, and that the R Foundation guy kind of apologized, explaining that he misinterpreted the bug report as "vandalism".

I think, at best the situation could be understood as one that the R folks really haven't had to deal with before. R is, honestly, a pretty boring language maintained by career statisticians and graduate students, and so probably has experienced far less inclusion of humorous, now-considered-inappropriate code. You could imagine that, on a relatively low-volume bug tracker and mailing list, the sudden and bizarre deluge of comments over a "bug", consisting of an offensive variable name in the source code, being interpreted as vandalism (or maybe just spam). Or maybe the R guy is a misogynist, seriously doesn't give a poo poo whether the code is offensive or not, and took a heavy handed approach to making it go away.

kloa
Feb 14, 2007


Munkeymon posted:

Are they in source control and automatically updated with the latest deploy?

Lol no. I barely got him using TFS.

Cuntpunch posted:

I've noticed a tendency, probably out of comfort+familiarity, for DBAs to tend to feel like everything that *can* be in a SP *should* be in a SP. Not all of them, mind you, but it's not unheard of.

He is the senior DBA, and like you said, is more familiar with SPs and I guess assumes everything should be an SP. I like LINQ since you get intellisense and debugging over SPs.

ExcessBLarg!
Sep 1, 2001

kloa posted:

For content, my coworker put out the idea to replace all of our LINQ queries with stored procedures, as he believes it'll help with maintainability down the road. Horror or good idea?
If the database (and specifically, the proposed stored procedures) is or will be used by multiple client applications written in different languages with no code shared between them, then it may help. Otherwise if all the LINQ code is part of a common library that applications use, or there's only one application that interacts with the database anyways, claimed maintainability benefits are dubious.

HFX
Nov 29, 2004

kloa posted:

E: For content, my coworker put out the idea to replace all of our LINQ queries with stored procedures, as he believes it'll help with maintainability down the road. Horror or good idea?

There are good reasons to use stored procedures such as performance and enforcing security at the database level. You can help keep the monkeys from doing dumb things like joining 5 tables together on full table scans. They can be especially nice if you have multiple applications wanting to correct directly to your database without going through a webservice.

I have rarely found them more maintainable. Having to go find the corresponding PL/SQL code which is not even in the same directory as the modules I'm working requires a context switch in both language and location.

HFX fucked around with this message at 17:40 on Feb 17, 2016

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



kloa posted:

Lol no. I barely got him using TFS.

Well then there's your answer :)

ExcessBLarg! posted:

If the database (and specifically, the proposed stored procedures) is or will be used by multiple client applications written in different languages with no code shared between them, then it may help. Otherwise if all the LINQ code is part of a common library that applications use, or there's only one application that interacts with the database anyways, claimed maintainability benefits are dubious.

There should (probably!) be a unified service sitting in front of the DB anyway in that situation. Otherwise, in the event of a database change, you have to update one data access layer for each client or indefinitely maintain versioned views, which could get really gross really quick.

No Safe Word
Feb 26, 2005

kloa posted:

Lol no. I barely got him using TFS.


He is the senior DBA, and like you said, is more familiar with SPs and I guess assumes everything should be an SP. I like LINQ since you get intellisense and debugging over SPs.

You can debug SPs, fyi

FamDav
Mar 29, 2008

Subjunctive posted:

Ah, fix came weeks after I left. Nice.

They were quite excited to finally be able to merge it

Subjunctive
Sep 12, 2006

✨sparkle and shine✨

FamDav posted:

They were quite excited to finally be able to merge it

I certainly wasn't holding it back!

Adbot
ADBOT LOVES YOU

Amberskin
Dec 22, 2013

We come in peace! Legit!

xzzy posted:

I pity the fool who continues to limit themselves to 80 character wide terminals. You got like 1920 pixels in width, expand your world, man! person!

Actually, in the old mainframe world the limit is usually 72 characters. The most left or most right 8 (depending on language) are reserved for the card line number.

And yes, the modern mainframe compilers support free format and variable length, long text. But it is more mainframish to use the old RECFM(FB) LRECL(80) record format.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply