Open Side Menu Go to the Top
Register
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** ** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

04-24-2019 , 06:33 AM
I'm definitely still enjoying the work. The churn is having an effect on me because people that I liked working with are departing the team and because we're not backfilling quickly enough.

Mostly I just want to be sure that I'm doing whatever I can to fix any issues there might be. I'm definitely going to see about grabbing a drink with some of the folks that left recently and see if they're willing to open up at all.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-24-2019 , 07:29 AM
CB, I didn’t read past the first little bit of that but I agree that I’m sometimes an ******* on here. I’m actually trying to avoid that more these days (which mostly means posting less).

That being said, when one person is clearly being an *******, it’s not equally assholish to call them out like you seemed to think earlier.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-24-2019 , 09:46 PM
Quote:
Originally Posted by jjshabado
CB, I didn’t read past the first little bit of that but I agree that I’m sometimes an ******* on here. I’m actually trying to avoid that more these days (which mostly means posting less).
I don't think you were particularly out of line here anyway. You at least attempted to pivot to substance, which I appreciated. You're a pretty good poster and I'm sure you're a fine engineering leader or whatever IRL. I don't actually know why you seem to have a grudge against me here, though I suspect it must be because you felt attacked in some argument I don't recall.

Quote:
That being said, when one person is clearly being an *******, it’s not equally assholish to call them out like you seemed to think earlier.
That wasn't what I thought and you should probably read the rest of the earlier tl;dr post since I addressed this. I don't have any sort of moral code as it applies to internet posting and I'm not a big fan of tone-policing in the first place, especially when it's used exclusively to avoid dealing with substance. The point is that jmakin was far out of line by any reasonable standard and much more so than anyone else here - the names he's calling this person are awful and he's describing IRL behavior that matters, as opposed to internet fights that rarely have any consequence.

Yet, one of the reasons why you and goofy and microbet seem bothered by my quite frankly reasonable tone (by internet standards and certain by your own standards), while even those critical of him are treading super carefully to avoid saying anything directly negative about him is that this coworker of jmakin has been objectified and entirely stripped of her humanity. She's not a real person, she's just an object that stands in the way of jmakin's glory. This is why, well aside from my lack of popularity I suppose and jmakin knowing a bunch of people here IRL that would defend him out of loyalty, you guys are eager to defend one another because it's okay to call me out, whereas me calling out jmakin is like attacking some innocent person. Jmakin has never done anything wrong to an actual person because his villainized coworker doesn't count as a person.

And my point isn't you guys are bad people - this is quintessentially human. And in a roundabout way, this is why I think tone-policing and discussing who's the ******* are pointless. Because anything matters is always going to offend someone and tone-policing - see how selectively this was used here - comes down to saying that certain types of people are off-limits, in essence relegating the rest into a subhuman category.

Microbet's "goofy is nice" comment is illuminating because this is how real people think and behave. Microbet isn't some impartial observer here that came to decide what's right or wrong - he's just taking sides based on his feelings and relationships. Yet, despite all this, he pretends that this is about what's right, I hereby judge you candybar the bully and goofy, the nice guy.

If you go back and read, despite goofy sarcastically criticizing me for not being helpful, my criticism is absolutely concrete feedback that addresses specific behavior, patterns of behavior and attitude and offers alternative actions that jmakin could've taken. Maybe jmakin isn't in the state of mind to learn from this, but someone else could. Goofy's criticism, if you could even call it that, isn't remotely possible to take in as actionable feedback and is mostly an invitation to others to attack me. The gist of his post was that candybar is a bad poster, so attacking him is okay. Yet again, I count zero person calling out goofy. Microbet isn't merely wrong, he lives in an upside-down world, but he has a lot of company.

Again, this is just how we are. We judge people based on their usefulness to us, then use this judgment blindly as to apply it in inappropriate contexts. A single person may simultaneously be a great friend, a helpful neighbor, a great tech leader and a sexual predator - but rarely are people able to judge people independently of the context in which they serve our interests, our feelings. Those that we feel close to are generally judged incapable of wrongdoing and we feel compelled to defend them even in unrelated contexts.

In this very forum, all kinds of creepy activities targeting others that would be unthinkable in polite company have been discussed with glee without anyone calling anyone out. Many people who have engaged in these types of activities with others, come out of them, having actually a better opinion of one another, having shared something together. This is how gang members bond, but frankly we're not that much more evolved. And this game is designed to benefit those who participate and punish those who don't. Trying to be impartial all the time makes you an outsider among those who expect preferential treatment - you lose social status because relationships with you are worthless.

This is how we as a society deserve Harvey Weinstein. This is why people were so afraid of making accusations in the first place - because everyone knew they'd be gaslighted and that his powerful friends would stick by him. I'm playing the rebel, here but only because the stakes are low, you guys aren't really powerful and having met just one person here, I don't have much at stake. I'm also more cowardly in real life and in most situations will do the easy thing. But that thought depresses me.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-24-2019 , 09:49 PM
Quote:
Originally Posted by jmakin
You just literally posted a 1300 word essay about this on a tuesday night. In my opinion that is sad.
We're in agreement. But as a fellow prolific writer, my prose isn't nearly as polished as yours - the quality of my writing here is kind of embarrassing actually - so you may be overestimating the effort it takes.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-24-2019 , 09:53 PM
Quote:
Originally Posted by blackize5
I'm definitely still enjoying the work. The churn is having an effect on me because people that I liked working with are departing the team and because we're not backfilling quickly enough.

Mostly I just want to be sure that I'm doing whatever I can to fix any issues there might be. I'm definitely going to see about grabbing a drink with some of the folks that left recently and see if they're willing to open up at all.
Assuming these are your peers, if there's some overarching issue beyond that them having better opportunities elsewhere, you've probably heard about it already. In my experience, it's rare that there's some obvious reason why everyone's leaving and this isn't being talked about openly. The job market is still insanely hot so if they aren't aggressively about raises and promotions, it's likely that leaving is the economically rational move.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-25-2019 , 04:56 AM
All but one of these departures was to go to another team at my company. Same pay (one of the xfers was to SRE and may have included a raise).

My team does IAM stuff and a few other core things. It's definitely not as glamorous as working on a product team for sure and that may factor here.

These are peers and the only complaint I've ever heard stems from the fact that most of our roadmap was decided for us at the director+ level
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-25-2019 , 09:22 AM
IAM like the Amazon IAM? If so, I have some questions.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-25-2019 , 11:01 AM
Quote:
Originally Posted by blackize5
All but one of these departures was to go to another team at my company. Same pay (one of the xfers was to SRE and may have included a raise).

My team does IAM stuff and a few other core things. It's definitely not as glamorous as working on a product team for sure and that may factor here.

These are peers and the only complaint I've ever heard stems from the fact that most of our roadmap was decided for us at the director+ level
Oops, I read the original post but apparently had mostly forgotten what it said. I don't see anything given that most of those internal departures were negotiated. I find that most of the time people are really unhappy and something is going on, they switch companies rather than switch teams. At most companies, it's generally a good sign that people from your team are moving to other teams - it says a few good things: 1) people from your team had good enough of an experience overall to give another team a shot; 2) people from your team are generally wanted internally elsewhere; 3) people from your team are not complacent or resistant to change. It also gives you more connections elsewhere in the company.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 12:40 AM
Anybody worked with Chrome headless/Selenium? I'm writing scraper stuff using Firefox/Selenium and its performance is sloooow.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 01:17 AM
We spent a long time fighting with headless Chrome with Protractor (which uses the Selenium driver) - total flaky nightmare.

I think it's ok if you want to automate a large chunk of your smoke tests and are ready to run them again (and again) if they fail. But we never got close to the point where we could have it as any kind of gate for a fully automated CI/CD flow.

Basically run them - if they fail investigate. 90% of the time it will be test flakiness. But at least you don't have to walk through all the smoke tests manually every time.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 02:57 AM
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 02:59 AM
Although really it should say Facebook, twitter and IG for the next 4 months.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 08:38 AM
I have read about the Jmakin unknown person script and will give my outsider hot take on it.

Quote:
She does the things no one else really wants to do and does some of them pretty well. She writes extremely gorgeous documentation and is decent at writing support/installation scripts
Who cares if she goes to meeting or comes in at 10 am? She does work that no one else wants to do and does it well. If clear work reqs are being given, and the work is being delivered let the person figure out for themselves how best to do it. If work is not being delivered, the reqs are clear, and they are realistic then get rid of the person. But do not try to dictate how they do their work.

And meetings are the worst. I do well with written instructions, but literally every single meeting I am zoned out, my add brain can't concentrate on it. My last company had "core-hours" and tons of meetings. I was the sole front end developer on a successful project, but left because I guess meetings and working hours and other bs are so important. My theory is meetings are for management to show how important they are. And participating? Ugh. Go find some other extrovert management types for that noise.

At my new job, there are still meetings, and I am still zoned out in them. But they let me set my own hours, they only care about the work being done, and I am happy! In the end when I am treated like an adult and am left to figure out how to best work, I do more and better quality work. Rather than them getting into pissing contests and trying to throw around their power, they say thank you, and good job!
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 09:47 AM
Quote:
Originally Posted by suzzer99
We spent a long time fighting with headless Chrome with Protractor (which uses the Selenium driver) - total flaky nightmare.

I think it's ok if you want to automate a large chunk of your smoke tests and are ready to run them again (and again) if they fail. But we never got close to the point where we could have it as any kind of gate for a fully automated CI/CD flow.

Basically run them - if they fail investigate. 90% of the time it will be test flakiness. But at least you don't have to walk through all the smoke tests manually every time.
We currently have about 1375 tests in a protractor suite that runs in CI repeatedly with no failures. The single most important way to remove flakiness seems to be using protractor.ExpectedConditions well, eg.

Code:
const EC = protractor.ExpectedConditions;

...

element.click()
    .then(() => browser.wait(EC.visibilityOf(otherElement), 3000))
    .then(() => { // tests });
I think the other major issue we had was that we needed to tweak the test build to avoid having it uses angular 1's $timeout and $interval because of the way protractor interacts with that. For example after saving a form in production there's a success message alert displayed on a 5 second timeout. In protractor's default configuration it will wait for that timeout to finish before running further tests, which slows everything down and also makes it impossible to test for the actual success message. So in the test build it just has no timeout at all.

On the other hand, that suite takes 20 minutes to run, so it's definitely not fast (re: the original question). I'm not sure it's possible to make selenium very fast. I've never tried to use it for scraping. I'd used phantomJS in the past for a few things, but it was also not particularly fast. For simple web scraping it's always faster if you can use tools that don't have to care about javascript rendering the page, i.e. on old sites like 2+2. But if you have to wait for page rendering to finish and handle complex scripted interactions prior to scraping then I think all the scraping tools are probably slow, just because most websites have long load times anymore.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 02:22 PM
Quote:
Originally Posted by caringfleece
I have read about the Jmakin unknown person script and will give my outsider hot take on it.



Who cares if she goes to meeting or comes in at 10 am? She does work that no one else wants to do and does it well. If clear work reqs are being given, and the work is being delivered let the person figure out for themselves how best to do it. If work is not being delivered, the reqs are clear, and they are realistic then get rid of the person. But do not try to dictate how they do their work.

And meetings are the worst. I do well with written instructions, but literally every single meeting I am zoned out, my add brain can't concentrate on it. My last company had "core-hours" and tons of meetings. I was the sole front end developer on a successful project, but left because I guess meetings and working hours and other bs are so important. My theory is meetings are for management to show how important they are. And participating? Ugh. Go find some other extrovert management types for that noise.

At my new job, there are still meetings, and I am still zoned out in them. But they let me set my own hours, they only care about the work being done, and I am happy! In the end when I am treated like an adult and am left to figure out how to best work, I do more and better quality work. Rather than them getting into pissing contests and trying to throw around their power, they say thank you, and good job!
this is why I hate scrum with a passion at this point. (sure it makes sense in theory and I am sure it is amazing and great if you do it right). but my project team went from a nice and flexible situation where we were intent on delivering business value to entirely focused on scrum ideas and benchmarks. the gatekeepers for those scrum things are managers and to keep us informed of all of these super important scrum things they call endless meetings.

its pure hell. scrum is supposed to be agile and flexible. but if I find a bug, I am not even supposed to look at it. hell, if I even find a bug it is a problem bc I should absolutely not looking for bugs with my time. like, why are you not working towards our OKRs? here is a gentle reminder in completely passive aggressive language that we should always be focused on OKRs.

I had a job in mechanical engineering a long time ago and the head engineer once told me that meetings are a way for managers to act like they are doing something. like, I didnt really think he was wrong at the time but I surely didnt realize how correct he was until I found scrum.

hey guys, I got an idea, lets create a lean and agile and flexible framework with all kinds of rigid rules? makes total sense! every company will love it.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 02:54 PM
Yeah, you aren’t doing it right.

(You being your company)
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 02:58 PM
Quote:
Originally Posted by well named
We currently have about 1375 tests in a protractor suite that runs in CI repeatedly with no failures. The single most important way to remove flakiness seems to be using protractor.ExpectedConditions well, eg.

Code:
const EC = protractor.ExpectedConditions;

...

element.click()
    .then(() => browser.wait(EC.visibilityOf(otherElement), 3000))
    .then(() => { // tests });
I think the other major issue we had was that we needed to tweak the test build to avoid having it uses angular 1's $timeout and $interval because of the way protractor interacts with that. For example after saving a form in production there's a success message alert displayed on a 5 second timeout. In protractor's default configuration it will wait for that timeout to finish before running further tests, which slows everything down and also makes it impossible to test for the actual success message. So in the test build it just has no timeout at all.

On the other hand, that suite takes 20 minutes to run, so it's definitely not fast (re: the original question). I'm not sure it's possible to make selenium very fast. I've never tried to use it for scraping. I'd used phantomJS in the past for a few things, but it was also not particularly fast. For simple web scraping it's always faster if you can use tools that don't have to care about javascript rendering the page, i.e. on old sites like 2+2. But if you have to wait for page rendering to finish and handle complex scripted interactions prior to scraping then I think all the scraping tools are probably slow, just because most websites have long load times anymore.
That's cool. You clearly spent more time on the problem than we did. In my case the protractor tests were kind of a pet passion of mine and management really only cared about delivering features. So eventually I gave up.

We also had a completely separate group which ran selenium tests that took like 8 hours to run or something. Also they had to run them twice because of so many false test fails.

Looks like you can use protractor with react - but obviously missing a lot of the angular-aware stuff. Is there anything else like protractor for react? I thought that's what enzyme was - but I was wrong.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:15 PM
anyway, the reason I came to this thread is a dumb java/typescript question. lets say I have a class with a bunch of methods. I want to dynamically call the methods in the class based on a variable. is there a way to programatically do that without a big switch statement?

I can be more specific, lets say I have a wrapper class for api calls that has a get, post, put, patch etch methods. I am talking to someone and they are giving me back a url and verb. I want to use my wrapper class without a big switch statement.

So they give me back verb: 'GET' and url: 'myEndpoint'.

I want to call my apiService.get(url) programatically or dynamically or parameterized or whatever.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:24 PM
Quote:
Originally Posted by kerowo
Yeah, you aren’t doing it right.

(You being your company)
right but I am pretty sure that "not doing it right" is baked into scrum. its just not a good framework. like socialism or communism. it just leads to genocide.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:35 PM
Quote:
Originally Posted by suzzer99
You can use protractor with react - but obviously missing a lot of the angular-aware stuff. Is there anything else like protractor for react? I thought that's what enzyme was - but I was wrong.
I've never done e2e testing for React. I know some people just use selenium and webdriver directly. I think there are some maybe not React specific projects that wrap webdriver/selenium in the way protractor does, like nightwatch.js, but I haven't used them. There's also cypress.io, which I don't know much about. I think Enzyme is more like a unit testing framework, like karma. We have both karma unit tests for angular stuff and protractor.

Today's headache is that protractor v5 doesn't support chromedriver for Chrome 74, and there's some weird behavior using the older chromedriver with the newest Chrome installed. That was my morning.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:39 PM
fwiw I use protractor and selenium with Angular and Chrome without any issue. using Chrome 73 right now tho.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:39 PM
Quote:
Originally Posted by Victor
right but I am pretty sure that "not doing it right" is baked into scrum. its just not a good framework. like socialism or communism. it just leads to genocide.
It was one of the old schools devs, like Bob Martin or fowler or something, but they said during a talk I was watching that the entire concept of agile was made for developers and developers alone, and then product and business managers tried to bake it into everything and it fell apart.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:41 PM
Quote:
Originally Posted by Victor
anyway, the reason I came to this thread is a dumb java/typescript question. lets say I have a class with a bunch of methods. I want to dynamically call the methods in the class based on a variable. is there a way to programatically do that without a big switch statement?

I can be more specific, lets say I have a wrapper class for api calls that has a get, post, put, patch etch methods. I am talking to someone and they are giving me back a url and verb. I want to use my wrapper class without a big switch statement.

So they give me back verb: 'GET' and url: 'myEndpoint'.

I want to call my apiService.get(url) programatically or dynamically or parameterized or whatever.
You can use hash style access on a class instance, e.g.

Code:
class Foo {
  get() {
    console.log('called get');
  }

   put() {
    console.log('called put');
  }
}

const f = new Foo(), func = Math.random() < 0.5 ? 'get' : 'put';
f[func]();
You need your methods to all take the same arguments for this kind of dispatch-table style to work well
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:43 PM
Quote:
Originally Posted by Victor
fwiw I use protractor and selenium with Angular and Chrome without any issue. using Chrome 73 right now tho.
Chrome 74 doesn't seem to actually break anything directly for us right now, but it causes Chrome to pop open a dialog on macs about accessing the keychain, and if you either allow or deny access it breaks all the tests. If you ignore the dialog and just dismiss it at the end then it's fine. I'm about to find out what it does in CI on a linux box :P
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
04-26-2019 , 03:52 PM
Quote:
Originally Posted by PJo336
It was one of the old schools devs, like Bob Martin or fowler or something, but they said during a talk I was watching that the entire concept of agile was made for developers and developers alone, and then product and business managers tried to bake it into everything and it fell apart.
ya I could just go on and on about it. but it just really is inflexible. and its pretty much waterfall but in small increments.

like, we set up story cards and then what if we get into development and realize they need to change? there is no way to change them! its just insane. I mean, you cant change them until the next sprint. but its pretty damn rare where I have started a large effort and not needed to coordinate pretty big changes across multiple people.

so they obv next step is to research the cards and work before hand and have a good grasp on it so you dont run into large changes. but thats waterfall. and then you still have unknowns and run into changes to the design. and then in the retro the scrum master is just like Lumberg, "ya um ok, so how can we avoid these design changes in the future?". and its like indirectly but still directly calling out the devs. like wtf why didnt yall figure this out first.

oh but the best part is that if you find the need for a design change, you cant just implement it. no, you gotta wait until next sprint and you gotta write all new cards and then they gotta pass thru business and QA.

lol agile. whoever thought up the name for this framework has got a wicked sense of humor.

I reallty could just go on forever. absolutely no respect for anyone who subscribes to scrum at this point.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote

      
m