You are viewing archived messages.
Go here to search the history.

Andreas S. 2021-10-04 07:49:40

I post the whole text here to read: “The modern operating system only implemented 2 metaphors for builders to extend: the file and the application.

What if they also implemented “event”, “place”, “person”, “feed” abstractly: letting tools that the user invites into their life collaboratively extend those core connected metaphors as well?

My operating system should understand that “Messenger” is a medium by which I “send” “messages” to “people” and that would allow it to join messages to a person across all mediums.

Instead every “application” reinvents the same metaphors over and over in incompatible ways. The user doesn’t want applications, they want extensions.

An “application” invents metaphors to manipulate, whereas an “extension” extends them. 9/10 apps I use should be extensions to metaphors the operating system provides.

Maybe builders and tools should be able to present extendable metaphors to the operating system. This is an interesting idea Web3 is doing. NFTs are not in the ethereum spec, they were implemented later by people but then shared — the ERC721 token standard is a “metaphor”.

But honestly, I’m not as interested in this yet. Common, open, shared metaphors for “person”, “place”, “event”, “message”, and “relationship” would move us so far forward before even considering the long tail of remaining metaphors.

I’d love to see @Apple and @Microsoft build these metaphors into their products. Consider iOS 15’s focus modes, it’s great I can own & control my digital experience by writing rules about who can reach me when I’m in “work mode”, but those rules don’t work.

They don’t work because the iPhone, the smartest device in the world, doesn’t comprehend that a phone number and a SnapChat account could possibly represent the same person. Contacts isn’t an application, it’s a metaphor that other tools and services need to extend.

The water is muddy with Apple because they will always want their first party experiences to perform better than third party ones because that’s how they sell devices. That’s sad.

Your operating system should be incentivized to be the layer of metaphors, and then apps and extensions arrive to make those metaphors useful and bring them to life.

I mentioned Web3 earlier, that’s not the solution here. Web3 implements some fascinating metaphors around identity, governance, and currency; but, the solutions here need to be faster, more private, and be more customizable.

Or maybe Web3 is a movement that encompasses building common metaphors regardless of implementation — and blockchain is just the first platform of many that will be used to that end. That’s a fascinating prospect.

In the end, though, the point I want to convey is that applications should collaboratively extend common metaphors to enrich my life, not incompatibly recreate the wheel over and over and over. “ https://twitter.com/adamtowerz/status/1443505907208392707

Andreas S. 2021-10-04 07:52:25

“Or maybe Web3 is a movement that encompasses building common metaphors regardless of implementation — and blockchain is just the first platform of many that will be used to that end. That’s a fascinating prospect. “ ☺

Andreas S. 2021-10-04 08:19:52

For everyone looking for an practical entry into web3 I can highly recommend this 8 week course: https://kernel.community/en/

Andreas S. 2021-10-04 08:24:17

Twitters take at web3 or these metaphors is blue sky and Kei kreutler has this nice piece about “inventories not identities” https://twitter.com/keikreutler/status/1443894493057519628?s=21

🐦 kei 🗝️: i'll be part of the first bluesky twitter event @bluesky

the topic is decentralized identity, and i'll be sharing thoughts from my essay "inventories, not identities" on the cultural possibilities collective, pseudonymous, & cross-platform accounts create https://blog.gnosis.pm/inventories-not-identities-7da9a4ec5a3e

Denny Vrandečić 2021-10-04 15:38:37

Modern OSes like Android and iOS do that, no? Contacts, events, messages, phone call, location and much more are OS level concepts, or am I misunderstanding?

Andreas S. 2021-10-04 18:03:03

Hi 👋 Denny Vrandečić cleaning up misunderstandings is not that simple on that level. For some context did you read kei piece on : inventories not identities?

Denny Vrandečić 2021-10-04 18:48:27

I had read it a few months ago, and now looked through it again, yes.

Andreas S. 2021-10-04 19:14:47

Now that you mention it there seems to be a kind of grumpy critique about how certain tech companies handle/use their monopiies in this" The water is muddy with Apple because they will always want their first party experiences to perform better than third party ones because that’s how they sell devices. That’s sad.

Your operating system should be incentivized to be the layer of metaphors, and then apps and extensions arrive to make those metaphors useful and bring them to life." would you agree?

Denny Vrandečić 2021-10-04 19:26:20

yes, agree with that. Modern OSes should be that, in addition to their traditional task

David Brooks 2021-10-07 14:47:19

Is anyone here familiar with https://en.wikipedia.org/wiki/Javelin_Software ? I'm interested in the idea of "next-gen spreadsheets" and this came up a number of times in my research. I like the idea of periodicity of data.

Daniel Garcia 2021-10-07 19:34:10

🐦 GitHub Next: Calling all hybrids! The Developer Experience team at @GitHubNext prototypes the future of development. From creative tools, to collaboration, to data and Copilot — we build what we imagine! Bring your frontend chops + all your other skills to bear. https://boards.greenhouse.io/github/jobs/3534593

Kartik Agaram 2021-10-09 16:58:49

I somehow missed https://www.hedycode.com until now, an environment that tries to teach programming over multiple levels the way we teach reading or math over multiple levels. Have others seen it or played with it?

Ivan Reese 2021-10-09 19:14:54

I've seen it before, yes, but didn't play with it. Seems like this is well aligned with the anti-goals we all have (ie: current programming suuuuucks)

Kartik Agaram 2021-10-09 20:03:48

It's actually an interesting complementary take. Reading between the lines, it's not current programming (they're still moving towards python) that sucks, but just the way we think about what programming is (as evidenced by how we teach it).

For example, is it possible (the best of) current programming is fine if only we did a better job teaching newcomers to visually chunk what they see on screen? (And refactoring current codebases into better chunks. And providing codebase-specific curricula to show how to chunk domain-specific patterns. Etc.)

Cole Lawrence 2021-10-10 02:07:23

Thanks for sharing Kartik Agaram. I watched the whole little video from Felienne, and I loved the ideas! There’s one part in the video at 17m22s where Felienne demonstrates an issue introduced by lack of syntax:

color is blue

print my favorite color is color

This was such a cool example! Because, yes the syntax is too limited at this level, and the computer gets confused. But, that mistake is the learning process which then justifies why you have to use single quote chars to separate variables and text!

Shalabh 2021-10-10 05:27:44

I like Felienne's talks and recently also bought her book: https://www.felienne.com/book. I like that she goes into the cognitive aspects and various source of confusion and friction. The thought experiments useful here could be:

  • Would these problems still arise in <your programming system here>?
  • Does <your programming system> make some chapters in the book less important (or obsolete)?

🔗 Book

Ivan Reese 2021-10-10 04:51:31

Polytope is a code editor (work in progress!) that enables you to embed domain-specific editors into a traditional text-based code editor. Actually that's only half of the story — Polytope doesn't draw a distinction between text-based code editors and domain-specific editors, they are all just editors.

Nice shout out to our community (and many other great references) at the bottom of the page, too.

https://elliot.website/editor/

Ivan Reese 2021-10-10 20:29:23

[I've had this on my backlog for a while. Don't think it's been posted here yet.]

The DeepUI guy is back with a new prototype: Automated Vector Drawing

The tool seems to have a 3-pane workspace. On the right is a live-updating preview of the artwork you create. On the top left is a workspace for drawing vector graphics, with lots of extra widgets and annotations and such for manipulating the graphics you draw. On the bottom left is a node-and-wire editor, where (as far as I can tell) each vector graphic element you create the top left pane gets a corresponding node, exposing some programmatic attributes for that element. There's also a left sidebar with various drawing tools and a list of common functions (measurements, data type conversions, etc). An interesting idea seems to be that the vector graphic you construct in the top left is actually a "function", and you can effectively call other functions inside the definition of a new function by nesting them. This gives you some "step and repeat"-like behaviour as a natural consequence.

Putting on my "visual programming critic" hat for a sec, this looks superficially like Toby Schachman's Cuttle, but with a GUI that seems heavily inspired by 3D / compositing apps like Blender, Houdini, or something from Autodesk. The video has no link to a website, no way to follow the progress of the project. I tracked this guy down on LinkedIn a few years back, and at the time he said he had no plans to keep working on DeepUI stuff, thinking instead that something like Enso was a more promising direction for visual programming. In any event, I'm really glad he's back and made this video, even if nothing else ever comes of it. I went frame-by-frame through parts of this video. There's some interesting thinking on display here.

https://www.youtube.com/watch?v=7SOv9zntnMY