Top all-time · #18280
Arun Sharma
Personal blog · adsharma.github.ioprogrammingdata
Arun Sharma writes Random Musings, a personal blog at adsharma.github.io about programming and data. Since 2020, 4 different Hacker News readers have linked it 35 times, most often “Show HN: Language Agnostic IDL for Rust, Swift and Kotlin”. It is still writing: the last post was on 2026-10-24, and you can follow it by feed.
Too few sampled comments (1) to say how often HN recommends it.?
Why HN links it
The linked pages describe the author's flattools programs and fquery, tools for building web-based database frontends. The only comment lists them among low-code resources, with no remarks on the writing.
Summarised by Claude from a sample of 1 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Arun Sharma Open Source Activity
Most-linked posts?
- /fquery/2 people · 6 mentions · first linked 2021-03-10
- Show HN: Language Agnostic IDL for Rust, Swift and Kotlin2 people · 4 mentions · first linked 2020-11-22
What Hacker News says?
https://github.com/adsharma/fquery/ https://adsharma.github.io/fquery/ Uses python expressions and generates SQL. Also does static typing, so you can run a type checker on the code
Comment linking /fquery/
on “Against SQL”Submitted Show HN: Language Agnostic IDL for Rust, Swift and Kotlin as a story · 7 points
HN discussionIt should be much easier to type check this: https://adsharma.github.io/fquery-meets-sqlmodel/ https://github.com/adsharma/fastapi-shopping/blob/main/model...
Comment linking /fquery-meets-sqlmodel/
on “"We're building a new static type checker for Python"”Submitted FlatBuffer as Serialization Agnostic IDL as a story · 2 points
HN discussionCounter point: This has nothing to do with the programming language in question. The anti-abstraction, everything must be concrete argument leads to madness. You can do type oriented design with python3 or typescript. Since writing this, I've discovered other systems with the same general philosophy: * Avro IDL * Fuschia/Zircon and the associated IDL (FIDL) https://adsharma.github.io/flattools-programs/
Comment linking /flattools-programs/
on “Haskell is a Bad Programming Language (2020)”Submitted FlatBuffer as Serialization Agnostic IDL as a story · 1 points
HN discussionThe term "business logic" itself tends to be somewhat controversial: https://adsharma.github.io/flattools-programs/
Comment linking /flattools-programs/
on “Haskell is a Bad Programming Language (2020)”I wrote such a C++ implementation during my days at Facebook around 8 years ago: https://engineering.fb.com/2016/03/18/data-infrastructure/dr... There is an example under "Functional programming primitives". It was a C++ implementation that fell victim to Greenspun's 10th rule. So I wrote a specification for it, first in Clojure and then in python. The C++ execution engine is open source: https://github.com/facebook…
Comment linking /fquery/
on “I don't want to learn your query language (2018)”resp = ( await DepartmentQuery([1,2]) .edge("employees") .project(["name", "start_date", ":id"]) .to_json() ) https://github.com/adsharma/fquery/ https://adsharma.github.io/fquery/
Comment linking /fquery/
on “Generating JSON Directly from Postgres”https://adsharma.github.io/flattools-11222020.html supports unions and 4 popular type safe languages. The idea is that you'd write decorators in those languages to implement functionality similar to ksy or write a template to generate ksy and reuse Kaitai tool chain.
Comment linking /flattools-11222020.html
on “Kaitai: Describe the structure of data, not how you read or write it”I like the flatbuffer syntax as an IDL. It should be fairly trivial to write a tool to generate ksy https://adsharma.github.io/flattools-11222020.html
Comment linking /flattools-11222020.html
on “Kaitai: Describe the structure of data, not how you read or write it”Not sarcastic. Backed by a registered domain name, GitHub project, discussion links, huggingface dataset and an OSS graph database project with 1900 stars. The extremists are the ones who believe that Wikipedia is working well and quote Poe's law as described on the page, which Google will cite literally. edit: Longer form blog post response including Google AI analysis https://adsharma.github.io/google-wikipedia-an…
Comment linking /google-wikipedia-and-poes-law/
on “Academics have a duty to defend open knowledge systems like Wikipedia”Any chance of supporting python? I have similar plans with py2many and http://adsharma.github.io/pysmt
Comment linking /pysmt
on “Kind: A Modern Proof Language”> Language Design Direction 1: Teaching LLMs about DSLs (through Python?) This is what I've been focused on last few years with a bit of Direction 3 via python -> smt2 -> z3 -> verified rust Perhaps a diffusion model for programming can be thought of as: requirements -> design -> design by contract -> subset of python -> gc capable language (a fork of golang with ML features?) -> low level compiled language (rust, z…
Comment linking /agentic-transpilers/
on “LLMs pose an interesting problem for DSL designers”Love the DuckLake spec. Now there is something similar for Graphs. https://adsharma.github.io/graph-archiving/ https://adsharma.github.io/beating-the-CAP-theorem-for-graph... The catalog is based on the now archived kuzu graph db project. Development continuing here: https://github.com/LadybugDB/ladybug
Comment linking /beating-the-CAP-theorem-for-graphs/
on “Show HN: Duck-UI – Browser-Based SQL IDE for DuckDB”Why not use python itself then? The design by contract PEP is old. Not sure if anyone is working on it. https://adsharma.github.io/agentic-transpilers/ https://adsharma.github.io/pysmt
Comment linking /pysmt
on “Formal Methods: Just Good Engineering Practice? (2024)”https://adsharma.github.io/agentic-transpilers/ Long way to go. But there is a design. Use z3/SMT instead of TLA+
Comment linking /agentic-transpilers/
on “Formal Methods: Just Good Engineering Practice? (2024)”I'm looking to do something in this general area better than doctests. Looking for collaborators. http://adsharma.github.io/pysmt
Comment linking /pysmt
on “Pyret Programming Language”Thank you all for the many great answers! Definitely a lot to look at! Currently Appsmith (and/or) Lowdefy seem to fit best for me. In case you're interested, these are all the products/resources given so far: http://superset.apache.org https://adsharma.github.io/flattools-programs/ https://adsharma.github.io/fquery/ https://apex.oracle.com https://app.spanrr.com https://arctype.com https://baserow.io https://bubble…
Comment linking /fquery/
on “Ask HN: Best low-/no-code solution for simple web-based database frontends”I explore this topic in my blog post from a few months ago: https://adsharma.github.io/flattools-programs/ In short, django models are written using a very low level of abstraction. I much prefer dataclasses generated from a high level IDL. The blog post compares different IDLs and argues why flatbuffer IDL is more suitable. In order to express queries over such models: https://adsharma.github.io/fquery/
Comment linking /fquery/
on “Ask HN: Best low-/no-code solution for simple web-based database frontends”I'm looking into a python -> dart -> js approach. Emphasis on static type checking and small feature set that's easy to understand. https://github.com/adsharma/py2many/ Made a new release earlier today: https://adsharma.github.io/py2many0.2.1/
Comment linking /py2many0.2.1/
on “Pyodide: Python for the Browser”I think people focus much on syntax and not enough on semantics. After working on 2-3 iterations of similar languages (sexpressions, clojure enhanced with pipe operator), my take away is to define an API (not a new language) and support multiple languages on top of it. I picked python and the API is here: https://github.com/adsharma/fquery/ https://adsharma.github.io/fquery/ Like SQL, DDL and DML should be separated…
Comment linking /flattools-programs/
on “PathQuery, Google's Graph Query Language”Z3-solver is a popular backend for specifying properties about programs. Dafny, Viper, Boogie are all systems built on top of it. The issue is that much real world software is not written in these languages (or Haskell) Typescript and python are a lot more interesting. https://adsharma.github.io/pysmt/ The proposal is to have a programming language and a specification language both with a pythonic syntax living in o…
Comment linking /pysmt/
on “TLA+ is hard to learn (2018)”The weakness of these systems is not the query language or the planner. It's the lack of a fully developed storage engine that avoids vendor lock-in. Apache GraphAr (incubating) is a step in this direction. But it's an import/export format. Not primary storage. Unaware of this effort (roots in Chinese graph dbs), I wrote a competing proposal that's more aimed at graphdbs looking to disaggregate compute and storage.…
Comment linking /beating-the-CAP-theorem-for-graphs/
on “Ask HN: What's your experience with using graph databases for agentic use-cases?”> Many general purpose languages support type checking, but few support constraints and validation of data. We must write our own validation logic which often means validation happens haphazardly, if at all. Python with z3 and some AST magic can support constraint validation. In fact, type checking can be seen as a form of that. I have a fork of typpete, a z3 based type checker from 3 years ago that should still wor…
Comment linking /pysmt/
on “Show HN: Holos – Configure Kubernetes with CUE data structures instead of YAML”What does an ideal solution look like in your view? Do snapshot queries help, so you're protected from concurrent changes? With fquery ( https://adsharma.github.io/fquery/ ), the problem boils down to constructing a new query with additional where clauses. Because of the property that the shape of the query and the shape of the output are identical, nested queries fit naturally into the system, as opposed to GraphQL…
Comment linking /fquery/
on “Solving the double (quintuple) declaration Problem in GraphQL Applications”PGQ requires you to write using SQL and read using a graph query language. GQL is a standalone language that supports reads/writes. But much of the community is still using cypher. More on this here: https://adsharma.github.io/beating-the-CAP-theorem-for-graph...
Comment linking /beating-the-CAP-theorem-for-graphs/
on “We will no longer be actively supporting KuzuDB”If you must use Django, use it through an abstraction layer like this: https://adsharma.github.io/django-fquery/ Your models can be plain old python data classes, declaratively mapped to Django primitives.
Comment linking /django-fquery/
on “What I love about Django”So this thing is based on Kiwix, which is based on the ZIM file format. In the meanwhile, wikipedia ships wikidata, which uses RDF dumps (and probably 8x less compressed than it should be). https://www.wikidata.org/wiki/Wikidata:Database_download There is room for a third option leveraging commercial columnar database research. https://adsharma.github.io/duckdb-wikidata-compression/
Comment linking /duckdb-wikidata-compression/
on “Project Nomad – Knowledge That Never Goes Offline”18 blog posts and very limited mention of NUMA and HT? https://adsharma.github.io/more-performance-hints/
Comment linking /more-performance-hints/
on “Memory Subsystem Optimizations”