<https://alarmingdevelopment.org/?p=1245>. New pos...
# thinking-together
s
👀 1
👍 2
❤️ 4
j
Perhaps the referenced book could be considered a "social psychology" of Kuhn's paradigms..?
I like the 'stages of circle development' - I see these processes happening around me all the time. Articulating them like this for others to internalise suggests that these processes can thereafter be intentionally planned, amplified and even subverted and short-circuited.
@stevekrouse is this group for you an intervention towards the 'formation' stage?
s
That's a good question. I don't know where this community would fit into that model...
s
We're in the formation stage, no? This forum is a 'magnet place' 😄
w
@jarm I do see little circles all the time. Ruby on Rails is one big one that I observed.
e
i think we have to first look at the assertion that we are in a Dark Age of programming. I would have to agree. Firstly, a dark age is all about allegiance to entrenched interests that are holding back progress and stifling advances. Galileo vs. the Catholic Church for example. We do have a lot of suppression going on. The major firms are propping up the existing mess (most notably CSS/JS/HTML) rather than demolishing it and building something that actually makes sense. And academia is off the in the clouds publishing thousands of journal articles a year that are only read by each other and have near zero impact on the practitioners. So definitely things are ripe for a breakthrough. Where is the Cosimo De Medici to start it off though? Never underestimate the spark from a wealthy man with taste and vision.
❤️ 3
g
I am not yet convinced the CSS/JS/HTML is bad and that there is something else that "makes sense". CSS and HTML are trying to solve something non-trivial which is they are taking a 1D stream of info and trying to make it fit any type of display from a 320x480 iPhone 3 to a 5000x4000 display. I know of no other system trying to solve that problem. I'm not saying a better one couldn't be created but I think maybe people who think it's a simple problem because they use some other UI framework that makes them productive may not have actually considered the full problem being solved? JS has it's issues but if you just consider it a compiler target then you can ignore it the same way I generally ignore that all my other code is translated into x86. I know some people are looking forward to WebAssembly and hope to just render their own UIs as pixels on a canvas. I probably used to be one of those people having come from games but now I realize that having everything be in HTML enables so many other uses cases from ad blocking to translation plugins to password managers that don't need any cooperation from the sites themselves. Something what wouldn't work if everything was a custom solution drawn in pixels. I'm also not convinced yet that programming can be made all that much easier. I believe it can be made incrementally easier but I believe, at least at the moment, that it's just actually hard. Any non trivial piece of software has 1000s of decisions that need to be made and they aren't made easily and they form complex interactions. Solving all of them is just plain hard, not because programming is hard but because the problems themselves are hard. Maybe hard is the wrong word. There's lots of work to be done and I'm not yet convinced that work can be abstracted away into simple. If all I want to do is make commercially viable competitive Todo App I still have 1000s of decisions to make. How large can a todo be? Are Todos just text or are they rich text? Can the user embed media? Pictures, Video? Audio? Documents? PDFs? How is this media stored? Do need to track storage so I can charge for it? How do I make sure people don't just use it as a dumping ground for file sharing? Do todos have revisions? Can I view the revisions? Do the media have revisions? Can I view each revision of media? Can Todos be shared? If I share it with someone can they share it with someone else? Can I revoke the sharing? Can they copy the Todo to their own Todo list? Do I need groups so I can auto share all my Todos with my co-workers but not with the general public? Do I need per group admin settings so some admin can set group policies? Can their be more than one admin? Can any admin add more admins or are there different kinds of responsibilities? Can todos be deleted permanently? Are there any legal responsibilities of todo deletion/retention/right-to-be-forgotten. Can you make your Todos publically viewable? Do todos have tags? Titles? Start Times? End Times? Colors? Categories? Can I assign Todos to people? Can they reassign them? If I get assigned a Todo can I refuse to accept? Can an admin reassign a set of todos to someone else (person leaves, their todos need to be give to others). Does a customer enquiry generate a Todo? Do todos have multiple levels of completion, person A claims it's done, person B verifies it's done. I doubt that's actually 1% of the things that need to be decided and implemented and I guess I don't yet see how to make that so simple anyone can do it easily.
s
@gman - that is an excellent list of decisions - and all essential. These kinds of questions will not disappear. What we could discuss is how much code is required to implement these decisions? How much help will the system provide to verify and simulate these choices, so you can see the interactions? These decisions still seem a lot higher level than the code we write day to day. What would it take to be able to program directly in the high level concepts and decisions you list above?
e
Proramming can indeed be made a lot easier. About 10x by my estimation. Firstly, to address your point about is the current JS/HTML/CSS stack bad? yes, it is very bad. At no prior point in history has a programming language file format evolved where 3 distinct languages would be present in the same project, each of which has a different syntax, even to the absurd degree of not even having comments be the same across the languages. Why can CSS draw, but has not IF or arithmetic, but JS has arithmetic and IF, but cannot draw? That is pretty absurd. A single language that does what all 3 of those do, with even better layout methodologies, is easy enough to imagine. Then fix the myriad defects of JS, add protected arithmetic, a graph database, and client/server programming to boot, you have Beads. I have tested it against a minesweeper program done in JS, and it is half the length, and easier to read, and device-adaptive, something that CSS is only partially able to achieve. JS is merely an uncredited clone of ActionScript 2. There is no reason to stop at JS and call it a day. Large JS code bases are a nightmare to maintain, especially if the authors use some of the tricker features. Of course people are good at adapting to bad tools, people have built lots of things in COBOL, and Java (the COBOL of our time), and life goes on, but to accept that as adequate is to waste tens of millions of man-hours per year.
s
Also the 100s of element types in HTML - how many are really needed for a composable layout system? I understand the history is it growing from a document publishing system to an app and UI layout platform, but the web world has generally evolved without clear goals or overarching design principles.