@wader@fosstodon.org
@wader@fosstodon.org avatar

wader

@wader@fosstodon.org

Working with data

Some projects that i work on:
https://github.com/wader/fq - query, display and slice binary and text formats using jq
https://github.com/jqlang/jq - query and transform JSON
https://github.com/wader/jq-lsp - jq language server
https://github.com/wader/jqjq - jq implemented in jq
https://github.com/wader/static-ffmpeg - easy to deploy ffmpeg build for containers
https://github.com/wader/ydls - turn a media website into media file or podcast

This profile is from a federated server and may be incomplete. Browse more on the original instance.

grimalkina, to random
@grimalkina@mastodon.social avatar

I want to see absolutely no sensible and practical advice here. What programming language should I start vaguely and in a chill way teaching myself if I just want to experience something fun or elegant or interesting in and of itself, assuming I have no goal for using it to do anything really (outside of learning)

wader,
@wader@fosstodon.org avatar

@diazona @grimalkina would also recommend jq, simple and elegant with some unique features. happy to tell more!

astrid, to random
@astrid@fedi.astrid.tech avatar

i18n? k8s? a11y? m17n? i am g3g to b2w u up w2h a car h4r e7n

wader,
@wader@fosstodon.org avatar

@astrid i thought the m4 preprocessor was short for macro preprocessor, looked it up, it's just version 4 :blobcatsad:

wader, to haskell
@wader@fosstodon.org avatar
kubikpixel, to webdev
@kubikpixel@chaos.social avatar

Awesome jq

A curated list of awesome things built with the JSON processor and turing-complete functional language jq.

./jq https://github.com/fiatjaf/awesome-jq


wader,
@wader@fosstodon.org avatar

@martijn @kubikpixel :blobcatgrimacing:

wader, to random
@wader@fosstodon.org avatar

Do i know any macho executable expert? trying to make sense of the "__cfstring" section. In a 64bit "fat" file i see that the string pointers are for amd64 are values like 0x2000000001cba8 and aarch64 0x10000000017612. If i mask away the first byte they seem to point to valid utf8 strings, but feels more like luck. How to know what to mask/rebase? is it a tagged pointer? flags? ASLR?

wader, to rust
@wader@fosstodon.org avatar

Learning Rust the hard way: Mostly just reading about it

wader,
@wader@fosstodon.org avatar

@janriemer This got me thinking. The last language i learned deeply was jq and it has one thing in common with Rust that it has concepts that are very different from other languages (generator/backtracking in jq's case) so you can't or will fail to map it to something else that you know. Maybe then "soaking" is even more important?

wader,
@wader@fosstodon.org avatar

@janriemer Yeap that paper and https://github.com/jqlang/jq/wiki/jq-Language-Description is probably the closest to a jq spec there is atm :)

jaq i've peeked at and also talked with the author a bit. should really try contribute something. I also learned about precedence climbing from it, which was very useful when implementing https://github.com/wader/jqjq :blobcatgrimacing:

wader, to random
@wader@fosstodon.org avatar

TIL docker build --progress=plain
A bit nicer than ... 2>&1 | cat workaround

wader, to Cat
@wader@fosstodon.org avatar
wader, to random
@wader@fosstodon.org avatar

Yesterday I read the recently published JSONPath RFC (RFC9535) and listening to an interview with one of the creators of SQL https://www.datacamp.com/podcast/50-years-of-sql-with-don-chamberlin and worst of all i poked around in sqlite code to figure out how the scheme table works...guess I just have to accept that I'm a query language nerd.

wader,
@wader@fosstodon.org avatar

@underlap aha ”great” hehe

wader,
@wader@fosstodon.org avatar

@underlap Aha doh that makes sense. Somehow missed section-2.4.3-2.2.3.3. (NodesType args)

Think i was confused with ValueType argument like for length() and in that case a singular query is required? ex $[?length(@.) == 1] is invalid even if @. would be a nodelist with one value?

I'm testing with https://json-everything.net/json-path/ maybe should use the reference implementation to try things?

wader,
@wader@fosstodon.org avatar

@underlap 306 of 550 tests passed

slowly slowy, also actually learning jsonpath as i go :)

wader,
@wader@fosstodon.org avatar

@underlap no functions yet, just got some basic filters expressions to work. jq has pcre-compatible regexp so hopefully folloing https://www.rfc-editor.org/rfc/rfc9485.html#name-pcre-re2-and-ruby-regexps should work?

wader,
@wader@fosstodon.org avatar

@underlap yeap "That day, that sorrow" as we say in sweden 😬

wader,
@wader@fosstodon.org avatar

@underlap Curious about one thing: The spec says:
function-argument = ... / filter-query / ; (includes singular-query)

Is there some specific reason why function arguments are limited to singular query and an explicit value(...) is needed to use a normal query? for clarity or to make some kind or optimization possible? something else?

I'm leaning towards parsing things without caring about singular query and then deal with it during eval somehow.

wader,
@wader@fosstodon.org avatar

@underlap 130 of 550 tests passed. some progress! no filter selectors yet and lots of misshandling of whitespace etc

i'm implementing it as a jq function that outputs each match separately so things like this will work: jsonpath("$.a") |= .*10

wader,
@wader@fosstodon.org avatar

@underlap yes! have ended up on some of them while poking around, thanks for writing them! trying implement my own toy implementation of jsonpath, we’ll see how it goes :)

wader, (edited )
@wader@fosstodon.org avatar

@underlap nope! but was looking for something like that. thanks! that will make things easier

slink, to random
@slink@fosstodon.org avatar

👏 to the team for their simple and effective (i presume 😉) anti-spam measures on their

wader,
@wader@fosstodon.org avatar

@slink 😄 but i expected some assembly language trivia etc!

wader, to random
@wader@fosstodon.org avatar

Thinking of renaming jira ticket types:
Bug -> Tragedy
Support -> Drama
#jira

wader,
@wader@fosstodon.org avatar

@deshipu Incident? :thinkhappy:

psykose, to random
@psykose@outerheaven.club avatar

more things should remux every mp4 to an mkv

wader,
@wader@fosstodon.org avatar

@psykose @chozu hook up avio to libtorrent and get remux'in

KentuckyConjurer, to brainfood
@KentuckyConjurer@horrorhub.club avatar
wader,
@wader@fosstodon.org avatar

@KentuckyConjurer @MargaretSefton @ElizabethLeeCo according to imdb i've watched it and gave it an 8 :blobcatgrimacing:

wader, to random
@wader@fosstodon.org avatar

@janriemer Finished the Learning Rust the wrong way talk, was very interesting! now i can feel less bad for being horrible at reading programming language books back to back 😅

wader,
@wader@fosstodon.org avatar

@janriemer no worries 👍 i've done quite a lot of C so i think i might be suffering from or being a bit too curious how things work under the hood... also damn things are so much more "exact" compared to e.g. golang :)

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • mdbf
  • ngwrru68w68
  • modclub
  • magazineikmin
  • thenastyranch
  • rosin
  • khanakhh
  • InstantRegret
  • Youngstown
  • slotface
  • Durango
  • kavyap
  • DreamBathrooms
  • megavids
  • GTA5RPClips
  • tacticalgear
  • normalnudes
  • tester
  • osvaldo12
  • everett
  • cubers
  • ethstaker
  • anitta
  • provamag3
  • Leos
  • cisconetworking
  • lostlight
  • All magazines