« BackEvolving GitHub Issuesgithub.blogSubmitted by joeig 4 hours ago
  • mjw1007 2 hours ago

    I think the biggest weakness of github issues is that the main content it shows when you visit an issue page is the original report.

    That's very often unhelpful because:

    - it's likely that the actual problem wasn't understood at that point (it's likely to be describing a symptom, rather than a bug)

    - it's quite possible the original reporter wasn't very good at writing bug reports

    - issues often remain open after the main underlying problem is fixed, because there's some small remaining part that's unsettled.

    I'd much prefer it if the topmost part of the page was reserved for a space, maintained by whoever's responsible for dealing with the issue, describing the current understanding of the problem and the current status.

    Then the orignal report and further discussion could be laid out under that as at present.

    It's possible to get roughly this now, by repeatedly editing the initial message. But the UX isn't ideal, and more importantly it isn't culturally expected.

    (Of course this isn't a github-specific problem. But github are in a better position than most to offer a fix.)

    • smileybarry 2 hours ago

      GitHub issues have edit history now IIRC, so the maintainer can just edit the ticket in these cases, and still have the original text available under the "edited" submenu.

      • ogoffart 2 hours ago

        I often edit the title and description of issues.

        I usually let the original content after a

        ### Original message

        ...

      • holman 26 minutes ago

        I built the last major update to GitHub Issues over a decade ago now, and I was... kind of hoping for more. Feels more like it's checkbox-driven development instead of sitting down and really planning long-term about what improvements could be made. Also it has React.

        • vundercind 3 hours ago

          Noooooo! I’ve been hoping for years and years to eventually land on a team that uses GH issues so I can not hate our ticket tracker for once, but they’re gonna shit it up like ADO and Jira and Asana before that can happen. They’d already made it borderline too complicated, this will complete the transition from productivity to “legibility”.

          • bluGill 19 minutes ago

            This is the constant problem with issue trackers. You start simple and over a few years various people have legitimate needs that the system isn't solving so they make some small changes to work better. Then one day you look and realize the system is far too complex so you start over with a simple system - which of course doesn't meet the needs of the people above and so they slowly get that complexity added back. I've seen it over an over again, and I expect to see it again because what I need is a simple system, but there are other parties who need various complex things that I can't keep track of.

            The simplification above isn't all bad - you often discover that 25% of the complexity in the system isn't needed anymore and so that doesn't come back. However there is always new/different complexity needed.

            • lars_francke 2 hours ago

              Just to add a different opinion: I have been using Jira my whole life and I am now using GitHub issues full-time and I like it a lot, I also like these new changes and I'm looking forward to even more to dependencies between issues.

              https://github.com/github/roadmap/issues/956

              I understand that this is your opinion but there are others out there with differing ones :)

              • zamalek 2 hours ago

                Couldn't agree more. Creating taxonomies has to be a dopamine hack or something, because humans will spend hours and hours on them. They will be left feeling rewarded and accomplished, despite accomplishing very little. It's playing Solitaire in a way that keeps your boss happy.

                • tuespetre 3 hours ago

                  i have always admired GitHub's issues system for its simplicity.

                  s/have/had/

                  • medstrom 2 hours ago

                    If it turns out to be too complex, Codeberg and SourceHut are some actually nice alternatives that exist now. Not like GitLab which brought its own complexity.

                  • voidfunc 2 hours ago

                    This was inevitable. Microsoft probably doesn't want to support both Azure DevOps and GitHub long term. GitHub needs to gain the most important features of ADO that ADO customers care about.

                    • xnorswap an hour ago

                      ADO has felt borderline abandoned since MS bought GitHub, and honestly good riddance, it feels terrible to use.

                      For example having more than 1 user edit anything is almost unsupported, and pages will regularly do things such as telling you that you ought to refresh to see changes, rather than just showing you the changes.

                      Or on other pages, anyone elsewhere changing anything at all will just trigger your page to refresh so you lose your place. This is particularly noticable on the sprint board, where if you view "all expanded" or "all collapsed", the refresh will often also reset that and throw you to a completely different part of the board.

                      The code review is even worse, despite some modest attempts at improvements, because you can't stage a batch of comments. Each and every comment is hand-delivered with a notification email to the recipient, so writing out a bunch of comments feels like a disruptive activity.

                      Overall the experience of ADO is horrible.

                    • smileybarry 2 hours ago

                      As long as they don't add workflows, we're safe.

                      • Hamuko 18 minutes ago

                        Love to drag my Jira ticket through like three different approval stages, none of which are relevant to my team.

                    • ProxCoques 3 hours ago

                      If Issues could be restricted to repo maintainers (with everyone else using Discussions), it would make contributing to F/LOSS projects far easier because you could easily see what the team was "thinking" (PR lists aren't like that).

                      As it is, most Issues are polluted by random support requests, suggestions and open-ended chat which obscures the focus so much that sometimes I just can't tell what they need help with, so I don't bother offering.

                      I have no interest in the Jirafication of Issue though. None at all.

                      • digging an hour ago

                        I feel this new version could help with that if unapproved users are restricted in the types of issues they're allowed to create. Something like "external". Or vice versa, they can't create "Internal" issues. But I immediately see a problem which is that types are not tags so the dichotomy of internal/external means that types now can't be used for type-of-work, only channel-of-input. So you'd be back to using tags for the former...

                        • jeremy_k 3 hours ago

                          I agree. The issue with Issues and Discussions is no one knows where to put content. Most falls into Issues because Discussions aren't always enabled and Issues were the original dumping ground.

                          It would be nice to know that if you want to ask random questions or get guidance on how to use the project, go to Discussions. If you're looking for real bug reports, go to Issues. I'm not sure how to enforce Issues being only bug reports though. The first thing that comes to mind is having a triaging mechanism, but that puts more onus on maintainers to actually look through everything submitted and make a decision on it.

                        • ogoffart 2 hours ago

                          I've observed it has become much better on my repository over the past few years. Discussions took a while to be adopted and I have to guide users to discussions through the CONTRIBUTING.md and issue template. For the few questions that still comes in the issues, i'm immediately converting them into discussions.

                          • okl 2 hours ago

                            > As it is, most Issues are polluted by random support requests, suggestions and open-ended chat which obscures the focus so much that sometimes I just can't tell what they need help with, so I don't bother offering.

                            Totally agree. They should have some AI solution categorize the issues and separate actual issues/tickets from support requests and other noise.

                          • mikeocool 2 hours ago

                            Please god add a “closed - duplicate,” “closed - won’t fix,”and maybe “our bot closed this because no one commented on it for 6 weeks” status.

                            Nothing is more frustrating than finding an issue that exactly describes what your are experiencing marked “closed,” scrolling through months of comments only to find that the issue still exists and it’s been closed for one of these reasons.

                            • JamesSwift 5 minutes ago

                              Stalebot is a scourge on society. Half joking. Mostly not though.

                              • mckn1ght 2 hours ago

                                Labels have been able to do this for years, why are they not a sufficient solution?

                                And even if they elevated these to first class items, nothing is stopping maintainers from still closing them or letting them be closed without the issue having been actually fixed.

                                • nikeee an hour ago

                                  Because a label does not contain a reference to the issue that was duplicated. You still have to scroll through the issue's timeline to find it.

                                  • mynameisvlad an hour ago

                                    Neither do the statuses as suggested.

                                    Your suggestion is to add a field that will only be used in a single status, which goes against the simplicity of GH Issues (which this update already makes contentious enough, looking at the comments here).

                                    Also, realistically, there will be a mention of the issue in the final ticket, so is scrolling down to the bottom of the issue that hard? You're making it seem like it'd be buried in the middle of the timeline and while that can happen, I don't see that being anything but an edge case. Most tickets won't be referenced after they're closed as dupes.

                                    • bluGill 16 minutes ago

                                      This tension is why issue systems become too complex. The ask is reasonable, but implementing it makes the issue system more complex until all the simple asks make the system collapse under the weight of it...

                                      • mckn1ght 2 minutes ago

                                        Absolutely. The sum total of reasonable requests can be an unreasonable system. It’s a paradox just like Gabriel’s horn: finite volume, infinite surface area.

                                        Reading through this comment section makes me see exactly how something simple like a GitHub issue becomes a JIRA issue.

                                        This is why I like simple, opinionated solutions. This kind of discussion becomes superfluous.

                              • sluongng 3 hours ago

                                I don't get the negativity. This is a great upgrade for enterprise user persona and is a catch up comparing to Gitlab Issue or Linear. I hope they put more effort into this.

                                • vundercind an hour ago

                                  Serving the “enterprise user” (the enterprise project manager and product owner, specifically) personas is why most other solutions are already so unproductive and unhelpful for the people doing the actual work. That’s where the negativity comes from. It’s like a mechanic’s ratchet having all kinds of bullshit attached to it to measure how many turns it makes and which socket’s getting used the most: that’s probably useful info for someone, but now the tool is terrible for the mechanic.

                                  • sluongng an hour ago

                                    I think that's one way to look at productivity. I used to think like that when I was in a dysfunctional team as well. However, I do see value in issue tracking as I have seen how it helped drive top-down decisions on a large scale with high impact. An effective issue tracker can improve how resources are allocated, and create incentives, and promotions in smaller teams. The bigger the org, the harder it is to make this kind of decision correctly so there is value to be made here.

                                    • vundercind an hour ago

                                      Tracking’s important. I think most of what matters could easily be achieved with simpler tools and less-intrusive processes, though, and in practice most of these attempts at hyper-legibility are misguided, largely because nobody’s even measuring the full cost of them.

                                • seanwilson 2 hours ago

                                  A recurring pattern I see is someone will add an issue comment like "This is great but we need to fix 1. this, and 2. that", and it's just a mess keeping track of discussion threads related to 1 and 2, who is assigned to fix them, and if they're done.

                                  A hack is to add a [ ] checkbox in front of each task (by editing the comment yourself if needed), but then it's not clear if the person that thinks they've completed the task ticks it, or if the original commenter ticks it after they've reviewed the work, and the comment will eventually get folded/hidden.

                                  Another hack is to add a review comment to a pull request anywhere in the code, which at least gives you threaded conversions and a resolved status, but you can't mark who it's assigned to.

                                  Any more hacks here?

                                  Maybe sub-issues will solve this, but if it's similar to creating new issues, that's quite heavy for small items.

                                  • kayson 2 hours ago

                                    Whats the point of issue types when we already had labels?

                                    • kibwen 2 hours ago

                                      I'm unclear myself. For a start, unlike labels, an issue can only have exclusively one type.

                                      From the docs this appears to be how they envision people using this:

                                      Default issue types are included in every organization, but these can edited, disabled, or deleted. The default types are task, bug, and feature.

                                      On the one hand there's already precedence for this, since PRs are sorta just issues that live in a different tab. If issue types actually let people create new top-level tabs in the UI, that might be interesting. Also it looks like there's a maximum of 10 user-defined types per repo, so it wouldn't even threaten to mess up the UI that much if they did so.

                                      • smileybarry 2 hours ago

                                        We use labels as module tags; e.g. this PR/issue applies to the "filter" module. Having types be its own thing helps separate the two logical categories and enforce "one type per ticket" at the same time.

                                      • madeofpalk an hour ago

                                        Our org/team was very heavy users of the never-broadly-released tasklists revamp from a while back, and I was a huge fan of them.

                                        I really liked the organic approach to project management - soft-epics and soft-subtasks, without Github Issues just turning into Jira. It felt like really neat product design (even though it often did have a bunch of sync bugs them them trying to do too much in markdown)

                                        So I was disapointed to see they weren't happy with that and rolled it into an explicit subtasks instead. I haven't used it seriously yet for a project yet though. We'll see how it goes.

                                        • 6LLvveMx2koXfwn 3 hours ago

                                          Was expecting a link to an outage report . . . pleasantly surprised as I'm currently on-boarding my team to Jira and it's important that every innovation in this space is over-engineered :)

                                          • vaylian 2 hours ago

                                            sub-issues sound nice for grouping issues. But I think there could be an even better solution: Make it possible to declare issues to depend on other issues and milestones. That way you can filter issues out that can not be worked on because some more fundamental infrastructure has to be put in place first.

                                            A PR can be linked to an issue. It should be possible to link issues to other issues and milestones.

                                            • smileybarry 2 hours ago

                                              > Make it possible to declare issues to depend on other issues and milestones.

                                              But this is where the JIRA-fication happens, with the many issue link types coexisting alongside no one knowing which is the right one.

                                              > It should be possible to link issues to other issues and milestones.

                                              We already do this by mentioning the #, actually. Well, more to do with PRs mentioned by their backports, but the idea stands.

                                            • lars_francke 3 hours ago

                                              FYI: Contrary to Tasklists (which were in beta but will be phased out) this does not support adding Pull Requests as sub-"issues".

                                              • poorman 3 hours ago

                                                > Earlier this year, we introduced the private beta of increased project item limits, expanding the capacity from 1,200 to 50,000 items in a project.

                                                This reminds me why smaller companies can steal market share from larger companies. I can understand that at GitHub scale, it's probably difficult to support more that 1,200 items per project. The result? The entire ecosystem has these limits imposed on them. A smaller company could easily support 50,000 issues for a repository since they are hosting fewer repositories.

                                                • slightwinder 2 hours ago

                                                  Those smaller companies are usually just burning money in an attempt to gain traction. Free services usually have all harsh limitations when the company has to earn their own food. The main reason for this is usually the abuse of those services, not so much that they can't afford it.

                                                  • schmichael 3 hours ago

                                                    You misunderstand: the keyword in that quote is “project.”

                                                    GitHub projects are boards, not repositories. I don’t know if there’s a limit on the number of issues repositories can have (nomad is over 5k).

                                                    I’m not actually sure how valuable a board with over 1k items on it is in practice.

                                                    • mckn1ght 2 hours ago

                                                      I thought this was where OP was going with this comment. My inner LLM predicted the next sentence after “This reminds me why smaller companies can steal market share from larger companies.” to be: Larger companies get bogged down with heavy backlogs where it’s hard to tell what’s actually important to work on anymore. Small companies can stay nimble and focused more easily.

                                                      50K tasks in a single project is a joke. People should be forced to konmari it. Put a capacity diagram in their face so they have to constantly confront the reality of their lack of organization.

                                                  • jerrygoyal an hour ago

                                                    Any progress on improving slow performance?

                                                    • ko_pivot 30 minutes ago

                                                      Yeah that’s the key question. To actually be competitive with Linear, etc. we need client side rendering and local caching. A basic create-react-app + React Query stack feels much better than GitHub due to the constant SSR for all routing.

                                                    • 38 3 hours ago

                                                      if GitHub really wants to fix issues, fix the god damn pagination. the current system is basically:

                                                          comment
                                                          comment
                                                          [bunch of hidden comments]
                                                          comment
                                                          comment
                                                      
                                                      this is not better, at all. to get all comments, you have to constantly click "more" until all are loaded, IN A SINGLE page. then if you accidentally refresh or navigate away from the page, boom you have to redo the entire process.
                                                      • hkdobrev 2 hours ago

                                                        they have at least extended the number of items being loaded when you click more from 50 to 150 in the preview

                                                      • cynicalpeace 3 hours ago

                                                        These are some nice updates.

                                                        However, it made me think of how much time and money is spent just on organizing things, even when organizing something doesn’t make things go better.

                                                        In fact, the best teams I’ve worked on have a bias against organizing and a “just do it now” mentality. It depends on the specific case of course. But as a culture, software engineers have a bias towards organizing too much as opposed to not enough.

                                                        • throwaway918299 2 hours ago

                                                          This is why a board with sticky notes "TODO - In Progress - Done", is still the way to go for most projects. Easy to manage and you don't need to "groom the backlog" or any of that nonsense. If it's important, it goes on the board. When a bunch of things get done, the notes just go in the trash and you move on to the next thing. If there's too many notes, toss some in the trash and forget about it (if it ends up being important, it's really easy to just write a new note).

                                                          • bluGill 12 minutes ago

                                                            The only downside to that is if you have remote team members they can't do anything to the board.

                                                            • cynicalpeace 2 hours ago

                                                              Yup, or even simpler- just a checklist in a file.

                                                            • atomicnature 2 hours ago

                                                              Amen to that. Over-organization is often a sign of high turnover in teams.

                                                              If you can retain engineers long-term, then the amount of repetitive paperwork/reports/status updates, etc reduce significantly.

                                                              You can have low frequency, low effort yet high bandwidth communications along with rapid execution.

                                                              • vundercind an hour ago

                                                                The amount of productivity lost to make it quicker for some PM to add a bar graph to a PowerPoint emailed to an exec, that the exec will look at for five seconds and move on if they even bother to open the email, is astounding.

                                                              • RicoElectrico 3 hours ago

                                                                What about merging duplicates?

                                                                • mdaniel an hour ago

                                                                  Out of curiosity, what would you expect any such UI to look like in that case? Merging the comments? Even right now one can comment "closing as it is a dupe of #666" and GH will cheerfully create bidirectional links, the link in the comment and the other issue will get a "mention" comment

                                                                • agos 2 hours ago

                                                                  hoping to one day read "Evolving GitHub Projects". Issues are good, but it's really hard to work on them while projects are half baked

                                                                  • yu3zhou4 3 hours ago

                                                                    I wish I could turn off Issues without archiving a repo

                                                                    • vinnymac 3 hours ago

                                                                      Maybe I am misunderstanding you somehow, but you can turn off Issues without archiving a repository, I have several like that. If I attempt to navigate to `/issues`, it redirects me to `/pulls`. And the Issues tab is not visible whatsoever.

                                                                      Have you tried `/settings` -> Features -> [ ] Issues ?

                                                                      • yu3zhou4 a minute ago

                                                                        [delayed]

                                                                      • tom1337 3 hours ago

                                                                        You can?! Just head to https://github.com/:org/:repo/settings and scroll down to the "Features" part. You should be able to uncheck it there.

                                                                        • yu3zhou4 a minute ago

                                                                          [delayed]

                                                                          • patcon 2 hours ago

                                                                            History disappears, which is a bit annoying if ppl have invested energies there. I'd personally prefer it possible to lock them without archiving nor making them disappear from the internet :)

                                                                        • mahkoh 3 hours ago

                                                                          C-f thread

                                                                          0/0

                                                                          We shouldn't hope for the impossible.