|
Chalks posted:there's a guy on our team who runs a script to list branches each time we do a release and asks anyone who's got a branch wtf is going on with it. the idea is to avoid accidentally missing features that are meant to be in the release but didn't get merged, but it also means we have very few stale branches We're stopping the bleeding right now. The rot is mostly confined to our old services/repos and new repos look nice so people are motivated to keep them clean, so while we have some clean up to do it's not getting worse.
|
# ? Jan 6, 2019 01:03 |
|
|
# ? Apr 27, 2024 05:27 |
|
AWWNAW posted:could you post some prolog for day 16? been thinking of trying it in miniKanren sure but it was nothing special, mostly me being cute. it was just about generating some prolog facts with a script.
|
# ? Jan 6, 2019 02:04 |
|
DONT THREAD ON ME posted:i thought scala was big and complicated and full of warts (and it is) but C++ is on another level. c++ has the excuse of being ancient. the people working on scala should have known better
|
# ? Jan 6, 2019 04:12 |
|
When I started the process of cleaning up and standardizing my team's development structure, I pushed hard for a consistent and repeatable git branch structure. All branches must have the ticket name in them. All branches must have the developers name in them. All branches must first be merged with the develop branch before submitting a pull request. All pull requests have to pass CI before being accepted. All new code must have at least 80% test coverage. All pull requests must only do one thing, and that 1 item must be done thoroughly. If the pull request is below 100 lines of code, only one developer has to review and approve it. If the pull request is above 100 lines of code, two developers must review and approve the code. For C++: CI also include a Valgrind check, although at this point it’s customary, as all C++ code must adhere to RAII. Pull requests must not introduce any new compiler warnings. For Python: Flake8 must be satisfied. PEP8 must not produce a score below 9.0. Deployment: Two days before the end of the sprint, develop is pushed to staging, and staging is built and pushed to the staging server, where our testing guys test it for two days. If approved, the code is pushed to master and tagged with a version. Versions are: YYYY.MM-Release It took around eight months to get everything into an excellent order like that, but in the end, it makes everything much more comfortable. I don't know if this is all gold practice, but it seems to work well for is.
|
# ? Jan 6, 2019 05:09 |
|
ratbert90 posted:Versions are: YYYY.MM-Release This all sounds real good. Versions are coming up on my list. We have a microservice architecture but talk internally about versions according to what marketing tags our customer release updates with. We're pretty good about being able to deploy rapidly and other remote teams in our company working on other software products consume our services, so being able to version services either based on API updates or even just builds would be a huge improvement.
|
# ? Jan 6, 2019 05:36 |
|
Shaggar posted:c++ has the excuse of being ancient. the people working on scala should have known better listening to odersky talk about how he tried to make scala as minimal as possible was...interesting. i think it's more that all of scala's features overlap heavily than there specifically being a lot of them
|
# ? Jan 6, 2019 17:31 |
|
Shaggar posted:c++ has the excuse of being ancient. the people working on scala should have known better that's academia for ya
|
# ? Jan 6, 2019 17:32 |
|
Soricidus posted:the "git revert" command is right there and does the right thing. it’s not git's fault if someone tries to open a can of beans with a bazooka it is when the can opener and the bazooka are right next to each other, look identical, have similar inscrutable labels, and it turns out you can use the bazooka as a can opener if you toggle the right switch first (ditto for using the can opener as a bazooka) git: take my penknife my good man user: *destroys tank*
|
# ? Jan 6, 2019 18:31 |
|
pokeyman posted:have similar inscrutable labels what alternative label would have been less inscrutable than “revert”, for the command that reverts changes? I’ll give you “rebase” being inscrutable, but the kind of person who says “hmm, I don’t know what this command name means and I don’t understand the documentation, guess I’ll run it anyway and then ignore all the warnings to force push the changes” is going to break things horribly whatever tool you give them
|
# ? Jan 6, 2019 19:02 |
|
Soricidus posted:I’ll give you “rebase” being inscrutable, but the kind of person who says “hmm, I don’t know what this command name means and I don’t understand the documentation, guess I’ll run it anyway and then ignore all the warnings to force push the changes” is going to break things horribly whatever tool you give them I worked with a dude once who managed to merge a branch into itself and gently caress it all to hell not like, from a remote or anything. just merged a local branch into itself and caused every single line to conflict. I couldn’t do that on purpose
|
# ? Jan 6, 2019 20:48 |
|
at my first job as a git-toucher I somehow managed to get a merge conflict with myself
|
# ? Jan 6, 2019 21:17 |
|
ratbert90 posted:When I started the process of cleaning up and standardizing my team's development structure, I pushed hard for a consistent and repeatable git branch structure. And I'm angry about that "only one thing, thoroughly" rule because I had to do so many PRs that are just "added a little right margin and made the text a little larger", followed by "too much right margin and text not large enough". I almost started charging fingers every time somebody said "just one more change".
|
# ? Jan 6, 2019 21:25 |
|
Soricidus posted:what alternative label would have been less inscrutable than “revert”, for the command that reverts changes? I was thinking of "revert" vs. "reset", which are similar in English (sometimes synonyms), but their effects in git are quite different in a way that’s inscrutable without useful documentation and no, git help is not useful documentation until you have a working knowledge of git internals I’m with you to a point about people running commands they don’t understand. but there are hundreds of commands/tools I might use in a typical week of software development, and I don’t know details about their internal workings, and I don’t know what every subcommand is, yet I manage to use them successfully. we’re a bit past the days where everyone running the command has at some point perused the source code that implements that command
|
# ? Jan 6, 2019 21:45 |
|
Soricidus posted:the "git revert" command is right there and does the right thing. it’s not git's fault if someone tries to open a can of beans with a bazooka What kind of cheap rear end beans are you buying in TYOOL 2019 that don't have a ringpull anyway?
|
# ? Jan 6, 2019 21:59 |
|
Dijkstracula posted:at my first job as a git-toucher I somehow managed to get a merge conflict with myself this should be on eof those "programmer achievements" though iirc it's easy to do this with just a csproj file if you add and remove files from the solution in two different branches also we have a release branch for the month's work, everything is checked into that. pretty sure I'm the only person that knows how to create a feature branch off it to actually separate changes and there's definitely no way anyone else knows what a rebase is
|
# ? Jan 6, 2019 22:16 |
|
darthbob88 posted:I agree with most of this, but what do you mean by "All branches must first be merged with the develop branch"? I need to merge master/testing/staging into darthbob88-#42069-ButtsNotFarting before I make a PR? All new branches during the sprint are forked from Develop, as such, Develop needs to be guaranteed to build and pass CI. We ran into problems in the past where we would get merge conflicts with develop immediately after a pull request is set up. So now the rule is that before a pull request to develop is made, the developer has to run “git merge develop” first. As to your second point: Doing one thing but doing it completely may be a hassle for some things, it makes being able to revert a million times easier.
|
# ? Jan 7, 2019 06:04 |
|
ratbert90 posted:All new branches during the sprint are forked from Develop, as such, Develop needs to be guaranteed to build and pass CI.
|
# ? Jan 7, 2019 08:52 |
|
ratbert90 posted:All new branches during the sprint are forked from Develop, as such, Develop needs to be guaranteed to build and pass CI. We have a similar set up but we don't worry about pull requests with merge conflicts, vsts won't let a pr complete if it has conflicts so it's basically the same as any other pr feedback.
|
# ? Jan 7, 2019 09:06 |
|
pokeyman posted:I was thinking of "revert" vs. "reset", which are similar in English (sometimes synonyms), but their effects in git are quite different in a way that’s inscrutable without useful documentation oh, yeah, reset is very poorly named (half its functionality isn’t even related to resetting things) really git needs to disable all but the common useful commands by default, and hide the others until you explicitly enable them. preserve all the useful functionality but make it clearer when you’re straying into areas where it’s easy to gently caress things up if you don’t know what you’re doing.
|
# ? Jan 7, 2019 10:15 |
|
re: stale branches.... What if the main stable and dev branches are actually the stale branches? Our Russian outsourcers haven't merged any feature branches into the main develop branch in over a month, and nothing has been merged into master (supposed to be stable) branch in over 3 months. Did a little more digging and found "feature" branches for each client (we are a client). The way they architected this was as a framework they could use as a submodule for infinite client repos. Well, now every client has its own bespoke feature branch in the framework, so there really is no framework anymore... just a maze of twisty branches, none alike. I have stopped accepting any commits from them, and we're also pushing back on the 1000(!) hours they charged us the last billing cycle even though they barely made any updates at all to our branch.
|
# ? Jan 7, 2019 16:23 |
|
lmfao how dumb does a person have to be to outsource to the country that literally has the longest-standing unresolved grudge with us of all of the countries on the planet (aside from the native peoples of course)
Corla Plankun fucked around with this message at 18:18 on Jan 7, 2019 |
# ? Jan 7, 2019 18:16 |
|
Corla Plankun posted:lmfao how dumb does a person have to be to outsource to the country that literally has the longest-standing unresolved grudge with us of all of the countries on the planet (aside from the native peoples of course) Brits outsource to India all the time
|
# ? Jan 7, 2019 18:20 |
|
Chalks posted:We have a similar set up but we don't worry about pull requests with merge conflicts, vsts won't let a pr complete if it has conflicts so it's basically the same as any other pr feedback. This rule is pretty archaic. In the beginning, we were in dumpster-fire fixing mode, and it wasn't uncommon to have 20 - 50 merge conflicts. Also, it wasn't uncommon to see pull requests attempt to fix 20 things and have 5,000+ lines of code change in them. Nowadays the product is incredibly stable with a modern, RAII/C++17 code base and pull requests are generally in the 100 - 200 lines of code changed range. The big thing right now is re-architecting the project. Right now it builds everything into static libraries, we are going to move that over to shared libraries pretty soon. FlapYoJacks fucked around with this message at 18:50 on Jan 7, 2019 |
# ? Jan 7, 2019 18:32 |
|
feedmegin posted:What kind of cheap rear end beans are you buying in TYOOL 2019 that don't have a ringpull anyway? ive pulled the ring straight off while trying to open cans o beans
|
# ? Jan 7, 2019 18:37 |
|
Corla Plankun posted:lmfao how dumb does a person have to be to outsource to the country that literally has the longest-standing unresolved grudge with us of all of the countries on the planet (aside from the native peoples of course) lol yeah I know and now I just got done dealing with a piss baby rant from the CEO about how we need crunch mode to get anything done. I told him flat out we're not going to do crunch mode (CTO said the same thing or lol I'd prob be gone), which kicked off the aforementioned ranting. I'm so glad I'm in a startup. startups are really great and so much better than dealing with lovely enterprise management because
|
# ? Jan 7, 2019 18:59 |
|
Last time we did crunch mode we did it voluntarily, but for a Mon-Thu with Friday off One person worked a literal 2 hours extra and took Friday off anyway. They no longer work at my company. Good riddance (not for the slacking, but for the being really useless and irritating to work with)
|
# ? Jan 7, 2019 19:09 |
|
dick traceroute posted:Last time we did crunch mode we did it voluntarily, but for a Mon-Thu with Friday off Lol I work 4 days a week at my company. I always plan my sprints to give me just enough to do for 30 hours a week and I am more productive than when I was working 60+ hours a week at my previous company. gently caress working 40 hours a week for another company, I will never EVER do it again.
|
# ? Jan 7, 2019 19:27 |
|
ratbert90 posted:Lol I work 4 days a week at my company. I always plan my sprints to give me just enough to do for 30 hours a week and I am more productive than when I was working 60+ hours a week at my previous company. Yeah, now I just gotta explain this to the CEO. I emailed him a list of "overtime hurts productivity" articles and he immediately responded with "I read them". Speedreader?? Anyway, he apologized for "getting fired up" but not for asking for overtime. I've been off my anti-anxiety meds for a number of months, but feel like I'm really close to having a panic attack...
|
# ? Jan 7, 2019 19:36 |
|
feedmegin posted:What kind of cheap rear end beans are you buying in TYOOL 2019 that don't have a ringpull anyway? it’s a git analogy, I’m not going to pick something that obvious and convenient
|
# ? Jan 7, 2019 19:40 |
|
Finster Dexter posted:Yeah, now I just gotta explain this to the CEO. I emailed him a list of "overtime hurts productivity" articles and he immediately responded with "I read them". Speedreader?? Anyway, he apologized for "getting fired up" but not for asking for overtime. Stop giving a poo poo and don't take anything personally. It's just business, and if it's not working out, then jump ship. Got an email a few days of which I ignored: quote:"Hi Adam, Got a email today: quote:"Hi Adam; The gift that keeps on giving. This is now month 7 and they are still searching for a replacement.
|
# ? Jan 7, 2019 21:09 |
|
ratbert90 posted:Stop giving a poo poo and don't take anything personally. It's just business, and if it's not working out, then jump ship. Well some of the stuff he said I'm pretty sure it was meant personally...as in I'm not working hard enough, etc. It's also hard not to give a poo poo unless I'm at a big company. At this startup, if I leave they will probably just die, and the product is interesting and fulfilling work... ignoring the Russians and CEO rants. I'm not saying you're wrong, I'm just trying to process I guess.
|
# ? Jan 7, 2019 21:55 |
|
hoooo boy our ancient wiki platform that uses some weirdo code base from 2002 with custom mods on top got assigned to me as system owner because they canned the previous guy and there's 2gb of text stored in it dating back nearly 15 years. nobody knows how it works. in theory we're all supposed to be on confluence but oh look, the grognards in the c++ corner are still actively using it and making updates i think I'm gonna change the logo gif to the get out frog and see who complains.
|
# ? Jan 7, 2019 22:01 |
|
eschaton there is no reasonable way to get vim-mode in my xcode. i hold you personally responsible, as an emacs fan you should appreciate the importance of extensibility.
|
# ? Jan 7, 2019 22:13 |
|
You should make a deprecation and turndown plan, and send it to everyone (especially the c++ grognards). After about a month of no-one actually looking at the plan, then you can start switching the system off using your previously-written plan (that no-one objected to) as justification.
|
# ? Jan 7, 2019 22:14 |
|
DONT THREAD ON ME posted:eschaton there is no reasonable way to get vim-mode in my xcode. i hold you personally responsible, as an emacs fan you should appreciate the importance of extensibility. that's one design feature I can get behind
|
# ? Jan 7, 2019 22:45 |
|
yeah you're always behind
|
# ? Jan 7, 2019 22:46 |
|
Anyone use Veracode because After smashing CI with way too many builds I get a 17 page report that appears to be utterly incorrect. Half a dozen signed/unsigned comparison errors on what are just lines with function calls in, and this single piece of code, which is apparently a severe numeric error: C++ code:
|
# ? Jan 8, 2019 01:11 |
|
Jabor posted:You should make a deprecation and turndown plan, and send it to everyone (especially the c++ grognards). this is exactly the plan I had in mind turns out on digging around we have shitloads of orphaned databases being kept for no reason and an unbelievable amount of trash in the shared svn instance, like, somebody just imported a lost and found folder from clearcase to svn 6 years ago and left it full of thousands of temp files i know 100% that I am the only person that cares about any of this which is probably what pissed me off the most edit: one team have been using svn to store emails containing requirements, random documents, all sorts of crap
|
# ? Jan 8, 2019 01:12 |
|
Finster Dexter posted:lol yeah I know and now I just got done dealing with a piss baby rant from the CEO about how we need crunch mode to get anything done. I told him flat out we're not going to do crunch mode (CTO said the same thing or lol I'd prob be gone), which kicked off the aforementioned ranting. If it's any comfort, it happens elsewhere and even with regular non C level coworkers being the source of that dumb poo poo. I work at an AAA games company (yayyyyyyyy) and had a department lead (not my department) try to get higher ups to force me to work overtime (they just went uwot when asked), because we had been working on something for months and he kept going back and forth on what he wanted and suddenly we were a few days away from release. He only shut up and stopped with that crap when I told everyone involved that if I were to do overtime for that piece of poo poo of a person, I'd quit the next day. I no longer work with that guy directly (HR got involved in the end and told him to gently caress off), but it sounds similar to your situation (demeaning work done; implying not pulling my own weight; etc). People can be cunts and if it reaches a point where it's stressing you out, you're better off jumping ship if you can. You don't owe your employer anything more than the work you've already done.
|
# ? Jan 8, 2019 01:32 |
|
|
# ? Apr 27, 2024 05:27 |
|
Powerful Two-Hander posted:an unbelievable amount of trash in the shared svn instance please stop talking about my life’s work
|
# ? Jan 8, 2019 01:53 |