Tools are often objects that "exceed the average human's capabilities" in some respect or another but assigning the quality of intelligence to tool itself is like calling a hammer strong or a chisel brave. It maybe true in a metaphorical sense but it doesn't have any objective meaning.
I think we're still in the experimental phase of lots of novel types of social information exchange.
Building in public is very much an experimental form of communication. It's a new way to think and operate and it's not something with a strong set of conventions and norms. That means that you have to think much more about how you're communicating, not just what you want to say.
Building in community means sharing information with a specific set of people who have a shared perspective. Conventions and norms do exist and you have a good sense of how people will interpret and understand your words. This is the kind of context where it is easier to be more authentic and less performative.
I think that a good chunk of people who build in public whould say that they are actually building in community. They get the sense of a shared perspective and the community has established some its own conventions and norms. I don't think there's always a clear seperation between these two concepts.
As an interesting example of how these two concepts overlap is in the Zig community[0]. The community is decentralized - does that mean they are building in community AND in public?
Is ROI in this case a measure of comprehension? What about the enjoyment and playfulness of metaphor and expressive language - do these have a negative ROI if they aren't sufficiently terse?
How far do you take efficiency as a measure of communication quality?
Did Kevin have it right when he asks "why waste time say lot word when few word do trick?"[0]
> No matter how much well-intentioned user research these companies invest in, they'll never be able to produce software that fully meets the needs of individual users and culturally distant communities.
Domain experts being able to solve their own problems sounds is a worthwhile objective for software tools but innovation in this space has been surprisingly sparce.
I've been searching for other examples of end-user programmmable tools beyond spreadsheets for inspiration. Anyone have suggestions of some other places these kinds of "folk interfaces" show up?
> To comply with DNT, we pledge to delete user personal information such as IP addresses in server logs after no more than 10 days. We do this regardless of whether you set the DNT flag in your browser or not.
EthicalAds does not comply with the intent of a user who sends a DNT request. It's not obliged to, but it's a bit disingenuous to claim that the request has been honoured in some way.
> We need to stop admiring those smart enough to understand how the software works, and start making the software easier to understand in the first place.
Yes, I agree. But I think it does take a lot of design skill to achieve the latter. Making the complicated simple is not an easy task. Hoare described a similar problem like this[0]:
> There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies.
> The first method is far more difficult. It demands the same skill, devotion, insight, and even inspiration as the discovery of the simple physical laws which underlie the complex phenomena of nature.
> It's not what people truly wanted in the first place.
The transition towards "a nonstop amusement drip" has been gradual and effective but it doesn't mean that the current situation was what people always wanted from the start. This has been the evolutionary journey of companies in search of maximum profitability. It has never been exclusively about what people want, it's also about what maintains profitable engagement and eyeballs for advertisers.
There's a general sentiment that people don't like the addictive nature of social media (see other comments in this thread). Social media users have become boiled frogs as the heat has been turned up on monetizing attention. I think it's fair to say that we've not landed on the optimal solutions for social networking just yet.
IMHO the current social networking market has reached an evolutionary dead-end. The platforms are all converging on a "content stream" model or group chat. I think that there are plenty more opportunities for digital social networking that get closer to what people really want but these opportunities are hard to see. Functional fixedness[0] is the biggest barrier to imagining what comes next but more possibilities exist than these.
> The reality is that software is extremely expensive, especially polished software with a good user experience that's usable by non-experts.
I get your point here and I think this has been the case for so long that it seems like an immutable law by now. But, is it inevitable that software should be so expensive to produce?
How we write software today is largely based on ways of working and technical limitations that are not much different to what Fred Brooks wrote about in the Mythical Man Month. Brooks had some hope that programming languages would raise the level of abstraction we work at and that software design would shed much of its "accidental complexity".
Better programming languages could enable authors to work on problem solving rather than generating artefacts for machine computation.
The promise of better languages has been with us for a while but I'm not convinced that this avenue is as well explored as some believe it to be. The scope for these kinds of new abstractions isn't just drop in replacements for the programs you might write in C - it extends to other flavours of programming.
An example of progress here is how component libraries are used in web UI development. Mature component libraries require very little work to use and massively speed up development of "polished software".
Declarative end-user programming isn't a lucrative problem domain, but innovation in this space is still possible and could change the face of free software (both definitions) for everyone.
Progress like this could enable user communities to build, maintain and run their own platforms without the level of expense that currently prevents these kind digital commons from forming.
This is exactly why I think FOSS has become irrelevant for end-users. An open source client for a proprietary API only gives superficial freedoms and doesn't guarantee those freedoms will not be taken away.
The software landscape has changed so much since the conception of GPL and all it stood for. Back then, freedom was about expert users having autonomy over their own systems. These days, I think the real fight for freedom is about user communities and general end-users.
I think there is potential in the emerging field of community authored software. Community's coming together to build their own platforms is an ethos that I think has gained some traction and, if it builds more momentum, could become the next free software movement.
You don't often see such clear examples of where industrial design impacts the evolution of human practices.
It seems like the feedback loop works both ways - the available paddles inform paddling style and intended paddling style informs the design and manufacture of verities of paddles.
It would be interesting to explore where else these kinds of observable mutual feedback loops might occur.
I think the thing to remember here is that inputs should only be `type=number` where the semantic value is best represented with a numeric scale, not just where it is a number only field.
> A simple way of determining whether to use type=number is to consider whether it would make sense for the input control to have a spinbox interface (e.g. with "up" and "down" arrows). Getting a credit card number wrong by 1 in the last digit isn't a minor mistake, it's as wrong as getting every digit incorrect. So it would not make sense for the user to select a credit card number using "up" and "down" buttons.
I don't think browsers can infer the semantic intent enough for this to be a fixable problem without some distinction in syntax.
Text is definitely a more versatile, low-effort, high-value and ubiquitous medium that will never be beaten for human information exchange. It's perhaps not the best medium for all context but it is the best generic medium for interoperable information exchange (unix was right all along!).
Entertainment is often more enjoyable with rich sensory experiences and some amount of novelty. People with great imaginations are probably the folk who experience books that way but, for everyone else, rich media provides more entertainment value than text alone.
The Metaverse is entertainment. It might be great for parties, games and other virtual interactions/experiences but it's definitely more a medium for novelty and sensory excitement than for pure information exchange alone (obviously).