Komunitas
beehaw.org
I think Golang had the potential to take over just because it’s so easy to pick up and start contributing. My last position was Golang focused and our hiring was never focused on experience with the language because we knew that if you understood programming concepts you would succeed in Golang. Today, I’m working on Rust and while I enjoy it for what I’m using it for (Systems level instead of Web Services) I’d be hesitant to suggest it for most backend application just due to the ramp up time for new developers. tl;Dr Golang will have an easier time hiring for because no language specific experience is required.
Komunitas
programming.dev
Love this. Always interesting to see novel ways of querying data in the terminal, and I agree that jq’s syntax is difficult to remember. I actually prefer nu(shell) for this though. On the lobste.rs thread for this blog, a user shared this: | get license.key -i | uniq --count | rename license This outputs the following: ╭───┬──────────────┬───────╮ │ # │ license │ count │ ├───┼──────────────┼───────┤ │ 0 │ bsd-3-clause │ 23 │ │ 1 │ apache-2.0 │ 5 │ │ 2 │ │ 2 │ ╰───┴──────────────┴───────╯
Komunitas
lemmyrs.org
A few things: Instances are like their own self-hosted Reddits with communities being the sub-reddits. We have (had?) r/python, r/rust, r/golang along with r/programming; we can do the same here with topic-focused instance (like this one). I can imagine there being instances like lemmygo.org, lemmypy.org etc if the Reddit exodus continues. You don’t need multiple accounts to access communities (sub-reddits) from other instances (reddit). A single account on any instance allows you to access communities from any other instance. The UX/UI is a bit wonky, but it works. As @[email protected] pointed out, micro-communities like cli, wasm, networking etc can potentially become big enough and/or have specifics that are more suitable to exist on a topic-based instance. Personally, I don’t have any preference. I will simply subscribe to the community which is the most active on whichever instance.
Komunitas
leminal.space
It’s hard to predict the future, but I can point to a couple of indexes. TIOBE measures language popularity according to a variety of factors. It has Java on a steady downward trend over the last couple of decades, but shows it as still very relevant. TIOBE does not show comparable growth for Golang. I don’t see much growth in the top 10 for languages that are especially suited to autoscaling. C# looks to be steady as a language in a similar niche as Java. OTOH another survey from devjobsscanner that looks purely at job postings shows Java openings as very steady over the last couple of years. It also shows Java as more popular than Golang. So I don’t know exactly what conclusion to draw from that. But learning a new language can be a helpful exercise regardless to broaden your perspective, and to keep your skills sharp. Personally for the purpose of producing resource-efficient binaries for scaling I prefer Rust. It’s design incorporates some correct-by-construction strategies that promote high-quality code. And it’s well-suited for compiling to WASM so you can do stuff like deploy small services to Cloudflare workers for wild scaling. But I guess Rust isn’t making a big showing in the popularity charts. And Golang is popular for its lower learning curve.
Komunitas
lemmy.ml
Skimming their website, I noticed two issues with their dependencies. First, https://berty.tech/docs/protocol/ says *The only non-standard packages used in the Berty Protocol are the following two, although they have been written by experts are widely reviewed by the community: libp2p/go-libp2p-core/crypto agl/ed25519/extra25519 Clicking through to ed25519/extra25519, one can see that the upstream author replaced that code two years ago with a readme that says “This repository is unmaintained” and “Uncared for code is not a foundation to build upon”. (The part that was merged in to golang’s standard crypto library does not include the “extra25519” code that this project requires.) Second, I see that their Go-Tor-Transport relies on go-libtor which currently is using a year-old snapshot of the -dev branch of upstream tor. (I haven’t yet discerned if Tor is fundamental to their design or if it is an optional thing, but i suspect the latter?)
Komunitas
sh.itjust.works
@RareBird15 @programming @linux @selfhosted Ones I haven’t seen mentioned (unless it came in while I was typing this). https://github.com/kainctl/isd - Interactive systemd. https://github.com/zellij-org/zellij - tmux alternative. Built in which-key functionality. I initially switched to it because I like large scrollback buffers and tmux was super slow at resizing window panes. Can open buffers in nvim for better search. Nicer TUI if you don’t mind a little bloat / bling. https://github.com/arxanas/git-branchless - Work on stacked commits. Instead of opening PRs linerally you work on several commits at once with the expectation each commit will be a PR. Promotes smaller PRs that are easier to review to complete a feature. Often when doing that linerally you may discover a bad choice made earlier and have to reverse course and refactor. With a branchless workflow you go back and forth on commits so the final stack of PRs doesn’t include those reverse course refactors. git sl has some nice TUI graphs of your stack. https://github.com/mystor/git-revise - Split, rearrange commits. Works nicely with git-branchless. https://github.com/tummychow/git-absorb - Reflect changes from a commit backwards. Also works well with a branchless workflow. If I’m honest I just develop linerally and use an AI agent/skill to restack using the 3 programs above to erase pivot / refactor points and to group logical blocks into an easy to review PR. https://github.com/ymtdzzz/otel-tui - Open Telemetry viewer. https://github.com/brocode/fblog - JSON Lines viewer. https://github.com/aristocratos/btop - Better top. https://github.com/jandedobbeleer/oh-my-posh - Terminal prompt. My daily driver. https://starship.rs/ - Another terminal prompt. Played with a little but never got around to giving it my full attention to match my oh-my-posh setup. https://rclone.org/ - Remote backups using my own encryption key. Supports many cloud providers. https://github.com/Mic92/nix-fast-build - Not sure its really faster but has a nicer TUI. https://dircolors.com/ - Directory listing colors in terminal output to better distinguish file types. At a glance I can distinguish read-only, executables, symlinks, directories, etc. https://github.com/jesseduffield/lazygit - Git TUI. I only use in neovim though, don’t think I’ve ever run it directly. https://github.com/sindrets/diffview.nvim - Better merge conflict handling in neovim. https://www.lazyvim.org/ - Base neovim config with lots of TUI sugar. https://github.com/stevearc/oil.nvim - File tree explorer in neovim with editing capabilities. Hands down the most efficient way I’ve found to normallize torrent file names. Fixing 5+ seasons of a show takes a few minutes if you know the right vim keybinds. https://github.com/getsops/sops / https://github.com/mic92/sops-nix - Encrypt secrets in git repos. https://github.com/zdharma-continuum/fast-syntax-highlighting - Syntax highlighting as you type shell commands. https://github.com/luccahuguet/yazelix - Opinionated Yazi, Helix, Zellij setup with custom patches to integrate. Looks interesting but could never get to work with nix as it keeps trying to write to store paths. They even have a flake.nix in the repo… less - Less shitty more (terminal pager) with the options below. export LESS="-aRix2 --use-color --mouse --wheel-lines=3" export SYSTEMD_LESS="$LESS" # a = search from current position # i = case insensitive # x2 = tabstop # R = color control chars show color https://pnpm.io/ - Better monorepo support than npm. Faster too. Easy to patch dependencies. https://bun.sh/ / https://deno.com/ - Alternate node runtimes. Only have used bun, but its a faster cold start and uses less memory. https://oxc.rs/docs/guide/usage/linter.html - eslint clone in rust. Seconds versus minutes. Uses the golang TypeScript 7 preview version of typescript-eslint for type checking. https://rolldown.rs/ - Rust clone of the rollup JS/TS bundler. https://ast-grep.github.io/ - Grep AST patterns. Written in rust. https://dprint.dev/ - Formatter that unifies other formatters. Lots of fast rust plugins. https://biomejs.dev/ - Rust based node formatter. dprint support. https://github.com/astral-sh/ruff - Rust based python linter and formatter. dprint support. https://github.com/numtide/treefmt - Like dprint, forwards to other formatters, but intended for nix declarative setups (for use with devshell or devenv). https://direnv.net/ / https://github.com/nix-community/nix-direnv - Activate a virtual environment when you enter a directory. Common with nix devshell/devenv but can run any command. Auto reload based on certain files via watch patterns. https://github.com/mikesart/inotify-info - Debug why you’ve maxed out file watchers. https://github.com/lyonel/lshw / https://github.com/pciutils/pciutils - Detailed hardware info. https://github.com/wagoodman/dive - TUI to explore docker layers. https://github.com/containers/skopeo - Bunch of utilities for working with docker images and registries.
Komunitas
lemmy.world
It depends. Kind of prefer Flatpaks as they are always working as expected on any distro, but some of them are giving me just too much struggle. For example, dealing with sandboxing, or especially VSS code app. Yes, there are instructions, but then I install Golang SDK via Flatpaks the hard way (using CLI) for Go development, then having a nightmare trying to setup everything in vss code. Then how tf should I access go binary within my host terminal? On Arch Linux I just tend to install from official repos, while the rest of apps - from Flatpaks. Personally I don’t like the way they are sandboxed, bit as long as it works I am fine.
Komunitas
programming.dev
svelte front end, golang backend, postgres for database. But it depends on the needs of the project. Choose technology because it’s the right fit for the job, not because it’s your favorite.
Komunitas
programming.dev
Overall, I agree. Exceptions are messy and make it difficult to reason about code. That said, I think the macro at the bottom is even worse. I think a better solution to the one posted in the article is to use std::expected instead. This gives you a typed union that allows you to return either a successful result or an error type. What’s nice about it is that you don’t need to add endless amounts of if success {...} else {...} blocks. You can use the monadic operations (and_then, transform, etc.) to add your logic as normal while letting the compiler smoothly take care of doing the error checks. (In fact, I really wish golang has something similar to this, it would get rid of the endless error checking you have to write manually.) I wasn’t able to find an example using std::expected, and I tried writing one myself, but my version of g++ doesn’t seem to support it yet. But here is a nice std::optional example that should be pretty close to what you would do with std::expected.
Komunitas
lemmy.ml
Support: MySQL PostgreSQL SQLite MSSQL SSH Tunneling
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
lemmy.ml
Lihat kiriman asli pada platform media sosial terkait.
Komunitas
awful.systems
dear fuck: From 2018 to 2022, I worked on the Go team at Google, where I was in charge of the Go Security team. Before that, I was at Cloudflare, where I maintained the proprietary Go authoritative DNS server which powers 10% of the Internet, and led the DNSSEC and TLS 1.3 implementations. Today, I maintain the cryptography packages that ship as part of the Go standard library (crypto/… and golang.org/x/crypto/…), including the TLS, SSH, and low-level implementations, such as elliptic curves, RSA, and ciphers. I also develop and maintain a set of cryptographic tools, including the file encryption tool age, the development certificate generator mkcert, and the SSH agent yubikey-agent. I don’t like go but I rely on go programs for security-critical stuff, so their crypto guy’s bluesky posts being purely overconfident “you can’t prove I’m using LLMs to introduce subtle bugs into my code” horseshit is fucking terrible news to me too but wait, mkcert and age? is that where I know the name from? mkcert’s a huge piece of shit nobody should use that solves a problem browsers created for no real reason, but I fucking use age in all my deployments! this is the guy I’m trusting? the one who’s currently trolling bluesky cause a fraction of its posters don’t like the unreliable plagiarization machine enough? that’s not fucking good! maybe I shouldn’t be taking this so hard — realistically, this is a Google kid who’s partially funded by a blockchain company; this is someone who loves boot leather so much that most of their posts might just be them reflexively licking. they might just be doing contrarian trolling for a technology they don’t use in their crypto work (because it’s fucking worthless for it) and maybe what we’re seeing is the cognitive dissonance getting to them. but boy fuck does my anxiety not like this being the personality behind some of the code I rely on
Komunitas
lemmy.bestiver.se
Comments