Created
October 14, 2019 11:20
-
-
Save leonardpauli/7118235a88221aa57ad8fb70923dabd6 to your computer and use it in GitHub Desktop.
own.rimstart.plan.milestones.as-message-to-markus.14oct2019.rim
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# plan.milestones | |
' rimstart | |
created by Leonard Pauli, 14 oct 2019 | |
' as-message-to-markus.14oct2019 | |
Hi Markus! | |
I'm been spending most of my time on the course + studying math. Started listening the the futureofcoding podcast, thanks for the recommendation! (I suppose you've seen their slack as well? :) A bunch of people there!) | |
This last weekend, I decided to go full in with the project again; restarted from a new angle, with the declarative graph data structure to website exporter first, then later joining up with the language part. | |
I might have found a way to summarise the vision: "a new data/logic medium to be as ubiquitous as electricity, used by everyone, trivial to accomplish everyday tasks - 100x faster to accomplish complex goals as any existing method/programming language" | |
Doesn't say anything about the implementation (eg. executable + normalised graph of all knowlege and processes), nor the interface (multiple isomorphic in functionality, but better suited for different tasts, eg. textual (code or natural language), or visual (mindmapping/excel/notetaking/outlining/node 'n noodles/structural editor/etc)). | |
You can find my new revised plan here: (here) | |
# milestones (as goals) | |
goal 1: "online visual editor of data structure build with declarative data structure" | |
- static | |
- extract dynamic parts (allowing for ssr) | |
- simple expressions + external logic | |
- simple database interface locally | |
- database remote sync | |
- simple permissions | |
- make graph editor using data structure format | |
- beta publish editor online | |
- use editor to edit editor | |
- (use git to version exported json of editor for now, (even though history is stored in db?)) | |
goal 2: "isomorphic textual interface / programming language in and outside online editor" | |
- use editor to create textual representation | |
- create parser of textual representation | |
- create diffing algo + language server allowing isomorphic text/visual interface | |
- create vscode extension | |
- tmp integrate ms monaco into online editor, allowing switching between textual/visual on the fly | |
- (store exported textual representation instead of json data structure in git) | |
goal 3: "get it good enough for creating most apps by improving it while building own projects in it" | |
- declarative resolve | |
- types | |
- structural editor | |
- type views in editor | |
- logic to allow infinitely large projects | |
- custom version control logic (possibly with possibility to sync with git) | |
// got to replan around here, might want to get involved with the community more around here | |
goal 4: "performance / making it native" | |
- migrate dom/website exporter to editor | |
- wasm logic exporter | |
- export editor server part (mostly db logic) with wasm | |
- use wasm exporter for dom/website logic (if actually beneficial?) + create wasm-js-dom glue package | |
- (look into making exporter for iOS through either swift or llvm directly?) | |
- (if so, export editor as iOS app + possibly native mac app) | |
goal 5: "get backend beta-prime-time ready" | |
- ensure db scalability (across cores, across ram, across volumes, across cpu nodes) | |
- ensure authentication/authorisation model | |
- declarative logic uploading + safe execution (with reactive cached views) | |
// got to replan around here, the following steps are just an initial thought | |
extra: "compatibility, ease of integration" | |
- simple (redis, postgres) connect node type | |
- simple (rest, graphql) (connect, export) node type | |
- simple (react, vue, swift) (component, + app) exporter/importer (semi-isomorphic?) | |
goal 6: "getting public, phase 1, prepare scaling of people involvement" | |
- publish own apps made with editor (many being subsets of the full editor, eg. mindmapping, dev-tools like simple vue -> react exporter, graphql api generator, application architecture tool, etc) | |
- prepare editor for open-source contributions | |
- open up for private beta access | |
- (possibly do consultant work using editor, while improving editor) | |
goal 7: "getting public, phase 2, scale inside people involvement" | |
- open up for private open-source contributions | |
- (possibly try growing a consultant company (or company for a custom project), that is people + resource positive, allowing more people to work on the editor) | |
- (possibly try vc found custom companies that's using the editor, while improving editor) | |
- ... | |
goal 8: "getting public, phase 3, scale external people involvement" | |
- slowly open up public private beta access | |
- turn (networking, spread the word) to high | |
goal 9: "getting public, phase 4, public online editor + public (non-commercial?) open-source compiler" | |
// before this, managed cloud hosting, integrations etc? | |
- ... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment