Programmer Tooling Beyond Plain Text
joelburget.com
Programmer Tooling Beyond Plain Text
1–10 of 75 posts
Re: Programmer Tooling Beyond Plain Text
#2[1] https://pcmonk.wordpress.com/2014/04/01/why-dont-we-have-a-g...
If you had a really good, intuitive tree editor, I would imagine it would be easily adaptable to all kinds of interfaces and scenarios. Mobile, web, VR...
Re: Programmer Tooling Beyond Plain Text
#3Most programmers have violent allergic reactions to the idea of storing code in anything but raw text, but would have similarly violent allergic reactions to the idea of replacing their database with a series of text files and a merge program. We spend huge amounts of effort on this raw text, restructuring and annotating it in IDEs, trying to retroactively guess at the intent of changes in VCSs, guessing at changes in incremental compilers, parsing errors messages out of console logs to find the location in the editor etc. All of the tools we use day to day are in constant communication with each other but they are limited to a single terrible API.
The counter-argument is that at least they all use the same terrible API. Somehow I don't find that very comforting.
Re: Programmer Tooling Beyond Plain Text
#4I wrote a compiler, editor, grep, all tools that handle binary graphics.
Re: Programmer Tooling Beyond Plain Text
#5Re: Programmer Tooling Beyond Plain Text
#6I've long felt that a proper structured editor would work somewhat like a tree editor[1]. Code is trees, right? [1] https://pcmonk.wordpress.com/2014/04/01/why-dont-we-have-a-g... If you had a really good, intuitive tree editor, I would imagine it would be easily adaptable to all kinds of interfaces and scenarios. Mobile, web, VR...
http://davewiner.userland.com/historyOfFrontier
More context: http://scripting.com/davenet/
A lot of the infrastructure of the current web sprung out of Dave Winer's experiments with Frontier. From RSS/OPML/podcasts to weblogs to RPC-over-HTTP, Dave and his employees at UserLand (which included Brent Simmons and IIRC Aaron Swartz) were pioneers that contributed a lot to the Internet we currently live in.
Re: Programmer Tooling Beyond Plain Text
#7Re: Programmer Tooling Beyond Plain Text
#8I've been hearing this sort of thing for years (decades?), but I have yet to see someone put a toolchain together that works well using these concepts. It would be interesting to see someone try it instead of just talking about how it would be a good thing.
Pretty much anything that doesn't require years of training as a programmer uses a mixture of structured editing and small chunks of raw text. If you look at it by sheer number of users, structured tools are winning and have been for a long time.
Re: Programmer Tooling Beyond Plain Text
#9Re: Programmer Tooling Beyond Plain Text
#10https://i.imgur.com/wvcduDk.png
(in the picture above "string" is selected, and "find" is slightly highlighted because its on the same level. this helps visualize the tree and plan your movements)
It actually started as my final project during undergrad. Here's my 78-page thesis on it (unfortunately Portuguese, but has English pictures):
https://projetos.inf.ufsc.br/arquivos_projetos/projeto_1398/...
Structured editing is much, much, MUCH better suited for programming than plain text. Syntax preservation and source-display separation are game changers, and they are not the only benefits.
Unfortunately it has a Vim-level difficulty curve and people don't realize how much time they currently waste on syntax mucking. This makes marketing kinda hard, even with a fully operational and well polished implementation.
Fun fact: structured editing also works with non-programming structured text, like JSON, HTML and CSS!