HN user

nonlogical

31 karma
Posts0
Comments16
View on HN
No posts found.

I am sure places like this have their right to exist, and they would probably be a great place to consume… without actively participating. By nature of being strict and exclusionary they will essentially tend towards becoming a relatively small exclusive club perhaps slightly bordering on being an echo chamber. Whether you consider that a bad thing or good, I am not making a judgement call here.

Also the cycle/churn of software is so quick nowadays that manuals are often written as a second or third thought for majority of the projects. So I can not really blame folks for just directly probing for tribal knowledge.

Shapez2 Released 2 years ago

Yup, I too had issues with sound, the game seems to just use the first sound interface available, but it is relatively easy to change after starting (via KDE sound panel for me, but I imagine pavucontol should also work). The issue seems to be with Unity/FMOD on linux not the actual game. Newer versions of Unity seem to not have this issue and author was saying they are trying to see if they can upgrade.

PS I was attempting to make a pipewire LUA script that would auto connect the FMOD output to default interface but got stuck on querying and linking audio ports and interfaces, if someone has more Pipewire-Fu I am all ears!

jq is such an underrated tool, it is fully turing complete functional language in and of itself. It opens up an ocean of possibilities in combination with scripting languages (python has bindings), and it is ungodly fast chewing up through tons of JSON like its nothing.

It is a bit perl-ish, but being pure and functional it is a little easier to reason about when you have to revisit your queries.

PS I am certainly bookmarking your tool as well =]

There is also amusing project jqjq that implements jq in jq itself that I love to point folks at to show how expressive the language is: https://github.com/wader/jqjq

Shapez2 Released 2 years ago

Love it, and it even has a native linux version. Level of polish in this game is unreal.

Out of curiosity, what are your top reasons to pick XML over JSON(+jsonschema) or Msgpack/Protobuf, as data interchange? I have come of age as a professional software engineer around the time when industry has started switching from XML to JSON, and as a consequence in the JSON camp, but I am always curious to hear out folks with a different opinion.

Thank you so much for piecing together a great example (jqjq) to help open everyone’s eyes that JQ is not just a JSONpath implementation with weird syntax! I often reference it to drive home the fact that JQ is a full blown language.

The brainfuck one is also gonna be going into my notes. That implementation is quite a terse implementation.

jq does often feels like a code golf language. I would say it does have some of those Perl one liner vibes, that is to say that it is often a write-only language.

Also the ‘nearly’ part is because I don’t remember if it has infinite loops or if it is more like Starlark and thus decidable. I do have vague recollections of causing infinite cycles in JQ, it quite as well could be entirely Turing complete.

So far I have not found a single task that JQ was incapable of. And I have abused it pretty bad on my spare time =], for intellectual challenge.

JQ is an insanely powerful language, just to put to rest any of your doubts about what it is capable of here is an implementation of JQ... in JQ itself:

https://github.com/wader/jqjq

It really is a super cool little, super expressive nearly (if not entirely) turing complete pure functional programming language.

You can:

* Define your own functions and libraries of functions

* Do light statistics

* Drastically reshape JSON data

* Create data indexes as part of you JQ scripts and summarize things

* Take JSON data, mangle it into TSV and pipe into SQLite

  cat data.json | jq '<expr>[]|@tsv' | sqlite3 -cmd ".mode tabs" -cmd ".import /dev/stdin YourTable"
And also for prototyping you can also use it to tailor output of APIs to what you need in a pinch, using JQ as a library especially with something like python:

https://pypi.org/project/jq/

As a part of the library you can compile your expressions down to "byte-code" once and reuse them.

Saying JQ is a best kept secret is an understatement. JQ gets more amazing the deeper you dig into it. Also it is kind of crazy fast for what it is.

edit: Formatting fixes

This is something very spiritually close to a concept I recently learned about from Cory Doctorow’s talk at DEFCON called Adversarial Interoperability:

https://www.eff.org/deeplinks/2019/10/adversarial-interopera...

As many have noted the reason this functionality is not available is because it invariably leads to commodification of services. Competitors will quickly jump in and use those APIs to interoperate to bootstrap themselves up.

Most likely for consumers that is a huge win, but for companies that is a dangerous filter that filers out companies that stagnate.

This used to be common back in the day and was keeping companies from stagnation, that was until per Cory’s arguments there have been an explosion of laws that basically outlawed Adversarial Interoperability. Which in turn led to too big to fail software giants we have today.

This is finally a great article demystifying non-resident keys! I got a FIDO yubikey a few months back, it came with no PIN set up, I was surprised that I could just use it like that, websites were not asking me to set it up explicitly.

I set it up via CLI. Then all websites started asking for the pin and storing the keys inside (resident keys).

Knowing that you only have limited slots, I tried deleting the pin by resetting yubikey to revert back to old behavior as there was no way of zeroizing the pin any other way (for the sake experimenting with the tech and understanding key management better, ofc pin or BIO auth is better).

And then suddenly found that I was unable to use the key to auth into my accounts I set up before. In hindsight now I know by resetting the hardware key I have reset the master key inside.

There really isn’t much well written introductions into how all of this works. Thank you for doing a great job demystifying the flow here!

Lightning is a bit of a difficult system to host yourself. But point is you set up something akin to a running total between you and your friends. The nice thing here is that, you only lose money when you total up at the end, like clearing all transactions and merging them into one. You are becoming your own Visa/Mastercard/ACH essentially.

You can certainly use a hosted wallet with lighting which is a sane alternative. There are still fees but only on cash ins and cash outs on the total amount tallied up between you and your friends when you chose to settle up in the form of BTC transaction fees. As far as I understand there are pretty much no transfer fees.

But I am just a novice interested in this tech. So correct me if I am wrong.