GUI Software Speedrun (Clean Slate%) - 1:25 [WR] [SUB 1:30 HYPE!!]
pretty good but room for improvement... suboptimal pixel line work at the end, was getting nervous because I was on such a good run
@neauoire yeah :) I might make a non-joke version of this video in the future, which actually stops to explain each step
@cancel I didn't know about frameRoundRect, where did you discover this?
@neauoire instant mac API search on hotkey
@neauoire won't always exactly match the THINK Pascal interfaces...
@cancel How do you type cmd-?
@neauoire it's command grave (backtick ` )
@cancel god damn this app's UX is awful
@neauoire it's a bit weird. there are other ones you could use instead :)
@cancel really interesting that the way to set icons was already like that a that time
@enricomonese you could do it other ways -- it could be automated by the compiler by setting a file to use as a resource template.
@cancel clearly spliced 😔 i would never had expected this kind of dishonesty from the gui software speedrun community
this makes me sad about modern computing. My girlfriend is learning python right now, and doing really well. But yesterday she mentioned that it's annoying that she doesn't know how to do any UI stuff, and neither how to package her python things into an Application with an icon etc (on OS X)... and I had to basically tell her those probably aren't going to be happening any time soon :(
Learning a Python UI toolkit may be possible, but I wouldn't even know which one. But app distribution on OS X is such a $#@*ing mess, it would require to learn XML for plists, how to navigate confusing Apple online docs, really understanding the command line, the OS X Keychain, the python interpreter...
OTOH here you show a tool that does everything right:
- provides the necessary tools to integrate with the rest of the system (= GUI components)
- IDE helps with beginner mistakes (auto-indent after every changed line? How is this not a feature in ANY IDE today?)
- one-click run and build into something equal to all other apps on the system
My theory right now is that what is needed is a language powerful enough to support simple APIs (but not too powerful for most users to learn), and a constant obsession with providing simple, essentially learning-free APIs for things. These things are not naturally occurring. Someone has to sit down and make them occur on purpose.
I think Reason's IDE has the autoindenting btw.
@neauoire @s_ol @cancel I'm wondering if it's going to turn out to be... 80s ideology started designing for profitability (superficially obvious-seeming but cripplingly shallow UX wins sales, and support contracts) rather than user empowerment, not caring that would lead them into hell along with everyone else. By the 00s users didn't even remember that empowerment was possible.
@faun @s_ol @cancel Part of me think that it must have been partly due to bad agents like you're pointing out, but I've been sifting through magazines of the 80s and 90s a lot lately, and one thing that I saw a lot is commercial products trying to dumb themselves down to make themselves more appealing, and it might have had the nefarious effect that customers trying to correspond.
I've seen countless ads that went like "ASSEMBLY IS TOO HARD FOR THE WORKING MAN, TRY BASIC"
@neauoire @faun @s_ol @cancel Jumping to the conclusion that people are afraid to code is disingenuous. Most likely these people have a need, and the best solution for them isn't to spend a lot of time learning to code. If an app that let's them wire together two pieces of software fills their need, that's a good thing.
@stephen @neauoire @faun @s_ol Excel and HyperCard tackle the problem from the perspective of, how can we provide tools for users to solve things within a certain paradigm. HyperCard has a real programming language in it and it features early on in the manual, not as an afterthought or escape hatch. Excel has formula functions and ranges as one of the basic building blocks, and you can also use VBA. They don't hide it.
@stephen @neauoire @faun @s_ol But these "no code" startups are like, "How can we erase or hide programming for the cases where people are using programming" and because that is their angle (instead of problem solving) all of the solutions are like these crummy flow control graph or "list of actions" things
It is true that many people's problems do not need to be solved by code, but it is also true that many of the problems that could be solved using code aren't because of accessibility problems.
I don't know how to argue the misanthropy away. For our sins, facebook will steal the presidency, legislate against AGI governance, and get us all mulched underfoot of the engines of a buggy program, and we are still complacent, we are still doing very little, I don't know how to argue that wouldn't be a kind of justice.
@neauoire Hahah. Why not just make a ThinkPascal-like IDE/shell for a new Nix os distro or something.
Then cloister the main dev team in a monastary far away from the people who think they need to immediately ruin it by hacking in support for Steam and Openoffice and shit.
If we want a game, we can play the games we make for ourselves, write our documents in raw datatypes, target open hardware, it's fast enough
@faun that's the spirit
The were some projects in the past about this for Linux.
One replicated every single feature in Visual Basic, but it was not free nor open source. You had to pay.
Another, based on Pascal, had its project leader absolutely refuse to work with a cross platform approach, it remained Linux-only way before Linux got popular. By the time the project got functional, everyone had already moved to the web.
Greed and pride are why we can't have nice things.
Also, philosophically, I feel like it kind of goes against the grain in terms of making lean and standalone software to stuff a web page inside a web browser inside an executable just to create simple GUIs. But that's just me.
> this makes me sad about modern computing. My girlfriend is learning python right now, and… yesterday she mentioned that it's annoying that she doesn't know how to [create a simple GUI app] and I had to basically tell her [that probably won't] be happening any time soon
I wonder if part of the problem here is how much we (including me!) have embraced CLI apps. A "CLI software speedrun" with today's tech would look about like the video posted above (at least for many langs)
Creating a standalone executable that prints "hello world" to stdout that you can guarantee copying to another Linux AMD64 computer and still work requires a little bit of effort, due to libc. (Unless your stuff is already set up to use musl or something.)
I don't know how you'd do it for scripting languages and have it resemble a speedrun :P
As for GUI on Linux... I think people's expectation that "of course it's arduous and fragile" means it stays that way.
> Creating a standalone executable that prints "hello world" to stdout that you can guarantee copying to another Linux AMD64 computer
If you're willing to relax *guarantee* to "almost guarantee", I think most languages that produce static binaries would do ok.
If you don't, it'd be a lot harder. But, at least in Rust (my primary language these days), using musl is just a `rustup target add x86_64-unknown-linux-musl` command away – still speedrun-compatible!
> I don't know how you'd do it [build a CLI app, including all dependencies] for scripting languages and have it resemble a speedrun
Well, if you're willing to assume that the target computer has your language installed, it's easy :D
I know that's a glib answer, but if you're writing perl or python it's not a bad bet.
(and, re: the use case of "having an app that looks just like the ones *really* installed on my OS, well, that doesn't require compatibility elsewhere)
Merveilles is a community project aimed at the establishment of new ways of speaking, seeing and organizing information — A culture that seeks augmentation through the arts of engineering and design. A warm welcome to any like-minded people who feel these ideals resonate with them.