Skip Navigation

Posts
224
Comments
1464
Joined
3 yr. ago

  • They're bash/shell- and bin-dependent commands rather than Git commands. I use Nushell.Transformed to Nushell commands:

    • The 20 most-changed files in the last year:git log --format=format: --name-only --since="1 year ago" | lines | str trim | where (is-not-empty) | uniq --count | sort-by count --reverse | take 20
    • Who Built This:git shortlog -sn --no-mergesgit shortlog -sn --no-merges --since="6 months ago"
    • Where Do Bugs Cluster:git log -i -E --grep="fix|bug|broken" --name-only --format='' | lines | str trim | where (is-not-empty) | uniq --count | sort-by count --reverse | take 20
    • Is This Project Accelerating or Dying:git log --format='%ad' --date=format:'%Y-%m' | lines | str trim | where (is-not-empty) | uniq --count
    • How Often Is the Team Firefighting:git log --oneline --since="1 year ago" | find --ignore-case --regex 'revert|hotfix|emergency|rollback'

    /edit: Looks like the lines have whitespace or sth. Replaced lines --skip-empty with lines | str trim | where (is-not-empty).

     nu
        
    def "gits most-changed-files" [] { git log --format=format: --name-only --since="1 year ago" | lines | str trim | where (is-not-empty) | uniq --count | sort-by count --reverse | take 20 }
    def "gits who" [] { git shortlog -sn --no-merges }
    def "gits who6m" [] { git shortlog -sn --no-merges --since="6 months ago" }
    def "gits fixes" [] { git log -i -E --grep="fix|bug|broken" --name-only --format='' | lines | str trim | where (is-not-empty) | uniq --count | sort-by count --reverse | take 20 }
    def "gits aliveness" [] { git log --format='%ad' --date=format:'%Y-%m' | lines | str trim | where (is-not-empty) | uniq --count }
    def "gits firefighting" [] { git log --oneline --since="1 year ago" | find --ignore-case --regex 'revert|hotfix|emergency|rollback' }
    
      
  • Given the nature of Steam and previous executed data extraction, I'm scared installing and running niche/indie games now. Windows lacks

    A unified GUI framework hasn't happened yet, not between OSes, nor really within each OS ecosystem. I'm not hopeful about leaps in native interoperability in that regard.

    Web tech interoperability is so established and widely used, packaging and running those natively seems much more viable than any hope for supposed native long term efforts.

    Not everything will be covered by web tech. But for many things, it's already viable, and exploring native integration of these web technologies is interesting.

  • Will they ever fix the text contrast on that website/blog? :( Bad accessibility, bad readability.

  • I don't find it super easy to read. Even white on white is somewhat readable, but the black tree part on the left is particularly hard to read. Certainly not scan-readable / fast, like I would be able to read normal text.

  • Seems you don’t know how anything on Linux

    What makes you think that is what they think? They referenced other people. They didn't make any claims themselves or made any indications that they agree with those "flipping out" (who misunderstand).

    I read it as the opposite. They know and criticize those who don't and flip out because of that.

  • Git push to Forgejo -> automated build, package, and deploy pipeline -> use secured credentials to upload via scp or ssh or sftp

    Alternatives to copy-upload or upload-package and then extract via command is stuff like rsync (reduce redundant, unchanged file uploads) or a simple receiver service (for example REST endpoint that receives a package with an identifier key and secret key, that it extracts to a configured target folder).

    What solutions are simplest or easiest depend on the target environment, and how much of it you control. If you host the website on Forgejo itself it's as simple as pushing the static files into the corresponding pages branch.

  • It falls back exactly the way I think.

    This article talks about flashes, and proceeds to say fallbacks should be defined. It explains how fallbacks work, but fails to describe what actually leads to the flashes, how fallbacks get replaced, and fails to say anything about solving that flashing issue they talk about.

    Defining a more similar fallback font may reduce the issue visually, which is not mentioned either, and either way is not a solution for the flashing.

    Dunno why one would expect lower precedence CSS rules be integrated into more specific CSS rules without explicit "inherit". That's not how CSS works. Dunno if that's a common enough misunderstanding to warrant a "not the way you think it is" title.

  • ASP.NET Core 2.3 end of support announcement

    Jump
  • There's a tool for that too - I don't have the link or name at hand though

  • Possibly AI company crawlers. When they came up there was a lot of bad publicity and reports of actively malicious and toxic crawling behavior, including ban evasion.

    You can think about locking some url paths behind valid login sessions, or use a proof of work proxy guard.

    Anubis is the popular tool for that. I've seen maybe three alternatives, one of which from Cloudflare.

    See also related Codeberg ticket (Forgejo instance) https://codeberg.org/forgejo/discussions/issues/319

    If you search, you can find various blog posts about these issues. Not just when Forgejo.

  • Meh.

    I have been using vertical tabs for a long time, through Tree Style Tab (Firefox Extension), which has the additional benefit of tree hierarchy.

    I don't see a "everyone should use them", though. People have different usage patterns, number of tabs, amount of parallel or queued work and concerns, or ability to clear out tabs on session end. Many people prefer classic horizontal tabs - whether as a deliberate decision or not.

    I certainly prefer horizontal tabs, and by a lot. But I don't think it's the best layout for everyone and every usage pattern. It's good that we have the choice of alternatives.

  • That's from 2024. Did anything come from it? Did the court confirm the allegations, or not?

  • Interesting, clever technical workaround for (potentially) real user benefit. But still, they should never do that. Working around safeguards and system component borders for user convenience is a very bad idea and practice.

  • One month ago, I posted a comment with screenshots and my opinion. It also links ot the official Stack Overflow resources regarding it.

    "Classic""New" (state one month ago)
  • So, assuming good faith, they used two Telegram bots for some service functionality

    these two bots are used to resolve username from user id, eg tg://user?id=25

    Obviously, that should never happen silently. But these findings don't necessarily mean data has been compromised [beyond the scope of the app itself].

    I get they may be very frustrated and annoyed at the negative blowback after their FOSS efforts, but dismissing concerns isn't a good way to respond.

  • How does Pretext work?

    1. Segment the text; Normalize whitespace, apply Unicode line-break rules, and split the string into measurable units using the browser's own text segmentation.
    2. Measure with Canvas; Feed each segment through Canvas measureText() to get real glyph advance widths from the font engine. Results are cached.
    3. Pretext.js uses pure arithmetic; Given a container width, compute line breaks by summing segment widths. Multiply line count by line-height. Return height. No DOM, ever.

    Unfortunately, that doesn't really explain the final integration. And it seems I misunderstood/-assumed at first.

    Looking at the example at the top right, it renders numerous div elements?

    So, presumably, you lose text wrap behavior and clean markup like <p> for a paragraph? I also can't select text from it in a normal or consistent way.

    This example isn't very convincing either.

    Seems like a cool visual gimmick more than practically useful and accessible for primary content.

  • I work for a small ~30-person company with various customers, including some very big names. We're very deliberate about where tools like those could help us, where it's worth the exploration and investment. We want to be innovative and have the expertise, but at the same time, be reasonable and sound. We're also very conscious of data sharing and safeguards, in part out of necessity, because we can't just share our customers' code or data with third parties.

    Excitement, commitment, use, and hopes of using AI tools differ between colleagues. What we can use and how differs between projects.

    So yes, there are definitely other kinds of companies and environments out there.

  • What's the advantage of AlpineJs vs baseline web technologies?

    Scrolling through the simple intro examples, I would have implemented those with standard JS and DOM APIs just fine.

  • Programming @programming.dev

    Coming soon: Simpler pricing and a better experience for GitHub Actions - GitHub Changelog (Adds self-hosted runner cost)

    github.blog /changelog/2025-12-16-coming-soon-simpler-pricing-and-a-better-experience-for-github-actions/
  • Visual Studio @programming.dev

    Behind the scenes of the Visual Studio feedback system - Visual Studio Blog

    devblogs.microsoft.com /visualstudio/behind-the-scenes-of-the-visual-studio-feedback-system/
  • Typing @programming.dev

    TypeRacer - the global typing competition

    play.typeracer.com
  • UI/UX @programming.dev

    Are we stuck with the same Desktop UX forever? | Ubuntu Summit 25.10 (YouTube, 43min)

  • .NET @programming.dev

    .NET 10 Networking Improvements - .NET Blog

    devblogs.microsoft.com /dotnet/dotnet-10-networking-improvements/
  • Jenkins @programming.dev

    Announcing the new Jenkins Bug Bounty Program - Jenkins Blog

    www.jenkins.io /blog/2025/12/10/jenkins-bug-bounty-program-yeswehack-european-commission/
  • .NET @programming.dev

    .NET and .NET Framework December 2025 servicing releases updates - .NET Blog

    devblogs.microsoft.com /dotnet/dotnet-and-dotnet-framework-december-2025-servicing-updates/
  • Visual Studio @programming.dev

    Why changing keyboard shortcuts in Visual Studio isn’t as simple as it seems - Visual Studio Blog

    devblogs.microsoft.com /visualstudio/why-changing-keyboard-shortcuts-in-visual-studio-isnt-as-simple-as-it-seems/
  • .NET @programming.dev

    Introducing Data Ingestion Building Blocks (Preview) - .NET Blog

    devblogs.microsoft.com /dotnet/introducing-data-ingestion-building-blocks-preview/
  • cybersecurity @infosec.pub

    Glassworm's resurgence - Secure Annex

    secureannex.com /blog/glassworm-continued/
  • Game Development @programming.dev

    Preserving code that shaped generations: Zork I, II, and III go Open Source

    opensource.microsoft.com /blog/2025/11/20/preserving-code-that-shaped-generations-zork-i-ii-and-iii-go-open-source
  • Programming @programming.dev

    OpenAI Demo'd Fixing Issue #2472 Live. It's Still Open Months Later.

    blog.tymscar.com /posts/openaiunmergeddemo/
  • Opensource @programming.dev

    BentoPDF includes a “dad joke” with (almost) every release

    github.com /alam00000/bentopdf/releases
  • Security @programming.dev

    We Hacked Flock Safety Cameras in under 30 Seconds - Benn Jordan (YouTube, 40 min)

  • cybersecurity @infosec.pub

    We Hacked Flock Safety Cameras in under 30 Seconds - Benn Jordan (YouTube, 40 min)

  • Programming @programming.dev

    Highlights from Git 2.52 - GitHub Blog

    github.blog /open-source/git/highlights-from-git-2-52/
  • Visual Studio @programming.dev

    Visual Studio 2026 Release Notes

    learn.microsoft.com /en-us/visualstudio/releases/2026/release-notes
  • Programming @programming.dev

    Announcing .NET 10 - .NET Blog

    devblogs.microsoft.com /dotnet/announcing-dotnet-10/
  • .NET @programming.dev

    Announcing .NET 10 - .NET Blog

    devblogs.microsoft.com /dotnet/announcing-dotnet-10/
  • cybersecurity @infosec.pub

    dfir.ch /posts/today_i_learned_binfmt_misc/