Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Programming

'GitHub Is Starting To Feel Like Legacy Software' (www.mistys-internet.website) 82

Developer and librarian Misty De Meo, writing about her frustrating experience using GitHub: To me, one of GitHub's killer power user features is its blame view. git blame on the commandline is useful but hard to read; it's not the interface I reach for every day. GitHub's web UI is not only convenient, but the ease by which I can click through to older versions of the blame view on a line by line basis is uniquely powerful. It's one of those features that anchors me to a product: I stopped using offline graphical git clients because it was just that much nicer.

The other day though, I tried to use the blame view on a large file and ran into an issue I don't remember seeing before: I just couldn't find the line of code I was searching for. I threw various keywords from that line into the browser's command+F search box, and nothing came up. I was stumped until a moment later, while I was idly scrolling the page while doing the search again, and it finally found the line I was looking for. I realized what must have happened. I'd heard rumblings that GitHub's in the middle of shipping a frontend rewrite in React, and I realized this must be it. The problem wasn't that the line I wanted wasn't on the page -- it's that the whole document wasn't being rendered at once, so my browser's builtin search bar just couldn't find it. On a hunch, I tried disabling JavaScript entirely in the browser, and suddenly it started working again. GitHub is able to send a fully server-side rendered version of the page, which actually works like it should, but doesn't do so unless JavaScript is completely unavailable.

[...] The corporate branding, the new "AI-powered developer platform" slogan, makes it clear that what I think of as "GitHub" -- the traditional website, what are to me the core features -- simply isn't Microsoft's priority at this point in time. I know many talented people at GitHub who care, but the company's priorities just don't seem to value what I value about the service. This isn't an anti-AI statement so much as a recognition that the tool I still need to use every day is past its prime. Copilot isn't navigating the website for me, replacing my need to the website as it exists today. I've had tools hit this phase of decline and turn it around, but I'm not optimistic. It's still plenty usable now, and probably will be for some years to come, but I'll want to know what other options I have now rather than when things get worse than this.

This discussion has been archived. No new comments can be posted.

'GitHub Is Starting To Feel Like Legacy Software'

Comments Filter:
  • some git front ends like bitbucket will intercept the Ctrl-F keystroke to bring up their own search box
    • by robi5 ( 1261542 ) on Tuesday July 23, 2024 @07:07PM (#64650462)

      Which is also a shitty thing to do, tbh.
      Don't rob the web users from common, fairly standard affordances.
      Your half-assed design for a specific web page will probably be either inferior to standard browser based text search, or maybe it's half decent but the user just wants that simple, familiar interaction.

      • by dgatwood ( 11270 ) on Tuesday July 23, 2024 @07:19PM (#64650484) Homepage Journal

        This. A thousand times this. The web as a whole is starting to feel like legacy software because of massive overuse of React and other asynchronous loading schemes. There's a time and a place for stuff like that, e.g. when large image loading needs to be deferred, but rendering text content that people are likely to want to search through is not the time and the place.

        • React has a very strong benefit, in that it largely allows you to use encapsulation of components when building a web page. That is theain reason people use it. React also has a serious performance penalty, and it seems there is almost certainly a better way. But Angular isn't the better way.
        • You can disable this and I do. Bitbucket and Github are not the only offenders. Even the Gentoo Wiki suffers this fate. And it's infruriating. Luckily if you open the webpage settings (yea that old school panel) in Firefox or Chromium based browsers you can disable hot key overrides.

          • Regular users issues (Score:4, Interesting)

            by will4 ( 7250692 ) on Wednesday July 24, 2024 @12:08AM (#64650890)

            It's a tool to get work done and not a religion is a common point in our dev meetings.

            It works well enough, yet not that much better than older source code control tools.

            The larger drawback, along with many other software products, is the hamster wheel increase of releasing new versions faster - not because there is any real reason to use the new version or any compelling new feature; but because the vendor wants to quit supporting older versions faster than its serious defects cause loss of sales.

            It's now common that vendors only support versions for 3 years or less. There's exceptions, but the forced upgrades for 'enough products and enough open source packages' is enough to consume an increasing part of development budget and time.

            Net it is a slow rising price operation with shrinkflation of time and features which will make it easier for CIO's to dump anti-customer vendor products.

    • The worst offender of this is forum software (whatever powers Amazon Seller community) that requires a minimum number of characters to search. Meanwhile, the browser search that they intercepted has no such limitation.

      I noticed this when I was looking for a 2-character code in a thread on state tax. Couldn't search for a state because 2 characters weren't enough.


      I wish I got paid to be as stupid as most people.
      • by Briareos ( 21163 )

        I'd like to see how they intercept "Burger Menu > Find in page..." in Firefox...

        Ctrl+F, on the other hand, is very much something the page can and should be able to intercept.

  • by Anonymous Coward on Tuesday July 23, 2024 @04:17PM (#64650124)
    I hate the "load as you scroll" as it is with Youtube - when I am trying to search for specific comments -- but I understand that Youtube comments are a very low priority for Youtube. But viewing source code is literally Github's core mission. This is what happens when the Microsoft morons metastasize into an acquired company. Bet some idiot project manager got a bonus this year for saving cloud resources for that change.
    • by Anonymous Coward on Tuesday July 23, 2024 @04:27PM (#64650156)

      The problem wasn't that the line I wanted wasn't on the page -- it's that the whole document wasn't being rendered at once, so my browser's builtin search bar just couldn't find it. On a hunch, I tried disabling JavaScript entirely in the browser, and suddenly it started working again.

      It's not just GitHub. A lot of websites are doing this sort of retarded fuckery. Once again, Javascript in the hands of idiots, is a cancer that ruins everything.

    • by ArchieBunker ( 132337 ) on Tuesday July 23, 2024 @05:12PM (#64650278)

      That and how everything is nested and you have to click to expand to view the entire thing. Even more frustrating when you click and it's a single fucking line that was hidden.

    • by quonset ( 4839537 ) on Tuesday July 23, 2024 @06:38PM (#64650400)

      I hate the "load as you scroll" as it is with Youtube -

      YT Shorts are even worse. On the one or two occasions I happened to select one of those, if you happen to scroll a fraction down the page whatever it was you wanted to watch is gone and replaced with something else as the page loads. Even worse, scrolling back up doesn't return you to the thing you wanted to watch. YT Shorts are essentially worthless so if I'm searching on YT I avoid all of them. Not that I search that much on YT.

      • by kmoser ( 1469707 )
        Don't get me started on the lack of forward/back controls, or a timeline scrollbar, on these "shorts" style videos, which are also prevalent on Facebook.
      • by arielCo ( 995647 )

        If on a desktop browser, get a redirector extension: https://einaregilsson.com/redi... [einaregilsson.com] and use something like this:

        • Pattern: https?://(?:www\.)?youtube.com/shorts/([^/]*) (regex)
        • Rediirect to: https://youtube.com/watch?v=$1

        The desktop version still uses lazy-loading, but there's more reasons to dislike the Shorts UI.

  • GitLab (Score:5, Informative)

    by echo123 ( 1266692 ) on Tuesday July 23, 2024 @04:24PM (#64650146)

    Feature for feature, GitLab seems to at least match Github, if not surpass Github. I believe that's why the entire Drupal project is hosted on GitLab.

    FWIW Microsoft owns Github and is heavily in bed with OpenAI/ChatGPT. Github, and I assume GitLab are massive repos for LLMs to train with.

    • I run gitlab community in-house. If you can scrap that then I need to be fired. Gitlab works well. I have several users that like to use it with Github Desktop.

  • by ctilsie242 ( 4841247 ) on Tuesday July 23, 2024 @04:28PM (#64650158)

    At a previous job, I wound up encountering a bug with on-prem GHE. By SSH-ing into the appliance and doing some troubleshooting, I was able to find the offending item and reproduce it. I put a bug report in. They got an e-fix out within hours, had the beta with the fix in days, and the fix was part of the release cycle shortly thereafter.

    GitHub Enterprise, the on-prem one that comes as a VMWare, QCOW, Hyper-V, or AMI is a relative pleasure to work with from the sysadmin side. I have a dedicated PC using `ghe-backup` to have consistent backups, as well as backing up the VM on a snapshot base. It works and works well, definitely (IMHO, of course) best of breed.

    The only thing one has to watch out for is updates, and every so often, come a version upgrade, building out a new VM, doing a `ghe-backup` and restoring all the stuff with `ghe-restore` to the new VM, because the new VM will require a lot of expanded requesites. However, the last major release was in 2021. Minor version changes happen every few months, and require an outage. Everything else is a hot patch. However, I like scheduling a weekly outage, just so I can bring the appliance down completely, do a backup of the VM without worrying about it being consistent, snapshot it while it is down as well (saves storing the RAM data), doing the update, even if it is a hotpatch, running my testsuite, then kicking it out of maintenance mode. If something happens, it can be rolled back quickly. If nothing happens, then in a week or two, chuck the old VM snapshots. Every few weeks, have Veeam restore the VM to a testbed and then run some tests there to make sure things work.

    I do think MS went a bit far with Copilot and wish they could have that as an option, but GitHub Enterprise does a lot for companies. It not just does Git queries, but can do the entire CI/CD loop and replace Jira, Artifactory, Jenkins/Bamboo. It even has a Wiki module, although using it for general company documentation can be a stretch, as it is tied to projects... but it can be done. It isn't overpriced either, especially comparing it, apples to apples, with Bitbucket or other enterprise Git servers.

    For MS, GitHub is a true gem of a product. I just hope they don't ruin it because it is so essential in companies, and because it can easily be run on-prem (and run on-prem in a high availability manner), where physical security of data can be assured.

    Generally, I make rude cracks about Microsoft and their lack of support... but GitHub Enterprise is one of the few products they have which works and works well, with excellent support... and I hope MS keeps it that way, because you really can't run a large enterprise without GitHub Enterprise, just like you can't run a large company without AD.

  • Using the command line for Git Blame can be annoying / hard to read, but Git has always been, and probably will always be, a powerful command line tool. I have yet to see a GUI for Git or WUI that improves the experience enough to convert me. Another issue, in 9X% of complaints people make about Git is about the tools they're using, never the core functionality. In almost ever case, using the command line resolves the issue.

    Is GitHub a good tool? Sure, it's fine, but is it good enough to replace the CLI, no, not even close.
    • by m00sh ( 2538182 )

      Let's see you do a meaningful diff in the command line or resolve conflicts. Not toy ones but actual diffs and merge conflicts.

      • sure. meld
      • by Murdoch5 ( 1563847 ) on Tuesday July 23, 2024 @04:55PM (#64650240) Homepage
        .... I do those frequently, pretty simple when you know how to use Git. That point doesn't remove my original statement that the CLI is the best tool, and I've seen PLENTY of times the GUI's and WUI's fail outright to merge code or diff it correctly. In fact, the number of times I've seen those tools resolve the problem, or show the relevant information, are rare as hens teeth.

        A few years ago I went on vacation, well on the way to the airport a JR dev called me, freaking out the merge was failing, it was the tool failing. I got back ~10 days later, resolved the problem in literally under 1 minute using the CLI. When the GUI's and WUI's work, great, but that's not common. They might work for simple things where you need no knowledge of Git, but in that case git pull, fetch, merge or push, also does the job on the CLI.

        I can name literally zero times, where a GUI or WUI made the job easier, simpler or provided more information to me.
        • by m00sh ( 2538182 )

          How can merge fail? You mean automatic merge asking you to resolve conflicts?

          It takes a lot of effort to be good at diff in the command line and you have that come up once a month. Easier to do in the GUI for once in a while task. Underneath GUI and command line tool use the same basic tools anyways.

          • Merge conflicts, which some tools when they hit bail so hard it's like Biden during the debate. Frankly, I can't think of any tools which can neatly resolve them from a WUI.

            It's true a lot of GUI's use the CLI underneath, in which case why not just use the CLI? Source Tree for instance is so bad, if you don't open the CLI you can't get anything done.
      • Let's see you do a meaningful diff in the command line or resolve conflicts. Not toy ones but actual diffs and merge conflicts.

        Um, I have been able to do that almost daily for a large part of my career. It was possible before there were GUI tools for it. It's still possible over slow SSH links with no GUI available.

        Any true professional will be able to do it with minimum fuss. It's an annoyance, but how exactly is it difficult?

        It's only the ranks of amateur who seem unable to work a computer without Fisher Price colors and flashy interfaces. They're the same amateurs who whine "legacy" and blame the tools every time they fail becau

      • by sjames ( 1099 )

        I've done that on many occasions. What's your point?

    • by jonadab ( 583620 )
      > Using the command line for Git Blame can be annoying / hard to read

      I'm not sure I understand this criticism. What's hard to read about it? I mean, I'm assuming people know how to set up their terminal to use a decent font that's designed for code (e.g., Bitstream Vera Sans Mono), because this is slashdot and people had *better* know basic stuff like that... and you need a decent pager, but less has been ubiquitous since the late nineties, so THAT surely can't be the problem...

      What's hard to read abo
      • It's usually not hard to read, I've run into some weird cases where the output was bleeped up a bit, but like you said a pager can usually fix that with some light terminal formatting.
  • by gl4ss ( 559668 ) on Tuesday July 23, 2024 @04:38PM (#64650182) Homepage Journal

    Rolling out a new version for "reasons" is way too common nowadays without the new version having feature parity with the old version.

    Often just for a design refresh that could have been done on the old one just as well! And the new versions supposed to then be easier to maintain, but has some architecture that actually makes it hard to do the missing features due to choosing an architecture thats in fashion rather than an architecture for the codebase that suits the application being made, a non-architecture if you will.

    Would you consider that a rendering engine, a git client, a bank app and a drawing app all should have the same structure and philosophy in regards of data and interface code? Probably not but thats the world we're living in. I'm sure they got tests for checking that the network codes middle classes though so it has yk be working correctly (that parse the data into an object that gets converted with a converter class to an object that gets used for the data for the ui).

    So it's not that it feels like legacy software, it feels like new software!

    • by Big Hairy Gorilla ( 9839972 ) on Tuesday July 23, 2024 @05:34PM (#64650318)
      >>Rolling out a new version for "reasons" is way too common nowadays without the new version having feature parity with the old version.

      ^ this

      Rearranging/hiding/removing functionality and changing the UI because of style in the UX world is just make-work for those people, and a way to sneak surveillance in. There's nothing in it for you. During the Pandemic, estimated 350,000 workers were laid off in Silicon Valley.. some people called them "engineers". Did we see any change in the software? Was it worse? Better? Nope. No diff. I often wonder what they were doing.... social media generators, I've read.

      Using the word "legacy" in a perjorative sense, doesn't work for me. Legacy software is better in most cases now.
      I'm not making any pronouncements on how good/bad/useful it is... but in the rest of the world software was "feature-complete" 10-15 years ago. Software has been running on fumes for years now.
  • by jimjoe ( 527975 ) on Tuesday July 23, 2024 @04:40PM (#64650192)

    older versions of the blame view on a line by line basis

    ...simply use 'C-x v g' followed by 'a's.

  • You can still check out the repository, then use tools like TortoiseGit to do what you need to do.

  • by cowwoc2001 ( 976892 ) on Tuesday July 23, 2024 @04:43PM (#64650204)

    If more people were using https://wiki.mercurial-scm.org... [mercurial-scm.org] then you'd never need to run away from git's horrible command-line. Mercurial's command-line is multiple orders of magnitude more intuitive and easier to use.

    • by cen1 ( 2915315 )
      Not sure if trolling or..
      • Mercurial is much easier and saner to use than git, but network effects mean you shouldn't use it, because most people won't know how.
    • Professionally, I used Mercurial before I ever started using git. Going to git (when I changed jobs) felt like being given a bucket full of nuts and bolts that you have to use a lot because the workflow just doesn't work as well as Mercurial. I can see that git probably has some benefits when working on open source projects, but in the normal workplace it's the ecosystem that has sprung up around Git that provides the benefits. Git itself is just plain awkward to work with.
  • Github has been hiding diffs from the DOM for several years now.

    Unlike 14-years ago when I started using Github submitting bug reports is entirely pointless, they don't even look at them. There are massive perf issues on PRs that have gone ignored for over a year.

    I don't find this unique to Github, we're definitely in an era where companies only care about ticking the next box not making sure software actually works.

  • by fabioalcor ( 1663783 ) on Tuesday July 23, 2024 @04:47PM (#64650216)

    I just browsed a little into the blame feature of Github, I'm not impressed, unless I'm missing something.
    Anyway I recommend just using VSCode and Gitlens extension. It gives (along with many other things) a nice line-by-line blame feature, and it's pretty easy to navigate back and forth the commit history of the line or file in question.
    And both are probably much more resistant to enshitification than any online tool around.

    • by cen1 ( 2915315 )
      gitlens blame is decent, a +1 from me. It feels like a full git integration should be vscode native though.
    • Gitless will get you most of the good stuff and it doesn't try to sell you subscriptions.

  • Even though source code is open source, this does not mean that it is public domain. Training AI on copyrighted software and outputting copies of that source code through ChatGPT, CoPilot, or whatever other mechanism such as autocomplete does not in any way remove the rights of the copyright holder. Any developer using these tools are subjecting themselves to numerous future lawsuits should they ever become profitable enough to be worth suing You should not have to "opt out" of AI training, it should defa
  • by nightflameauto ( 6607976 ) on Tuesday July 23, 2024 @05:41PM (#64650334)

    This isn't an anti-AI statement so much as a recognition that the tool I still need to use every day is past its prime.

    Once Microsoft owned github, it was only a matter of time. Microsoft is not in the business of bettering software. They're in the business of making it just a little bit iffy, so that they can offer "improved" versions down the line. For a price.

    Now, if we want to discuss why it's happening with github? I see two very distinct possibilities, with very little overlap, that could give you this result.

    1. Microsoft's main MO from the outside appears to be a lumbering idiot giant that barely manages to keep itself afloat despite being the biggest gorilla in the OS market and a very large player in several others. Their software development cycle results in sub-par product that everybody is forced to use because $everobody_else_does_it, which we were told growing up was no excuse to do anything. "If all your friends ran off a cliff, would you too?" The answer in the business world is, "Yes, but I would do it faster and better than they did!" Microsoft meddling with what github is using their current development cycle would result in systemic decline just because that's what they do. There is no stopping a detrimental overlord from being detrimental. Period.

    2. On-purpose, to push more AI tools toward developers, to better train the AI tools so that eventually they can push the developers themselves out of the way and letting the AI take over. Now, most of us developers know this is bordering on pipe-dream territory today, but long-term? Not with current gen LLM tech, but somewhere down the line? Maybe. But it's entirely possible some nitwitted exec high on their own farts is busy peddling this vision within the company, and if so? You can expect github to get worse, and worse, and worse going forward.

    Or this is just standard Microsoft MO. "WE CAN MAKE THIS GREAT THING MUCH BETTER!" Then they proceed to slowly whittle away the parts people like, while tacking on marketing shithead wet dreams that nobody in userland wants. Most likely, at some point, with lots of data collection added.

  • If you press period (.) on the GitHub repository it'll open it in a web based VS Code and you can search from within that IDE.

  • The author doesn't like the change of the UI to React, which made Ctrl+F not work.

    I too rely extensively on Ctrl+F, and would be annoyed if it stopped working.

    But how exactly does this make GitHub feel like legacy software? I don't "git" it.

    • You're thinking like a man.

      The female pattern is to complain and engage in reputational destruction to try to force compliance. Literal meaning of words isn't relevant.

      What we're seeing here is predicted by the psychological literature but somehow techbros claim women should act like men for the sake of being sensitive to women.

      I don't get that at all. "Women and men are exactly the same" seems neither scientific nor kind.

      We're used to some toxic hybrid which makes even less sense.

  • by madbrain ( 11432 ) on Tuesday July 23, 2024 @09:07PM (#64650678) Homepage Journal

    Especially the bots that auto-cloee bugs. I have spent tons of time creating detailed bug reports that developers never even got the chance to look at. Bugs should never be closed except by a human. I still have 25 year old Mozilla bugs open. I don't mind so much that they haven't been fixed. But as long as they are still valid issues, they simply should not be closed.

    With github it can happen in just a matter of weeks when a dev is on vacation or overloaded . It's just wrong. I wish projects didn't use github bug tracking. It is so awful. In my 32 year career, I have never seen anything worse.

  • Previous UI maintainer of Google's Code Search here (hi Alex!). I totally understand why they're doing this. We were considering it too, back when I was in charge of the UI. Loading files of tens of thousands of lines and applying not just syntax highlighting but also cross-references could be quite slow or even overload the browser. We never got around to it and the UI later got rewritten.

    Whether this is a good idea or a good implementation is another question, but it is definitely a response to a real pro

  • This is the key: "I know many talented people at GitHub who care, but the company's priorities just don't seem to value what I value about the service."
    Once you start to see that this is true, in the long term, for all corporate software, you can make much better strategic decisions about the tools you rely on. With very few exceptions, all corporate software evolves toward squeezing dollars out of the customer. Your desire to get your job done efficiently and accurately, is not a factor in their deci
    • just be aware that healthy open source projects usually evolve in an understandable direction. Corporate software does not.

      dont be so delusional. plenty of open source projects have turned to shit because of its leadership's decisions.

  • "Past its prime", this is the perfect way to describe Microsoft Office. 14 years past its prime.
  • One of my favorite programs does this, too. Logseq (killer app for note-taking, todos, and research) has four ways to search, and none of them can open the text shown where it is located in the page. They either do nothing, or they open a paragraph all on its own like a baby duck that's lost its family.

    And how often do you see baby ducks that have lost their family? You don't! Because it's bloody not supposed to happen.

    • Logseq (killer app for note-taking, todos, and research)

      who the actual fuck uses a notes app

      • by piojo ( 995934 )

        who the actual fuck uses a notes app

        I guess you've never heard of Evernote or Google Keep, which were never particular favorites of mine. But to answer you directly (and keep in mind the notes can be chronological or reference other dates):

        - people that make or modify recipes
        - people that want to remember their workouts
        - people that bake bread
        - mood tracking
        - period tracking
        - sleep tracking
        - people that network
        - people that do complicated analyses at work
        - comics
        - people that go shopping

        • just use effin notepad tho

          • by piojo ( 995934 )

            Like I'm going to put my hallowed thirteen-ingredient banana bread recipe in Notepad. That would be like if Julius Caesar started putting his dick into the holes in trees. smh

  • So GitHub adding a more modern implementation makes it "legacy software"? I understand the frustration. It's often that modern versions of software break things that users are used to, and feel worse. It's fine to complain about this. But calling it "legacy software" is not the right insult.

  • Just use git blame/grep/log like the rest of the civilized world.
  • Developer and librarian Misty De Meo

    how did I know that Misty's a bloke in a dress?

  • I'm confused about the terminology here. How does using the new method (asynchronous loading) make the site feel like "legacy" software? Wouldn't "legacy" mean the old (static loading) way of doing things?

    Of course, in this case feeling like legacy software would be a good thing, since the modern way of doing it sucks.

    The author also talks about Github being past its prime regarding core features. Again, isn't this a case of it doing dumb stuff because it's trying to be too advanced? It's not degradin

  • Quite irritating to do a search and not have the ability to do a simple browser-enabled find until I scroll around and load more of the page.

I don't want to achieve immortality through my work. I want to achieve immortality through not dying. -- Woody Allen

Working...