Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I am positive that not 'everyone' is using Jira in the wrong way, just that many-many companies use it and many companies have broken culture or processes (or they have the right processes for the company, but that's not enjoyable for the employeees, that can also be the case). Again, Java or Javascript are also a good example: I am relatively sure that crappy Java code is much more common than crappy Clojure or Haskell code. Does it mean Haskell is 'better' than Java

> It's a micromanagement-first system: everything you want to do has to be explicitly enabled by a manager, and if you want to do something a manager didn't think of, too bad.

We don't have anything even resembling to this in our company, and we use Jira. Again: Jira is a relatively good tool for storing information that's related to a certain piece of work. If you don't think that the context for any work should be documented, then don't do it, but we have learned it the hard way that code changes without business and technical context are not great, because in 5 years you might have a completely different set of people working on the codebase and they sometimes need to ask why this code was ever created. This is the context we store in Jira, and we could store it on a wiki, in Asana, etc. but Jira works just as well and again: it has brilliant integrations to everything.

Yeah, performance is not great but it's getting better nowadays. There are faster tools out there, but we considered integrations to be more important (YMMV ofc.).



> I am positive that not 'everyone' is using Jira in the wrong way, just that many-many companies use it and many companies have broken culture or processes (or they have the right processes for the company, but that's not enjoyable for the employeees, that can also be the case).

I've worked in 6 or 7 companies that used Jira across a variety of different industries, and Jira was terrible in all of them; one of them was a previously excellent company that made a switch to using Jira, and that distinctly coincided with the company becoming worse to work with in many ways.

> Again, Java or Javascript are also a good example: I am relatively sure that crappy Java code is much more common than crappy Clojure or Haskell code. Does it mean Haskell is 'better' than Java

All else being equal, yes. You can make an argument that Haskell etc. attract better programmers because they're hard to learn, but it's hard to make a corresponding argument about Jira; how much time and effort does it take to not use something?

> We don't have anything even resembling to this in our company, and we use Jira. Again: Jira is a relatively good tool for storing information that's related to a certain piece of work.

Well, a) I'm pretty sure that's not how most companies use it, and b) I don't think it's very well suited to that either. Its IDs are the worst of both worlds (not a simple number but not actually informative either) and its search function is awful, so it's vastly inferior to using a wiki (a real one, not Confluence).

> Yeah, performance is not great but it's getting better nowadays. There are faster tools out there, but we considered integrations to be more important (YMMV ofc.).

Most places I've worked disabled most integrations due to performance problems, so I may be missing some of your experiences, but I don't understand what and how you're integrating if you're only using it as a store of information.


And if you ask me it's not Jira. It's the companies. I've been in many large companies and have seen other tools used. Jira is a huge improvement especially with its workflow. Have you have had the sort of reporting requirements and workflows implemented in a tool where what's a simple workflow action in Jira with a transition screen that asks you to fill all the required fields implemented as just a screen full of fields that you are supposed to individually update correctly? And they're all over the screen seemingly unrelated?

Now the good part is that you don't actually have to use all those customizations if your company doesn't 'need' that much process. Whether you have a Todo-In progress-Done workflow or Backlog-Ready for Dev-In Progress-Code review-Ready for QA-In QA-In Regression-Ready to merge-Merged to integration branch-In Integration Testing-Ready for master-Merged to master-Released to Prod workflow is up to you!


> Have you have had the sort of reporting requirements and workflows implemented in a tool where what's a simple workflow action in Jira with a transition screen that asks you to fill all the required fields implemented as just a screen full of fields that you are supposed to individually update correctly? And they're all over the screen seemingly unrelated?

Yes, the tool was called "Jira".

That's actually better than my experience of the "simple workflow action" approach, where the fields you need to change aren't available, because you clicked the wrong action at the wrong time or did the wrong thing three actions back. And since there's no way to undo an action or return to the previous screen, you're stuffed. If you're lucky you might be able to find a manager who's able to do some other transition or define a new transition to fix your problem. More likely you have to throw that task away and recreate it from scratch. Oh, and there's no way to close the copy that's in the wrong state, so it's in your to-do list forever now.

> Now the good part is that you don't actually have to use all those customizations if your company doesn't 'need' that much process. Whether you have a Todo-In progress-Done workflow or Backlog-Ready for Dev-In Progress-Code review-Ready for QA-In QA-In Regression-Ready to merge-Merged to integration branch-In Integration Testing-Ready for master-Merged to master-Released to Prod workflow is up to you!

You need customization to have any workflow available at all - that was what I said about hoping a manager thought of what you were trying to do first. You want to put your In progress thing back to Todo? To bad, you can't. Accidentally marked something as Ready for QA when it isn't? Tough, no undo. Etc.


That is entirely what your company has used Jira to design. Yes it is possible because Jira is that flexible.

Jiras standard workflow is literraly Todo-In progress-Done and you can transition from any state to any state and edit any fields you want at any time.

Don't blame the tool. You said you needed an axe to chop wood to stay warm. Is it the axe's fault if you go kill your neighbor with it?

We use Jira and we have none of the problems you describe. We also have it integrated with a bunch of other tools we use and it gives us a really good overview of where we are at with things, looking up the Why behind a code change etc.

FWIW we do use a more elaborate workflow but it works well and parts of it are so that you can see if something it out with customers or not and those transitions are automated and done by our deployment scripts.


> Jiras standard workflow is literraly Todo-In progress-Done and you can transition from any state to any state

There may be predefined transitions between all the predefined states. But as soon as you add a new state you do not get any transitions to/from it except those you explicitly define. Any custom step that you define will not be undoable unless you explicitly define a way to undo it, and Jira will give you no help at all in ensuring that your undo transition actually undoes.

> Don't blame the tool. You said you needed an axe to chop wood to stay warm. Is it the axe's fault if you go kill your neighbor with it?

If the axe keeps slipping in people's hands and they keep chopping off their fingers, that's a problem with the axe. Even if there's one guy who doesn't have that problem and thinks everyone else must've been holding it wrong, it's still a badly designed axe.

> We use Jira and we have none of the problems you describe. We also have it integrated with a bunch of other tools we use and it gives us a really good overview of where we are at with things, looking up the Why behind a code change etc.

Who maintains your Jira workflows, and what's the process for making changes to them? I guarantee you're doing something unusual, because like I said, I've seen Jira in five or six companies and it was bad in all of them. (Blind guess: at your company the people who are actually using it are empowered to make changes to the workflows, which is very much not the default and not what Jira's permissioning system guides you towards).


This again depends entirely on your company. Way back Jira did not have a "allow any state to transition here", but now it does. Now whether that is something that is useful to you depends on how your company uses Jira and its workflow. If you have a huge, overbearing and stringent workflow, then with each combination of workflow steps and required fields and such, everything becomes more and more complex and you easily get into the sort of situation that you describe for various reasons. I wonder how you would have Jira 'help'. If you define a workflow step and set a certain field to a specific value based on post-function from some plugin that actually makes a REST call to some external system. How would Jira help you in determining that if you transition from that step back to one 3 levels before in your (also non-linear) workflow should unset that specific field?

I don't envy you and I feel for you. It does not have to be that way but you also can't blame Atlassian for letting those sorts of companies, which let's face it are larger companies with more licenses bought, buy Jira and catering to them. However, Atlassian has kept things very very simple and open enough that you don't have to be a victim of that.

> Who maintains your Jira workflows, and what's the process for making changes to them? I guarantee you're doing something unusual, because like I said, I've seen Jira in five or six companies and it was bad in all of them. (Blind guess: at your company the people who are actually using it are empowered to make changes to the workflows, which is very much not the default and not what Jira's permissioning system guides you towards).

I do have to give you this, Jira is not great for empowering people to make their own changes to workflows and such, so you _are_ entirely at the mercy of your company. They are sort of changing some of this with at least Jira Cloud and the new issue view (which I hate with a vengeance for the most part) in that you can both "pin" fields yourself on a per project basis (which is bad, because in our case I want the same ones pinned in all projects, as they all share the same issue types and workflows but there's a project per product we have) and you can move fields between the left and right context (or removed from screen) without having to be a Jira admin. It's still lacking in many ways though. Just so you know, I'm not saying Jira is the best tool ever out there and everything is perfect about it. I'm just saying that your company misusing it doesn't mean that the tool isn't valuable and doesn't have some great features. Did you know that Jira since not too long ago allows story points to have floating point values now, because so many people requested it? That is absolute utter BS and not in line with any agile methodology I've ever come across. But I guess this is where I have to refer back to Money, Money, Money ... :)

FWIW I've been both at companies where other people were Jira admins and to get something changed you had to go through someone else and where I was the admin. Sometimes the changes requested were denied. In other cases, even within a large (10k+ employees) companies, we just had our own Jira for the project and I was actually (one of the few) Jira admin(s). At my current company I am not but most things are actually configured just as they should be. If you want something changed, you ask for it and it's usually not a problem and the stuff they're putting in is not crazy.

Would you rather have a centrally managed IBM Remedy? :)

P.S.: And just on the axe, I think it depends. Is it a standard axe with a hickory handle? By default that definitely doesn't slip. Oh you say you oiled it so much that it slips all the time now? Not the axe's fault!


> I wonder how you would have Jira 'help'. If you define a workflow step and set a certain field to a specific value based on post-function from some plugin that actually makes a REST call to some external system. How would Jira help you in determining that if you transition from that step back to one 3 levels before in your (also non-linear) workflow should unset that specific field?

Ideally I'd like to be able to revert to the state as of a specific point in history - JIRA has an "activity log" that shows that it keeps all the history of transitions, but unlike say a wiki I can't just click on one of them and say "reset it to this version". Obviously that doesn't solve everything if your transitions have done something non-idempotent in external systems, but it would cover a lot of cases.

TBH all I really need is a way to undo the last action, for the case of "oh shit I didn't mean to click that" or "oh shit my mouse slipped and I dragged it to the wrong column" - or worse still, because the column I was dragging it to changed midflight because of JIRA's ridiculous performance issues. Again obviously that could go wrong if there's an external integration involved, but I'm ok with enabling confirmation for transitions that are going to make a change to an external system (I might even be ok with enabling it for every transition if I didn't have to drag a card through five different states one by one and wait 30s for the UI to unfreeze each time). But being able to irreversibly screw an issue up just by dropping it in the wrong place is not cool. (My current company has one of the less bad Jira setups I've used, but I still have a task that I can't see on my open issues view because I accidentally dragged it into some kind of fixed/resolved/closed state, and even though it's now back in the right state, its Resolution isn't Unresolved and there's no way to put it back to that).

> Would you rather have a centrally managed IBM Remedy? :)

I've not used that. I've had a much better time using Trello, Trac, or even (going back a few years now) Bugzilla to fill the same role. Yes, they don't do as much as JIRA, but I really think that's actually a downside. More concretely I think capturing requirements/planning/roadmaps and tracking the status of work in progress are actually separate things that should be done separately, and the fact that JIRA tries to do both is part of what makes it so complex and slow.


> I am relatively sure that crappy Java code is much more common than crappy Clojure or Haskell code.

I am not sure about it at all.

> attract better programmers because they're hard to learn

This also biases demographic toward people who care more about proving they can do hard code then those who want to produce maintainable software. That does not lead to better code.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: