From 2010 but still holds up quite well š
blogs.perl.org/users/ovid/2010/08/what-to-know-before-debating-type-systems.html
I'm enjoying the introduction to the book Language and the Rise of the Algorithm by Jeffey Binder, especially in the context of watching Amy Ko's "Searching for Justice in Programming Language Design" linked above. Her approach seems to have a lot more in common with Leibniz et al than I was expecting, in terms of addressing the political and social contexts of symbols.
It isn't open access, but you can download it from a shadow library if you want.
Thank you for sharing her talk! It is something I needed to hear this morning - grateful for work that engages with the flawed social contexts of CS in a nuanced and sympathetic way.
Binder's STS project has got a cogent description of Leibniz's notations as an early upstream of blackboard cultures, like maths and CS (i.e. the refuge of constructive mathematics).
This algebraic sense of algorithm [...] placed the idea in an intimate relation to the development of new symbolic notations.
Another useful downstream of STS (by way of Susan Leigh Star's reading of symbolic notations as boundary objects) might be Ribes' "The logic of domains". With his lens, I'd read Ko's description of CS as having the useful domain-like characteristic of normalizing / abstracting problems, but also an unfortunate tendency of neutralizing / colonizing other domains.
Thanks @Jasmine Otto, very grateful for STS perspectives as it's all pretty new to me. I did work with an STS scholar Annapurna Mamidipudi on a previous project and every conversation blew my mind! From the perspective of that project (which was about ancient weaving) Binder's book looks very Euro-centric, and seems to ignore the use of algorithms in the much longer history of craft.
This is part of my ongoing obsession with cool projection stuff, here's a paper from before I was born on some fascinating tracking and interaction methods!
That variable-frequency thing is clever. In a sense itās similar to how old-school light pens worked: a light sensor can determine its position using a position-varying signal.
But: I canāt think of a situation where youād be better off with this system than with Dynamicland-style fiducial tracking, given that this requires custom projectors (eep!) and active (wired or battery-powered) targets (yuck!).
Wanna know a really easy way to make a slack message more accessible? If it includes a link, format the link to read as text, not just share the raw URL.
This can help reduce cognitive load, provide the opportunity to add some context for the link (which most folks here do anyway) and prevent a screen reader or similar technology from reading out a url as āH T T P ā¦ā
I've updated the Member Handbook to specifically recommend this practice.
If you ever see me doing something inaccessible, I want to know! Can't always promise I can do anything about it, but I can promise that I care.
I updated my most recent post here, slack doesn't seem to let me edit older ones
Anyone attending SPLASH, or who happens to find themselves in the Lisbon area on October 25th, you should come to the Ink & Switch unconference. Sessions may cover any of the following: programmable ink, local-first, tools for thought, malleable software, or whatever weird programming session you feel like hosting!
Quantitative Program Reasoning with Graded Modal Types: Most programming languages treat data as infinitely copiable, arbitrarily discardable, and universally unconstrained. However, this overly abstract view is naĆÆve and can lead to software errors. For example, some data encapsulates resources subject to protocols (e.g., file and device handles, channels); some data has confidentiality requirements and thus should not be copied or communicated
arbitrarily. Dually, some programs have non-functional properties (e.g., execution time) dependenton data (e.g., on its size). Thus, the reality is that some data acts as a resource, subject to constraints. In this paper we present Granule, a typed functional language that embeds a notion of data as a resource into the type system in a way that can be specialised to different resource and dataflow properties. Granuleās type system combines linear types, indexed types (lightweight dependent types), and graded modal types to enable novel quantitative reasoning.
Building a Better Web Browser - James Mickens
James Mickens is describing the Atlantis Browser which is a very minimal high security & performant browser which forces each application to ship its own runtime (including languages, renderer, etc) with ideas on backwards compatibility with existing (js,html,css) web applications.
Im reminded by alan kay talking about the early browsers (unknown reference) basically what if applications shipped their runtimes. I kind of thought of a more general & inspectable html at the time but i think this is very interesting too
I should have probably provided an abstract to show its not just james mickens doing straight standup (which I love) š
š An Interactive Intro to CRDTs | jakelazaroff.com
CRDTs don't have to be all academic papers and math jargon. Learn what CRDTs are and how they work through interactive visualizations and code samples.
sorry, just joined last night and don't mean to be a prick but i've just read the handbook and wanted to let you know that you might want to re-format your link š
also, great article. thanks for the share! reminds me of drifting and space, they are working on making it easier to adopt offline-first architectures
Thinking about designing a new programming language or related tool? Yes? You've come to the right Slack!
Would you like to get paid for that work? Well, Evan has 10 years of wisdom for you.
"oh.. it's like a dance party", if you make music live coding stuff then you can get paid by doing actual dance parties š
Very very interesting stuff. Its so nice to see "smart" people from the "nerd" corner putting their brain into matters that relate more closely to society.
Iād be interested to know what folks think of the āeditorā model and how it relates to the future of coding.
That model where you start by licensing a really good editor (or lets just say ātoolingā) for your systemā¦I think this is intriguing because it really strongly links what are usually seen as separate, editor and ālanguageā ā leaning system over language
In general I am pro-free software, and make money from research grants, workshops and performances, so am not interested in charging for a premium editor.
The microsoft landgrab with the vs code editor is really worrying for a number of reasons, and might well make selling licenses for a premium editor a non-starter. I don't know how it works with kotlin though
I'm also generally with @Amy Ko that the future of coding hopefully doesn't involve capitalism
my tl;dr on vs code is that it is a pretty solid, but inaccessible text editor.
it takes as assumed text
But we can think about the quality of relationships with other people while working on software. The likes of Evan mentions with "DevRel" in his talk.
Well the particular brand of capitalism that we have means that we are living beyond our means, are very probably going to go beyond a global 1.5C temperature increase, which could ultimately mean the breakdown of civilisation
I have something in my notebook , its a term - sorry no scientific or other 3rd party relation - I call it "size of an argument".
@Alex McLean have you seen @Devine Lu Linvega and Rekās talk, Software Doldrums? or ran into the permacomputing crowd?
I think climate change and sustainability, fo rthe individual, for society and for society in relationship to nature are important things. We can use words and hope someone other can relate to them. So yes we are facing the metacrisis or moloch ( failure of coordination)
@Eli Mellen I am a keen follower of their work, but didn't know that talk, will have a watch thanks!
Devine also spoke on similar themes at Strange Loop this year. I think thatāll vibe with ya
It is difficult to speak about a paradigm which doesn't yet exist. But going beyond capitalism is definetly a paradigmshift.
Anomie, a word for your consideration. The dictionary of cyborg anthropology defines anomie, in part, with this anecdote: In everyday life, the
Bret Victor's Dynamic land seems to go into that direction: still computing but different kinds of relationships. There are lots of other projects but the culture and the paradigms shift slowly š
Yes dynamicland feels like it's trying to be a kind of holiday from capitalism
In my opinion itās quite close what Seymour papert envisioned and what today is āmaker space cultureā
On a collapse computing tip, here at TTT Dave is currently working on making semiconductors from discarded mine waste
@Eli Mellen Nice thoughts! In the earlier days of the live coding community (early 2000's), there was a feeling against the idea of an audience. At least, the 'powerbooks unplugged' audience would reject the stage and sit within the audience, writing code to make music for each other and the people around them, but rejecting the separation between producers and consumers. You can extend the idea to say that programmers should reject the idea of having users.
Andreas S Maybe Graeber and Wengrow's "Dawn of Everything" is useful here.. Describing past advanced civilisations as having different structures. Then we can think about shifting to paradigms that have worked better before.. (but not necessarily a more 'primitive' one)
This was really nice to watch, I mainly just feeling seen in that yea this shit is really hard.
@Alex McLean I appreciate the spirit but as I referenced āparadigm shiftā I also wanted to reference the associated book: the structure of scientific revolutions - Kuhn. In which he reveals that if people become to invested in a paradigm - even scientists- they can not change. So you basically have to wait for them to die.
So itās sadly not as simple as: oh look there is a blueprint how to make thinks better, now ~just~ let us make things better.
That said I think meta modernism and related efforts are on their ways as discussed with Konrad Hinsen before.
So we just have to wait for them to infield and hope we donāt destroy ourselves before that :)
Andreas S Heh fair enough. I think it's possible for older generations to make space for and support the next generation though. Sadly they often end up fighting against them.. as former radicals who got to the top by fighting, and rather than change their behaviour, continue fighting by punching down
I'm interested in the paradigm of Andean Ayllu structures which are still active today, and interestingly for the future of code, present in the knot-based digital databases of pre-Inka Khipu.
Ah like indigenous knowledge? Yes they knew and know (hence itās ~still~ sustainable , they even can sustain their knowledge today) how to sustain knowledge.
Sand Talk by Tyson yunkaporta made a positive impression on me in that context.
I enjoyed the talk. But I'll be honest and say I'm not worried about being "Jeffed" and I don't think others should be. Honestly, I find that worry a bit misplaced.
Datomic is mentioned and it definitely didn't get jeffed. Nor did dark, or anything else I can think of that is using hosting to fund language development. (I know datomic is closed source, but no datalog database has been jeffed (sadly))
But even if you do get jeffed, that isn't death. The companies that have changed license because of AWS taking their open source work are massive companies still. In fact, it is their relicense because of the worry about jeffing that seems to be causing their long term issues.
I agree Jimmy Miller -- I think there may be a disconnect around getting jeffed. Or like 2 flavors of it, the one described in the talk and then what I anticipated him to talk about was when some big company sort of buys up a dev behind a project and how that can either disappear, or dramatically change the nature of the project
Has anyone else been watching Dusk OS dev take place? I subscribe to the git commits in my RSS reader and watching the progress made on this project in real time is a pretty wild experience.
I think some folks around here may find the āalmost Cā compiler implemented in forth interesting.
I'm on the mailing list, but hadn't thought of following sr.ht/~vdupras/duskos/feed.rss. I'll try it š
Oh yeah! I've been on the mailing list since before it existed, it's super super cool. Have you tried to run it yet? It's suprisingly easy!
Yeah! Itās one of my favorite forths alongside UF for uxn and RetroForth, which is like āwhat if colorforth and joy but so smolā
colorforth is sick, I need to write more of it! It's such a cool idea to use that extra modality
I appreciate that the author of this work agrees with me about FORTH:
Forth is hard to read. Maybe you can create abstractions to make it easier to read, but itās going to cost you in terms of simplicity and at some point it becomes self-defeating: maybe the language youāre after isnāt Forth.
I think itās inherent to Forth, reading it simply requires a much higher cognitive load because you have to hold a lot more information into your head as you read along. Itās exhausting for the mind (but you get better at it after a while). It is also slower. Accept it or youāre going to have a bad time.
(FWIW, I do find this work to be compelling in the context of its intended use ā maintaining use of electronics after widespread economic collapse.)
@Alex McLean for a small side road into music representation -- here's a wonderful insta account to follow; linking one recent example here: musicriyaaz account focusing on on a unique music representation for voice
[October 8th, 2023 10:47 AM] alex952: <@UCUSW7WVD> it's been a while.. but working on payment processing was mostly writing c code to pre-written specs but there was some room for finding creative solutions to problems.. A big part of making music for me is making new representations for music, which is really hard and is definitely some of the most interesting and technically challenging work I've done in my career. Actually making live music by live coding does feel very different though in a number of ways.. Being fully absorbed in the sonic output of your code while changing it, with a room full of people are dancing to it, is just a lovely time. It does seem like a very different activity to systems programming, but someone has to program the live coding system in the first place, and building and using systems happens in the same community, with everyone coding in some way.. like with dynamicland, things can get interesting when you break down the barriers between systems programming and live interaction.
I love it! It really helps me hear the vocal articulations.
On the Indian music road I'm a big fan of Konnakol, which I think is really computational despite not being written down.. or maybe because it's not written down - to remember and recite a piece you have to generate it from rules.
@Arvind Thyagarajan this notation reminds me of the incredible Din is Noise software dinisnoise.org/?what=screenshots