HNHacker News
TopNewBestAskShowJobs

prussian

261 karma · joined March 24, 2020

submissionscomments
prussian··on Don’t use environment variables for configuration
I've endlessly debated with myself about this and have come to the conclusion there isn't really a good solution and the best choice is probably put as much in an actual file as possible. environment is sort of leaky and non-obvious . at least with a file there is something that is written somewhere that can be inspected and passed as an argument or as an environment variable. The only real positive I see with environment is that children of the process group basically get it for free, but that can be a negative in it of itself as well.

If I have to pick between environment and arguments as configuration, I'd probably prefer arguments since the application would have to explicitly iterate over all the arguments and handle them in some manner, like assign them to some structure or global internal to the program.

prussian··on Systemd 248
I literally work on a device that is still uses an inittab (hopefully changing that in 2021). the only limiting factor is yourself.

1) eudev works

2) elogind works

3) you can still use sysvinit or literally the multitude of others

prussian··on Systemd 248
I know at least one person using bitlocker (windows) with this TPM unlock feature and lost access to his data when he had to get his laptop repaired.

People need to be aware this can happen when using it and should remember to add a password key to their luks container.

prussian··on The Deno Company
util.promisify() seems to work for many of the node stuff I use a lot, like pipeline(), readFile(), etc. Perhaps require('xyz/promises') is a newer development.
prussian··on Socat – A utility for data transfer between two addresses (2018)
very underrated. I've used this trick before to mock serial ports on some Linux-running industrial devices so I could debug them.
prussian··on Fintech Comes to America at Last
as you should. I know my mom was accidentally overcharged due to exactly what you described. I recommend everyone get some kind of charge alert and react to them appropriately, or at least look over the statement.
prussian··on Emacs 27.2
I am. I honestly don't notice much of a difference, but at the same time I keep seeing deferred compilation warnings for plugins I have added via straight.el

I've been using https://github.com/flatwhatson/guix-channel to manage it. I don't recommend trying the Pure GTK+ stuff yet though; some context menus don't seem to work. Specifically, treemacs rename seems broken with PGTK.

prussian··on Here We Go Again
>(3) might no longer be the best person to lead.

this is the part I think people are having trouble with for some reason. I respect RMS for what he did, but it's clear he's probably not the right person to lead the movement anymore. It's hard to excuse some of his strange and creepy behavior, but after meeting him, twice on the same day, it isn't entirely unsurprising; perhaps it's unfair for me to say, but I'm pretty certain he has some form of neuro-divergence.

prussian··on Show HN: WebAssembly and ffmpeg = Quick clip, overlay, resize and GIF-ize videos
sounds cool. wonder in practice how this will work out with patent encumbered video formats.
prussian··on Firefox 87 trims HTTP Referrers by default to protect user privacy
I turned it off once and the most common breakages were usually authentication that involves some kind of OpenID delegation.
prussian··on Google isn’t happy with Microsoft over online news
>Loves Linux but blocks Linux by user agent. Nice.

Reminds me of Office 365. If your UA has Windows in it, all of a sudden they offer SSO authentication as if Linux can't be set up for it.

prussian··on Elegant Bash Conditionals
[[ ]] is effectively an entirely different parser than the surrounding shell, similar to (( )).

so you can do things like

    [[ 1 < 2 ]] && echo true # where < is now not redirect, like to (( 1 < 2 ))
    [[ "x" == 'y' || x == x ]] # note how || is not behaving the same as [ '' || 'y' ]
`man 1 test` explains the more conventional `[ ]` where the bash man page would better explain the [[ case.
prussian··on How an Anti-TypeScript “JavaScript developer” like me became a TypeScript fan
Short article, felt like what has been said before numerous times. I will opine why I was hesitant at first. The biggest reason was I didn't want to start writing a bunch of not-js (as in not a "strict superset" of js) and also having to deal with writing my own type definitions. I remember trying things like flow and reasonml and got quickly annoyed bending over backwards to use non-reason/flow code.

It seems like as of 2021 though that typescript has sort of won and the community has done great work in covering virtually every package I seem to use. npm helpfully points out which libraries have typescript definitions or a @types/<package>. I'm still not entirely sold on the strengths of strong typing in terms of bug avoidance, but the IDE like features are enormous. For me personally I see typescript more as a forced, never stale or mostly-incorrect, JSDoc.

prussian··on Bash_unit – bash unit testing framework
When I was writing my IRC Bot In Bash, I was looking for something akin to this. for the most part I got away with simple mocking for the IRC bits, but all the functionality (plugins & commands) is still untested. Around the time I created it bats was a thing, but it didn't seem that unobtrusive. this seems more in line with how I'd probably do testing for bash, though at this point I'm not so sure what I'd use it for. Maybe It's worth going over some personal or work projects and trying this out.
prussian··on The Hijacking of Perl.com
I agree the article did a bad job keeping me interested, but I think it is more of a statement about the rumor mills and fake news about the takeover and to be cautious about falling into it.
prussian··on Go is not an easy language
What makes Emacs not a GUI IDE?
prussian··on Timezone Bullshit
tzset manpage for glibc explains this:

         If  the file specification filespec is omitted, or its value cannot be interpreted, then Coordi‐
       nated Universal Time (UTC) is used.  If filespec is given, it specifies another tzfile(5)-format
       file  to  read  the  timezone information from.  If filespec does not begin with a '/', the file
       specification is relative to the system timezone directory.  If the colon is omitted each of the
       above TZ formats will be tried.
prussian··on Timezone Bullshit
you'd have to constantly update your TZ to reflect changing transition periods, which you don't even specify. using a tzdata file, you get this for free plus proper transitions for older dates.
prussian··on Timezone Bullshit
more likely the libc. I have the same version of GNU date using glibc and this behavior persists, as I would expect.
prussian··on Timezone Bullshit
tzset(3) explains this. GNU is actually sort of bailing the author out in the unfortunate cases like America/New_York where it ignores you forgot to provide the prepending colon.

In terms of EDT, LOL, etc: again, well explained in the tzset manpage. EST works only because it appears the timezone database has EST and again, GNU is being helpful and assuming you meant to add the prepended colon.

prussian··on Police Say They Use Facial Recognition Despite Bans
So instead we should increase the risk of death and injury instead of safely picking people up once things deescalate? I don't think that's lazy by any measure.
prussian··on Microsoft Refuses to Open Source VSCode Python Language Server
Speaking of LSPs, It's also funny how tsserver isn't an LSP either, but I guess it is open-source.[0] It's sort of funny this pylance thing seems to suffer the same problem.

[0]: https://github.com/microsoft/TypeScript/issues/39459

prussian··on Distcc – distribute builds across multiple machines simultaneously (2006)
I've been contemplating how to add ccache to my work's current icecream cluster and I also considered the possibility of using it for non-release branch dev builds in CI. I'll have to experiment with this instead. Thank you.
prussian··on Distcc – distribute builds across multiple machines simultaneously (2006)
If you like distcc, perhaps you'd also like icecream https://github.com/icecc/icecream which I think is a bit easier to use.
prussian··on Coolest custom mechanical keyboards
>Another dislike is that full size keyboards are scorned and generally unavailable. Hey check it out, I’m a full sized adult doing full size job with my pc, so I actually do use the number pad, etc.

in fairness, you can buy separate numpads with the added bonus of being able to put it where you want. That being said, yes. the crazy 60%, etc keyboards are a bit much.

prussian··on Five lines I put in a blank .vimrc
if you're a fan of incsearch, you may also be a fan of neovim's inccommand=nosplit as well.
prussian··on Zero-click, wormable, cross-platform remote code execution in Microsoft Teams
These are some of the reasons why I refuse to use the desktop application and on Linux at least, it isn't hard to define a shortcut that works like one; path ~/.local/share/applications/ms-teams.desktop

  [Desktop Entry]
  Version=1.0
  Name=Microsoft Teams
  Comment=Teams without Electron
  GenericName=Teams
  Exec=/usr/bin/chromium-browser --user-data-dir=/home/prussian/.config/ms-teams --app=https://teams.microsoft.com/_#/conversations/General
  Terminal=false
  X-MultipleArgs=false
  Type=Application
  Icon=ms-teams
  Categories=Network;InstantMessaging;
  Keywords=teams;messaging;internet;
  X-Desktop-File-Install-Version=0.23
prussian··on Ethereum 2.0 launches
Thus, a new problem is born. Governments regulate what securities people can buy or exchanges simply deny you services. then you're back to your former problem. Most people participating are doing so with fiat on-ramps.
prussian··on Ethereum 2.0 launches
Honestly, the selling point is it is a demonstration of global consensus. whether that is useful as a service is debatable I suppose.
prussian··on Ethereum 2.0 launches
so basically, we're inefficiently reinventing payment processing with the added tax burden of buying/selling securities?
← PreviousPage 3 of 4Next →