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
a foolish pianist
May 6, 2007

(bi)cyclic mutation

Pollyanna posted:

:shrug: You don't have to comment as you step through, I just wait until the end before I bring up stuff that didn't eventually get addressed. Granted, I do this mostly for large scale changes instead of relatively minor things, so maybe it's different in that case.

For bug fixes, it's easiest just to look at the final diff. For larger features, though, the commit history shows a lot about the design process, and it can be handy to look at it.

Adbot
ADBOT LOVES YOU

CPColin
Sep 9, 2003

Big ol' smile.
I made a few pull requests where I suggested that the reviewers may want to look at one commit at a time, because the change was a big refactor that touched a few hundred files. The commits broke down to something like 1) change the code generator, 2) regenerate a bunch of code, 3) remove the now-unused functionality. I don't know if anybody took the advice and only looked at commits #1 and #3, or what.

geeves
Sep 16, 2004

Gounads posted:

Bitbucket has an open to auto-squash on merge. Full commit history during code review and readable commit history on master.
(maybe github does too?)

Is this just bitbucket cloud? I can't find that option for bitbucket server. We are using 4.10 though. We're behind on updating :/

Gounads
Mar 13, 2013

Where am I?
How did I get here?

geeves posted:

Is this just bitbucket cloud? I can't find that option for bitbucket server. We are using 4.10 though. We're behind on updating :/

Our stash server does it. I'm not 100% sure how stash and bitbucket server are related. (just versions?)

BabyFur Denny
Mar 18, 2003

geeves posted:

Is this just bitbucket cloud? I can't find that option for bitbucket server. We are using 4.10 though. We're behind on updating :/

It's a recent feature and we're using it on our local bitbucket server. Talk to your admin.

geeves
Sep 16, 2004

Gounads posted:

Our stash server does it. I'm not 100% sure how stash and bitbucket server are related. (just versions?)

Bitbucket is just rebranded Stash as of a year or so ago.

BabyFur Denny posted:

It's a recent feature and we're using it on our local bitbucket server. Talk to your admin.

I am an admin :sigh:

the talent deficit
Dec 20, 2003

self-deprecation is a very british trait, and problems can arise when the british attempt to do so with a foreign culture





i like one commit per pr, whether you get it from rebasing or from squashing on merge. that way the thing that was reviewed is the thing that was merged and there's no opportunity to revert part of a merge or whatever

BabyFur Denny
Mar 18, 2003

geeves posted:

Bitbucket is just rebranded Stash as of a year or so ago.


I am an admin :sigh:

Good news, you don't actually have to upgrade:

https://www.atlassian.com/blog/bitbucket/new-features-bitbucket-4-9

Doom Mathematic
Sep 2, 2008

CPColin posted:

I made a few pull requests where I suggested that the reviewers may want to look at one commit at a time, because the change was a big refactor that touched a few hundred files. The commits broke down to something like 1) change the code generator, 2) regenerate a bunch of code, 3) remove the now-unused functionality. I don't know if anybody took the advice and only looked at commits #1 and #3, or what.

I do this a lot of the time too. I also remind people to set their diff tool to ignore whitespace because that often makes changes look less intimidating.

Blinkz0rz
May 27, 2001

MY CONTEMPT FOR MY OWN EMPLOYEES IS ONLY MATCHED BY MY LOVE FOR TOM BRADY'S SWEATY MAGA BALLS

the talent deficit posted:

i like one commit per pr, whether you get it from rebasing or from squashing on merge. that way the thing that was reviewed is the thing that was merged and there's no opportunity to revert part of a merge or whatever

That makes commit messages entirely unhelpful, though. I'm not advocating that you leave the random "WIP" messages, but if a PR is only one commit and it touches a bunch of different things how in the world do you know if the work is appropriate?

At current job, on my team, we do light-weight PRs which give you the nice advantage of not having to worry about too many commits (ours average 2-4) and keeping the work scoped to very small changes.

Space Kablooey
May 6, 2009


Blinkz0rz posted:

That makes commit messages entirely unhelpful, though. I'm not advocating that you leave the random "WIP" messages, but if a PR is only one commit and it touches a bunch of different things how in the world do you know if the work is appropriate?

Because usually there is more text related to the PR (like related tickets/issues, and description field in the PR itself) than the commit message, especially if you strongly adhere to the < 100 characters (or whatever was the number) for commit messages. Not to mention that you can just ask why a thing was done in a certain way and then discuss the implementation in the PR before merging.

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

HardDiskD posted:

especially if you strongly adhere to the < 100 characters (or whatever was the number) for commit messages.
Is that for the entire commit message or the first line? What I was seeing was to put something terse on the first line because that's what you'll usually see in the log, but then go ham in a separate section about why you did whatever, the limitations of the changes, and all that kind of crap.

Space Kablooey
May 6, 2009


Yes, that was for the first line.

And if your org works by going all ham in the commit description, like the unix (or git?) greybeards that have to e-mail diff patches around instead of relying on the tools that the community uses at large, then do it.

On that point, I am now having the impression that people only have the commit message as the only source of information about why a thing was done, when I always thought that tools that show an overview of the project as a whole (like GitHub/GitLab/Bitbucket/JIRA or alikes) were the standard on most orgs.

geeves
Sep 16, 2004


Thanks! I kept looking at Admin settings, not Repository Settings :haw:

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

HardDiskD posted:

On that point, I am now having the impression that people only have the commit message as the only source of information about why a thing was done, when I always thought that tools that show an overview of the project as a whole (like GitHub/GitLab/Bitbucket/JIRA or alikes) were the standard on most orgs.

In my experience, they're used inconsistently and poorly and oftentimes provide very little additional information.

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

HardDiskD posted:

And if your org works by going all ham in the commit description, like the unix (or git?) greybeards that have to e-mail diff patches around instead of relying on the tools that the community uses at large, then do it.
My team mates are not as steeped in this stuff as me so it's an uphill battle for this, but they generally understand the need. I tried to explain that the expanded message is very useful when trying to figure out how okay it is to change something. If there was a note that the code in that area never addressed XYZ and you have to make it address XYZ, then you know you can start pulling it apart.

Illusive Fuck Man
Jul 5, 2004
RIP John McCain feel better xoxo 💋 🙏
Taco Defender
I really hate this thing, and I feel like it must be a well known stupid thing with terminology around it, but I'm not sure what it's called or the best way to describe it.

I'm part of Org at BigCompany, and the high-ups in Org issue some edict like 'all products in Org must now X'. X is not fully described, and now there are dozens of teams all attempting to X, and all of them interpret X slightly differently and implement things differently and it's a waste of everyone's goddamn time. Like, if you're gonna issue these edicts, loving understand what you're asking for first and maybe even put together a team specifically for providing an implementation of X for all products in Org.

Cuntpunch
Oct 3, 2003

A monkey in a long line of kings

Illusive gently caress Man posted:

I really hate this thing, and I feel like it must be a well known stupid thing with terminology around it, but I'm not sure what it's called or the best way to describe it.

I'm part of Org at BigCompany, and the high-ups in Org issue some edict like 'all products in Org must now X'. X is not fully described, and now there are dozens of teams all attempting to X, and all of them interpret X slightly differently and implement things differently and it's a waste of everyone's goddamn time. Like, if you're gonna issue these edicts, loving understand what you're asking for first and maybe even put together a team specifically for providing an implementation of X for all products in Org.

Allow me to solve for X:

'Agile' ?

Illusive Fuck Man
Jul 5, 2004
RIP John McCain feel better xoxo 💋 🙏
Taco Defender

Cuntpunch posted:

Allow me to solve for X:

'Agile' ?

Nah, it's not process/planning stuff, or at least I don't have to deal with those. It's more like 'all products must have feature X', or 'all products must integrate with service X'

Munkeymon
Aug 14, 2003

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



Illusive gently caress Man posted:

Nah, it's not process/planning stuff, or at least I don't have to deal with those. It's more like 'all products must have feature X', or 'all products must integrate with service X'

Amazon-style microservices? New social network?

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Illusive gently caress Man posted:

I really hate this thing, and I feel like it must be a well known stupid thing with terminology around it, but I'm not sure what it's called or the best way to describe it.

I'm part of Org at BigCompany, and the high-ups in Org issue some edict like 'all products in Org must now X'. X is not fully described, and now there are dozens of teams all attempting to X, and all of them interpret X slightly differently and implement things differently and it's a waste of everyone's goddamn time. Like, if you're gonna issue these edicts, loving understand what you're asking for first and maybe even put together a team specifically for providing an implementation of X for all products in Org.

Poor leadership?

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

New Yorp New Yorp posted:

Poor leadership?

Bad leadership.

the talent deficit
Dec 20, 2003

self-deprecation is a very british trait, and problems can arise when the british attempt to do so with a foreign culture





Blinkz0rz posted:

That makes commit messages entirely unhelpful, though. I'm not advocating that you leave the random "WIP" messages, but if a PR is only one commit and it touches a bunch of different things how in the world do you know if the work is appropriate?

At current job, on my team, we do light-weight PRs which give you the nice advantage of not having to worry about too many commits (ours average 2-4) and keeping the work scoped to very small changes.

if a pr needs multiple commits to be clear, it should probably be multiple prs as well? it's pretty common for my team members to make 3-4 simultaneous prs for a feature that may rely on one another

Hughlander
May 11, 2005

the talent deficit posted:

if a pr needs multiple commits to be clear, it should probably be multiple prs as well? it's pretty common for my team members to make 3-4 simultaneous prs for a feature that may rely on one another

That seems odd to me. By rely on each other are they downstream of a common branch or are all from master? If I ignore or a, b, and d but approve c for merging will it still compile? And will a and b still be valid prs?

the talent deficit
Dec 20, 2003

self-deprecation is a very british trait, and problems can arise when the british attempt to do so with a foreign culture





Hughlander posted:

That seems odd to me. By rely on each other are they downstream of a common branch or are all from master? If I ignore or a, b, and d but approve c for merging will it still compile? And will a and b still be valid prs?

usually it works like A is an independent commit that adds some new functionality that B and C both rely on, and D is a commit that ties them all together and finishes the feature. B and C will be based off of A (so the prs for B and C include A) and D is based off of a temp branch that has A, B and C already integrated. you can merge A by itself, B (with A implicitly), C (with A implicitly) or D (with A, B and C implicitly). generally the prs are done off of the branch they were actually branched from so you get discrete diffs but they're then merged to master upon approval

smackfu
Jun 7, 2004

Question that came up at work: If your single page app is the only consumer of your REST API, and you have end to end feature tests, do you bother to integration test the API itself? It seems redundant to us but maybe there's some benefit?

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

smackfu posted:

Question that came up at work: If your single page app is the only consumer of your REST API, and you have end to end feature tests, do you bother to integration test the API itself? It seems redundant to us but maybe there's some benefit?

Integration tests are way faster and will more easily pinpoint the source of the error.

Pollyanna
Mar 5, 2005

Milk's on them.


Define integration test in this instance. I've seen people get very confused over testing terms, and you don't wanna run into any kind of X-Y problem because of that.

Keetron
Sep 26, 2008

Check out my enormous testicles in my TFLC log!

smackfu posted:

Question that came up at work: If your single page app is the only consumer of your REST API, and you have end to end feature tests, do you bother to integration test the API itself? It seems redundant to us but maybe there's some benefit?

We had exactly this and what we did was build stubbed backend system tests because they were so fast and then used the SOAP stubs for the services and Selenium for the SPA to test the combined frontend-backend application.
Reason was scalability, so that we could plugin another SPA if we wanted to and keep a good view on the continuous quality of the backend application so frontend bugs could be resolved quickly in the correct place and prevent regression on the existing functionality.

Did that help?

Ghost of Reagan Past
Oct 7, 2003

rock and roll fun
:kingsley: THIS NEEDS TO GET DONE NOW

Me: OK tell me what you need done

:kingsley: FIX THIS THING

Me: OK it's done, you needed one more thing, what was that?

*crickets*

Pollyanna
Mar 5, 2005

Milk's on them.


Ghost of Reagan Past posted:

:kingsley: THIS NEEDS TO GET DONE NOW

Me: OK tell me what you need done

:kingsley: FIX THIS THING

Me: OK it's done, you needed one more thing, what was that?

*crickets*

Headless Chicken-Driven Development.

smackfu
Jun 7, 2004

Pollyanna posted:

Define integration test in this instance. I've seen people get very confused over testing terms, and you don't wanna run into any kind of X-Y problem because of that.

That's fair. A test that would require us to spin up a database instance and a real web server.

And the thing we would test would be whether the API endpoints return the correct results.

Pollyanna
Mar 5, 2005

Milk's on them.


smackfu posted:

That's fair. A test that would require us to spin up a database instance and a real web server.

And the thing we would test would be whether the API endpoints return the correct results.

You shouldn't have to involve your front-end app if you're specifically testing the behavior of the API. The integration tests will be faster if you just write tests for your REST endpoints or whatever. That said, if you're also testing the SPA's behavior then the end-to-end feature testing makes a little more sense even though it's probably slow as hell.

It's ultimately up to you and your team to figure out what's most comfortable and easier to pull off. You'll have to make decisions and judgment calls on how much effort should be invested where. If it ain't broke, might as well be too lazy to fix it.

CPColin
Sep 9, 2003

Big ol' smile.

Pollyanna posted:

You shouldn't have to involve your front-end app if you're specifically testing the behavior of the API. The integration tests will be faster if you just write tests for your REST endpoints or whatever.

Ugh, so much of the automated testing of the API functionality at my last job worked by firing off carefully constructed HTTP requests. And yes, they took forever. So somebody multi-threaded them, which made people's dev machines grind to a halt on the rare occasions anybody ran the test locally because of the dozens of threads thrashing around.

When I finally implemented some API functionality, I tested it by actually calling the drat functions directly.

I wonder what the automated testing looks like now, after the other guy who was doing them left voluntarily and I was laid off.

necrobobsledder
Mar 21, 2005
Lay down your soul to the gods rock 'n roll
Nap Ghost

CPColin posted:

I wonder what the automated testing looks like now, after the other guy who was doing them left voluntarily and I was laid off.
Probably gone to hell and nobody's running them anymore. Broken Window Theory applies a lot to software engineering I've noticed. The opposite (someone fixing a few things and others following suit seeing the improvements) is far, far, far harder than it sounds like.

Che Delilas
Nov 23, 2009
FREE TIBET WEED
We released a UI update to one of the sections of our product last week. This update has been in development for at least a month and a half and has been shown in review at least three times and has received praise and some feedback each time.

Today one of our pro services people saw it and said it looks retarded. Someone from pro services has been to each review where this update was shown and they had ample opportunity to comment on the way it looked and how the current version was used. They did not.

We took issue with this.

Edit: What really burns me is that there is something we can do to make the situation better: we can get these features onto a UAT environment earlier, because it's hard to get a feel for new poo poo when it's just being shown to you. But what's going to end up happening, and I KNOW it will happen, is that we'll spend the extra effort to get it onto the UAT environment and tell the rest of the company exactly what's updated and how they should get to it, and they just won't. They're not going to bother.

At least if we do that we can tell them to pound sand if they bitch after it goes live. In any case they were way over the line with their comments today.

Che Delilas fucked around with this message at 06:50 on May 12, 2017

Polio Vax Scene
Apr 5, 2009



Ghost of Reagan Past posted:

:kingsley: THIS NEEDS TO GET DONE NOW

Me: OK tell me what you need done

:kingsley: FIX THIS THING

Me: OK it's done, you needed one more thing, what was that?

:kingsley: I am out of the office until Monday May 15. if you need assistance please contact support.

FTFY

Jo
Jan 24, 2005

:allears:
Soiled Meat
I think I'm burning out pretty hard and pulling down the rest of my team. Not entirely sure how to broach the subject with my boss.

:siren: Whiny rant. Venting. Please ignore. :siren:

I've been doing the AI/ML work for our project, particularly as it relates to search and document clustering. My stuff is way behind, but I get to the office and sit down with a task I've broken into what I think is a tiny digestible piece like, "write document models to preproduction," and can scarcely muster the energy to do that. Partially, I think it has to do with the knowledge that it's going to take a few days to write all the documents to the database, there's a 50/50 chance it will crash in the middle and I'll have to start over, and ideally I'll catch poo poo from our DBA who insists I need to find a smarter way to insert records. He's right, of course -- I'm not a good developer. But loving hell, it's a multi-million dollar company and we have maybe 60 users of the database. Is it really unreasonable to insert a few million rows on a Friday afternoon?

I feel like everything I do takes longer than it should by a factor of 10. I'm about 99% sure it's my fault, too, but when it comes to actionable solutions, I'm coming up blank and the continuous pressure of underperforming has crushed my will. I don't even feel like working on my personal projects any more.

:siren: This has been a test of the emergency whiny rant system. :siren:

Skandranon
Sep 6, 2008
fucking stupid, dont listen to me

Jo posted:

I think I'm burning out pretty hard and pulling down the rest of my team. Not entirely sure how to broach the subject with my boss.

:siren: Whiny rant. Venting. Please ignore. :siren:

I've been doing the AI/ML work for our project, particularly as it relates to search and document clustering. My stuff is way behind, but I get to the office and sit down with a task I've broken into what I think is a tiny digestible piece like, "write document models to preproduction," and can scarcely muster the energy to do that. Partially, I think it has to do with the knowledge that it's going to take a few days to write all the documents to the database, there's a 50/50 chance it will crash in the middle and I'll have to start over, and ideally I'll catch poo poo from our DBA who insists I need to find a smarter way to insert records. He's right, of course -- I'm not a good developer. But loving hell, it's a multi-million dollar company and we have maybe 60 users of the database. Is it really unreasonable to insert a few million rows on a Friday afternoon?

I feel like everything I do takes longer than it should by a factor of 10. I'm about 99% sure it's my fault, too, but when it comes to actionable solutions, I'm coming up blank and the continuous pressure of underperforming has crushed my will. I don't even feel like working on my personal projects any more.

:siren: This has been a test of the emergency whiny rant system. :siren:

Well, if the DB is right now a major hurdle, I see two options to resolving it. One, spend some time with the DBA to find that better way to insert records. He should help you with this, that is what DBAs are SUPPOSED to do, not just bitch (which is what they usually do). Two, if the DBA is not helpful, or admits there IS no better solution, maybe you need some dedicated hardware. Make a case how you will be X% more productive if the DB isn't crashing all the time.

Adbot
ADBOT LOVES YOU

AskYourself
May 23, 2005
Donut is for Homer as Asking yourself is to ...

Jo posted:

I need to find a smarter way to insert records.

I'm not sure you were looking for technical advice or not but if yes :
Are you using SQL Bulk Insert and SQL Merge or the equivalent of your RDBMS ? Inserting a few million rows using individual insert statement is a big no-no.

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