sucks
Cassius
sucks | Cassius | |
---|---|---|
3 | 5 | |
254 | 90 | |
- | - | |
10.0 | 0.0 | |
almost 4 years ago | about 1 year ago | |
Python | Racket | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sucks
-
Ladybird: A new cross-platform browser project
This is correct, and it's why most open-source software will never have much in the way of users:
> They're written from the perspective of the developers
And I get it. A few years back I had an open-source project [1] get users and it was terrible. What had previously been a fun technical exercise became a pain in the ass that felt a lot like actual work. I was relieved when my hardware broke and I had an excuse to archive the project.
But that does create a huge gap that mostly gets filled by commercial interests.
[1] https://github.com/wpietri/sucks
-
Professional maintainers: a wake-up call
It seems like you haven't quite got the concept of open source. If everybody consumes and nobody contributes, how long will that last?
A while back I bought a cheap robot vacuum. Their scheduling feature didn't meet my needs, so I reverse-engineered the protocol and open-sourced a cron-friendly CLI tool and a library so people could do other things with it: https://github.com/wpietri/sucks
Honestly, this was a mistake on my part. It was a demanding audience of home-automation hobbyists mostly without programming skills. The company was thoroughly unhelpful. When my vacuum finally broke, I was relieved, as I had a good excuse for trying to hand off the project. Nobody stepped up, so I shut it down. I just ran out of interest in doing free work to support a company worth billions.
I really admire the community spirit of open source But it's not sustainable if companies making their money off it keep depending on the niceness and generosity of others without giving back enough to keep them happy, healthy, productive people.
-
XMPP, a Comeback Story: A Protocol for Robust, Private and Decentralized Comms
I reverse-engineered the comms for my cheap Ecovacs robot vacuum and was surprised to discover that, like some angsty teen, it spent all day hanging out in an XMPP chatroom waiting for somebody to talk to it: https://github.com/wpietri/sucks/blob/master/developing.md
Cassius
-
The Rules of Margin Collapse
FWIW, while there are unfortunately only very few attempts at formalizing CSS, there's at least an unofficial, unreviewed (?), partial formal semantics for (CSS 2-era) float layout based on z3 SMT and Racket you can take a look at to get a flavor, though it isn't receiving further development.
[1]: https://github.com/uwplse/cassius
[2]: https://pavpanchekha.com/blog/css-floats.html
-
W3C’s transfer from MIT to non-profit going poorly
Do we need W3C anymore? The HTML 5 specification has been created by WHATWG for many years now, with W3C only rubber-stamping historic WHATWG versions until 2017 or so. SVG2 is going nowhere, and so isn't MathML, leaving the CSS working group as W3C's remaining point of influence over the Web. CSS is regarded as so poor and overdone a specification that the only two external projects for a formal specification have failed or remained woefully incomplete (1, 2).
-
Is There Too Much CSS Now?
1. CSS should've been split into app-y styles and doc-y styles a looong time ago; meaning that when you need JavaScript to make use of a feature anyway, there's no point in using CSS and it's better to set styles, layout using JavaScript rather than bloat CSS. The Houdini API was on the right track years ago.
2. The CSS WG at W3C must deliver formal specification rather than the prose they're writing up now. For an idea how a (partial) formal spec for CSS rendering looks like, see eg. [1], [2] (with limitations).
The one way complexity that both W3C and WHATWG have delivered over the past 15 years with complete lack of mental discipline due to financial dependency/job security will be a major source of confusion for generations to cone, and will not be looked at favorably.
[1]: https://github.com/uwplse/cassius
[2]: https://github.com/lmeyerov/sc
-
Verifying GCC optimizations using an SMT solver
There's this cool project using z3 (and racket) for formalizing CSS rendering [1] I never came around to lift for anything. Maybe someone else interested in leading the web out of the dark ages and give W3C's CSS WG an idea what we expect from them will.
[1]: https://github.com/uwplse/cassius
-
Ladybird: A new cross-platform browser project
FWIW, I know two (partial, kinda) formal specifications of CSS normal flow and float layout, both of which are finished ie dead projects:
[1]: https://lmeyerov.github.io/projects/pbrowser/pubfiles/paper....
[2]: https://github.com/uwplse/cassius
(not counting the 1990s constraint CSS effort).
The first was merely part of a parallel compiler project and also covers table layout, whereas the second is a Racket (Scheme) program to formulate the HTML doc and CSS rules as a theory for submitting to z3 SMT to solve all kinds of decision problems (it can also produce a rendering).
Not sure that's very helpful; it would be cool if W3C can invest some time into better specs (not just prose).
What are some alternatives?
cinny - Yet another matrix client
Radpath - Path library for Elixir inspired by Python's pathlib
matrix-bifrost - General purpose bridging with a variety of backends including libpurple and xmpp.js
ex_guard - ExGuard is a mix command to handle events on file system modifications
meshnet-lab - Emulate huge mobile ad-hoc mesh networks using Linux network namespaces.
sizeable - An Elixir library to make File Sizes human-readable
sh - Python process launching
servo-embedding-example - Examples of embedding Servo inside non-browser GL applications.
polyjuice_server
alive2 - Automatic verification of LLVM optimizations
selling-partner-api - A PHP client library for Amazon's Selling Partner API
wpt - Test suites for Web platform specs — including WHATWG, W3C, and others