apologies, the names is a little tongue in cheek.
the goals of this is:
1. create an abstract syntax tree over the tree sitter trees for queries that work across language (function) @f matches functions in any supported language
2. create a smaller (in text) query language based on the semantics of css selectors e.g. in the 'c' language id#Validate ->
[((function_definition declarator: (function_declarator declarator: (identifier) @_n0)) @_root2 (#eq? @_n0 "Validate"))
((call_expression function: (identifier) @_n1) @_root3 (#eq? @_n1 "Validate"))]
3. provide some useful commands on top of this to allow humans (and llms) to be able to quickly learn about codebases from the cli
i made this for myself, just sharing it because i probably should
Nah, theres not a technical or business solution to this. Music is cultural and we'll develop new cultural technology to solve it. Vision + regulation would help things move a little faster but the pendulums swing is inevitable.
css applies attributes to objects via graph queries
the queries are tightly coupled to the tree. you must work hard to avoid scatter gun edits now. it doesn't make much sense to have attributes stores in a separate location to their use
it would be like assigning all of your instances attributes using decorators
I think what breaks first is team / org dependent but ime: alignment & quality standards
I found a mixture of shoehorning the vision into as many conversations as possible and occasional in person meetups (we die roughly yearly) helped with vision. I dont have measurements but my concern for teams decision making dropped a lot and disagreements in smaller discussion settings also dropped.
Standards dropping was secretly alignment too but more around why than what. I found building a culture of excellence helped e.g. "we're here to build software we're proud of, from the code to the experience, and you are the right people do it, so lets build something we're proud of.". You or who ever has to actually believe they are the people to so it though.
Im sure people have more concrete and technical examples.
As I've experienced getting older I've found it's more about the lack of available time and focus.
I don't have the hours of time a young person does and I don't have the focus, there are a lot of other thoughts, emotions and responsibilities competing for my attention.
Would love someone who's aware of the literature to throw their hat in the ring though.
I'm a senior engineer and serial technical co-founder with 15 years experience. I've started 6 companies, raised some monies and built teams of up to around 50 people. Looking for short intense projects to pay bills while I focus on building Eastbourne's Music scene!
1. create an abstract syntax tree over the tree sitter trees for queries that work across language (function) @f matches functions in any supported language
2. create a smaller (in text) query language based on the semantics of css selectors e.g. in the 'c' language id#Validate -> [((function_definition declarator: (function_declarator declarator: (identifier) @_n0)) @_root2 (#eq? @_n0 "Validate")) ((call_expression function: (identifier) @_n1) @_root3 (#eq? @_n1 "Validate"))]
3. provide some useful commands on top of this to allow humans (and llms) to be able to quickly learn about codebases from the cli
i made this for myself, just sharing it because i probably should
yes i used claude code for most of this