Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "trunk"
-
New Guy Day 2: He has deleted the git repo on the project he was assigned to 4 times, written a recursion formula that crashed a server, & knocked my coffee cup onto the floor.
I messaged my boss telling him I am going to hide the body in his trunk.8 -
Requirements vs Delivery - Guide to Programming
This one is a killer and I've received it in multiple forwards in office email, and we always have a good laugh seeing this joke.
Client: “Our next requirement, and this is something big you know, we need an elephant”
IT Team: But why don’t you adjust with a buffalo, even it is big…. and black?”
Client: No, we need an elephant only, let me explain our current process……” (client explains for an hour)
IT Team: Fine, I understand your requirement. But our system supports only a buffalo…
Client:We need only an elephant!
IT Team: Ok, let me see if I can customize it for you”
Requirements are taken as follows:
Client wants a big black four legged animal, long tail, less hair. Having trunk is mandatory. The same was documented, signed off and sent to offshore for development!
At the Offshore Development Centre,
Design/Development – Based on requirement all features are supported in base product (as buffalo), for trunk alone a separate customization is done.
Finally the customization is shown to client:2 -
John von Neumann once said: "With four parameters I can fit an elephant, and with five I can make him wiggle his trunk."
We took it literally4 -
TFW your client's git policies are so draconian that the dev teams use "develop" as trunk, and completely ignore the release process.
I wrote up 50 pages of git standards, documentation and procedure for a client. Bad indian director 9000 decides the admin (also Indian) who specializes in Clearcase and has no git or development experience is more qualified to decide and let's him set the policy.
FF to today:
- documentation, mostly contradictory, is copy pasted from the atlassian wiki
- source tree is the standard
- no force pushing of any branches, including work branches
- no ff-merge
- no rebasing allowed
- no ssh, because he couldn't figure it out...errr it's "insecure"
- all repos have random abbreviated names that are unintelligible
- gitflow, but with pull requests and no trust
- only project managers can delete a branch
- long lived feature branches
- only projects managers can conduct code reviews
- hotfixes must be based off develop
- hotfixes must go in the normal release cycle
- releases involve creating a ticket to have an admin create a release branch from your branch, creating a second ticket to stage the PR, a third ticket to review the PR (because only admins can approve release PRs), and a fourth ticket to merge it in
- rollbacks require director signoff
- at the end of each project the repo must be handed to the admin on a burned CD for "archiving"
And so no one actually uses the official release process, and just does releases out of dev. If you're wondering if IBM sucks, the answer is more than you can possibly imagine.11 -
!Rant But after seeing this I laughed like hell I need to share this to all my dev folks.
Client: “Our next requirement, we need an elephant”
IT Team: But why don’t you adjust with a buffalo, even it is big…. and black?”
Client: No, we need an elephant only.
IT Team: Fine, I understand your requirement. But our system supports only a buffalo…
Client:We need only an elephant!
IT Team: Ok, let me see if I can customize it for you”
At the Offshore Development Centre :
BA – Client wants a big black four legged animal, long tail, less hair. Having trunk is mandatory. The same was documented, signed off and sent to offshore for development! Based on requirement all features are supported in base product (as buffalo), for trunk alone a separate customization is done.
Finally the customization is shown to client, and the client faints
Addon to this, testers completed their test case as above1 -
Reasons why I hate the hospital I work for...
1. NO fucking budget, for fuck sakes our telecom system is still running Merlin Magix. (I’ve been working on getting the trunk and everything to at least push FreePBX out... Configuration configuration.) but, that requires a decent server to host said system... But guess what? We’ve still got a few servers online that are running server 2012 r2. NO FUCKING BUDGET.
2. Training. They don’t have the budget to send me to training, but the doctors here are rolling in Mercedes... Must be fucking nice.
3. I have 5 f-I-v-e job descriptions. I’m a bio medical technician, network admin, system admin, programmer, and help desk... I fucked up allowing them to know I program.
4. On call 365 days a year. That’s nice and all, but when I’ve got shit to do and the nearest Walmart is an hour away I don’t want a call from Louis “oh the printer has a jam” FUCK OFF LOUIS! Get the paper out, we’ve been over this, I believe in you!
5. Some of the FUCKING (l)users.... You wouldn’t imagine some of the calls I receive, some of my favorite being late late “Hey *anonyops* I know it’s late but we’re needing a chair moved from one room to the other.” FUCK YOU YOU CHEEKY FUCKING CUNT.
The only reason I’m still here is my direct supervisor and a hand full of people that I’ve grown to love. Also, because any computer related job here is either outsourced or filled by a YouTubing god. - reason 1 why I started my own business. Supply and demand.
Rural Kansas Hospitals = shit, inb4 thanks —insert president to blame—20 -
"I didn't get the email. I checked my spam folder"
"Did you check your trunk folder? I've heard there's junk in your trunk"2 -
Help. I'm drowning in spaghetti code
I've been working at a working student (15 hours/ week) at a local software company for about a month now... and with everything I learned at college I'm kind of getting eye cancer here.
We still use SVN
We don't have any coding guidelines. No checkstyle, no overview over the program. When I started there I was just giving a ticket and they said good luck.
We just have some basic RCPTT Tests inside Eclipse and most of Themen don't work in the trunk because the gui got changed...
At least we have a ticket system but it doesn't get used by most of the working students.
I found 10 other bugs while reproducing and trying to fix 1 bug.
And I've never seen Java raped so badly. Today I saw a line that started with 6 brackets because whoever wrote it wanted to cast like there was no tomorrow. I see more instanceof in one day than in my whole devlife before.
The only thing we have is two normal employees that review our code before we are allowed to commit it into the trunk.
So yeah... I'm drowning in spaghetti-code.2 -
Someone just overwrote 2 weeks of work in SVN because they don't understand merging.
When they did an update before committing they ignored the conflicts and tried to build their work.
But wait it won't build if their are conflicts, I know I'll just copy this backup over the checkout and check that in instead.
It took me over an hour tho fix this fucktard's mistake and I still don't think they understand what they did wrong. Their supposed to have 40+ years of experience.
In the end it turned out they wanted to change about 10 lines. They had checked in files that they didn't even change, they were just out of date compared to trunk.4 -
i was hired to join a team of old devs (40+) in an unnamed European country "yay goodbye 3rd world it's time to enjoy the quality of life" assist with enhancing already existing software and creating new solutions.
prior to my arrival most things were slow and super buggy, looking at the code base it shouldn't be a surprise, amateur hour everyone, logic implemented that is not needed, comment driven development, last time code review was done back in 1996. lots of anti patterns.
i swear there is a for loop that does nothing but it loops through a 100+ elements list, trunk based development with tfs since git is "not really needed"
test projects are not there.
>enter me an educated fool, with genuine passion for the craft and somehow a decent amount of knowledge.
>spent the last year fixing stuff educating people on principles and qualities.
> countless hours of training and explaining. team is showing cooperation, a new requirement comes in to develop with react.
> tear my ass creating reusable shit and self explanatory code with proper naming etc using git with feature branching, monday is first deployment day.
> today a colleague was working on an item submit a pull request and self approve it
> look at the code..... WTF the dumb fuck copied and pasted the whole code from different kendo components but somehow managed to refractor the name to test component, commented out all the code that he didn't use did the api call directly from the component, has 2 useeffects that depends on the a fucking text box changes for no reason, no redux implementation, the acceptance criteria is not achieved, and it doesn't work it just look right.
> first world country shit cannot scold, cannot complain, lead by example.
>asked him why you did this, the response was yeah probably i shouldn't have done that, i really didn't understand anything in the training but didn't want to waste time!!!!
> rest of the team created a different styled disaster with different flavors they don't even name their shit the same way.
fellow developers I'm stuck in a spaceship with a bunch of imposters, seriously i never cried in my entire life now I'm teary and on the verge of a break down.
talk with management "improving needs time" and offers me to join a yoga session to release the stress as if reaching nirvana would deliver shit on monday.
i really don't know what do is this a rant, is this a cry for help, I'm not sure, any advice is welcomed.7 -
The moment when you realize the new intern merged a old cutout SVN branch into trunk and in effect nullified your changes..........Son of *#$ch. Why the fuck are we still using SVN2
-
Our employee management system, for some reason, stored Testlists (I work in QA) linked to the user accounts that created them. Now after an colleague who worked there for five years left pretty much all our data was suddenly down the drain and nobody backed the fricking server up because, hey, whats the fun in that. Now all the tests need to be rewritten and other than the whole gui test automation of our product, maintenance of the same for another product, manually testing dev issues and training my new code monkeys to frickin not commit non working code to the trunk I have now also "Make a better Employee management system" (roughly translated those are the specs I've got) on my plate... I can remember back to the care free days of just before my boss asked me if I wanted to try to automate some of the test cases... How did I ever survive this paralyzing tranquility. Ha, surprise.
!rant, I fucking love the stress and juggling a shit ton of problems at the same time keeps ine on edge.2 -
Do you think the keywords used by git (or other version control systems) are intuitive?
I'm talking to a very junior dev about git and I find myself having to explain around the fact that I don't feel the keywords are great. They are asking good questions like
* Why do you say "push the commit" but then say "make a pull request" - when I want to push why isn't it called a "push request"
* "Why are the metaphors sometimes related to trees (branches), sometimes roads (forks) but you still call it "master" instead of tree trunk or main road?
* Why do you call it "commit", what kind of commitment am I making?16 -
Someone once used to auto-format most of our code in his branch. He merged it 4 days long and deleted multiple changes in the trunk doing that. 3 months later I noticed that a few of my changes were just gone.2
-
With all this sexuality bullshit going on with devRant, it feels like covid all over again to me. We just rid of covid and now we face a couple of variants of it.
Keep your junk in your trunk and let the bullshit end55 -
Oh what's that? You merged trunk into RC the day before the release? Nice one.
Now go roll it back and think about what you've done.1 -
I've accidentally submited a wpf bool-to-visibility converter with inversed rules. On SVN, right to the trunk.
-
The team lead frequently changes a common library in the trunk, then he complains to us why we are not reflecting those changes in the branches. I neeeeeed heeeeeelp im going craaaaaaaazyyyyyyyy.1
-
Just joined a new company and can only describe the merge process as madness.....is it or am I the one that is mad?!
They have the following branches:
UAT#_Development branch
UAT#_Branch (this kicks of a build to a machine named UAT#)
Each developer has a branch with the # being a number 1 to 6 except 5 which has been reserved for UAT_Testing branch.
They are working on a massive monolith (73 projects), it has direct references to projects with no nuget packages. To build the solution requires building other solutions in a particular order, in short a total fucking mess.
Developer workflow:
Branch from master with a feature or hotfix branch
Make commits to said branch and test manually as there are no automated tests
Push the commits to their UAT#_Development branch, this branch isn't recreated each time and may have differences to all the other UAT#_Development branches.
Once happy create a pull request to merge from UAT#_Development to UAT#_Branch you can approve your own pull request, this kicks off a build and pushes it to a server that is named UAT#.
Developer reviews changes on the UAT# server.
QA team create a UAT/year/month/day branch. Then tell developers to merge their UAT#_branch branches in to the previously created branch, this has to be done in order and that is done through a flurry of emails.
Once all merges are in it then gets pushed to a UAT_Testing branch which kicks off a build, again not a single automated test, and is manually tested by the QA team. If happy they create a release branch named Release/year/month/day and push the changes into it.
A pull request from the release branch is then made to pre-live environment where upon merge a build is kicked off. If that passes testing then a pull request to live is created and the code goes out into production.
Ahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh it's a total mess. I knew when I took on this job it would be a challenge but nothing has prepped me for the scale of the challenge!! My last place it was trunk based development, commit straight to master, build kicks off with automated testing and that just gets pushed through each of the environments, so easy, so simple!
They tell me this all came about because they previously used EntityFramework EDMX models for the database and it caused merge hell.9 -
What branching methodology do you use and why? We've been using a trunk based development model, but I'm reviewing others.10
-
When you are virtually done with a story and then merge trunk and discover that something fundamental has changed so you need to basically rewrite half of it. You spend ~2 hours refactoring about 8 classes and their tests before realising that this way wont work either. So you have to rewrite it again.....
-
Same product repo, two projects, 2 tech leads and 4 pms. Each project is a race to merge for trunk so the other has to do it.
-
You know what? You can all go plug your heads into each other's arseholes, Cocoapods people, just like the human centipede. I've had enough with you.
I have several libraries that were created back in version 0.38 or something. All of the sudden, you jump to v1.0 and call it ready for prime time. Except the pod doesn't build anymore and I can't publish to the trunk.
When running pod install on them, I get a hopeful message saying it's "re-creating CocoaPods due to major version update", but 2ms later the humongous pile of dog poo crashes, because it was expecting some file to be somewhere. Still not happy, it messes up the remote URL on git.
So I deleted everything and created a new project using v1.0 and populated it with my library, only to find out that now the project won't build because it's fucking Xcode with your shitty piece of software on top of it.
It's already too much of a pain to deal with Xcode's tantrums, but deliberately having to put up with Cocoapods' horseshit on top of that is just torture.
Hope you lose all internet connectivity for three hours today, right in the middle of something important. Because that's how much of my life you've stolen from me. -
People that approve pull requests without looking at them!
No tests or so bad they would do more use by not existing, typos, the code follows none of the design practices and the code obviously will not compile and thereby breaks builds in trunk for everyone.
Because of course they only asked one person to review it and then merged it immediately. -
https://trunkbaseddevelopment.com/
A source-control branching model, where developers collaborate on code in a single branch called ‘trunk’ *, resist any pressure to create other long-lived development branches by employing documented techniques. They therefore avoid merge hell, do not break the build, and live happily ever after.
// Thanks guys, after such a nice introduction I now feel obligated to read the whole damn thing -
Last week, last sprint. Decided to migrate to latest trunk (it was svn back in the days) of the CMS we used just to get the new great feature. Customer really liked it, but didn’t like the bugs we found in the following weeks.
If you ask me, it worth and will do it again. -
So trunk-based is the new approach everyone is using, because it is so cool.
I used gitflow for the last projects with azure devops, set up the pipelines like tipically in 1 week if I had other things to do with the help of the portal clicking through things. PR-s triggered pipelines, everything worked cool.
But then trunk-based got momentum, so I worked with this client where 2 developers worked for !!!3 months!!! to setup trunk-based pipeline. It was not my money, so I did not say a thing. They were using infrastructure as code.
I am all in for automation, but seriously? Then again, another project where a DevOps team took 1 dev-month to setup the pipeline + meetings. And what do you get in the end? So that the same image goes on all environments? Like how many releases do you have for prod in a year. Lets say 24. 24 x 5 minutes of manual work for the release, that is 2 hours. So my question is why would you spend 2 hours of manual work while you can automate it merely in a month? Everyone loves to code, but using the ui on the DevOps portal saves you so much time. I don't get this. Maybe I am getting old :D4 -
The only time I didn't envy git is when most of the team had to refetch after our lead front-end developer deleted trunk, committed the deletion, and then a backender had to re-base it off his repo. Until then, I thought only my dog could fetch for days.
-
Merging two months of work from one SVN branch to another without touching the trunk. I now know what the 16th level of hell is.1
-
Thanks monkey patching, now I remember why I hate Ruby so much.
Compare https://github.com/ruby/ruby/... with https://github.com/rightscale/...
I wonder how the fuck it even works. Also I'm amazed by countless hours of labour wasted digging through this pile of shit. (BTW thanks JetBrains for making it a bit less miserable)
Oh, and someone did monkeypatch Object#try! (which is also a monkeypatch by active_support) and then replaced all `#try` calls to `#try!`. WHY.JPG. Also how the fuck did it pass code review?!