For better or for worse I’ve always preferred this, and IME a large portion of people (especially younger or who don’t write/communicate much for recreation or their work) will not read it or assume it was AI.
IMO it is a costly/goodhart-resistant way to “show your work” and help other people understand or challenge your mental model. (IE a justification for something you believe to be true). Overly polished writing is performative, it’s hard to take seriously once you’ve read The Economist/LW enough to see how poorly “well written” correlates with truth
To a certain extent are all wrong or ignorant about almost everything because our knowledge/time are very limited. But it is really important to understand what other people think in order to coordinate with them/align human goals and understanding.
It’s good that the average person taking the lowest-friction path to using an LLM in bad faith is easy to identify now. The more obvious and disliked it becomes, the more they’ll be hit with the stick to actually know things and not bother people. It’s so much worse to be “bad and stupid and not care” than “possibly cringe or wrong”
That matters for discovery, but lots of event organizers and hosts just need a consistent, simple UX for event signups, sharing details to attendees, and managing updates/invites/changes.
If they have a mostly consistent or invite-only set of attendees, the network effects don’t matter. Imagine a Boy Scout troop, Alcoholics Anonymous, pub trivia, blood drives, local alumni association, churches, user groups.
Many businesses have this problem but don’t use Facebook or discord because of the login wall and unprofessional vibes. They would pay for a real tool that makes consistent event/group hosting easy. IMO you’re getting interest/engagement in spite of the critical feedback because people who regularly hosts events need that
> but don’t use Facebook or discord because of the login wall and unprofessional vibes
Just to clarify, your improvement on the login wall is the suggestion you made earlier to allow forms to be filled out before login/sign-up, right? I've done this for groups [1] and activities [2].
Do not implement any more documentation/pricing/marketing until you've really nailed down the UX. I'm not sure what your background is but you can just write down a list of things like "person looking for events, visiting the site from social/search" and think through the steps/impression they'd take from your landing page to completing their task. It helps to follow actually users/dogfood your app/have some basic analytics to see where traffic drops off or churns to understand this if you have trouble understanding it.
For example, do you think it makes more sense to aggregate groups by subject matter, or by location? Why would I want to browse events on the other side of the world/guess which category a group got bucketed into? The group/events UIs are actually good but the groups directory in the way is not, and your landing page makes the activity feed/posting something prominent for some reason (why would I care about the activity feed or want to post an update to some random site?) instead of the thing that they would actually want to use (groups/events), that actually makes an activity feed/status update make sense.
Sincerely trying to help because I've made the same kinds of mistakes before and it pains me so so much. The main reason is that I find it very hard to trust a product that seems to prioritize aggressive conversion, or strange prioritization of actual user needs vs larping as a saas, and I think it's hard to recognize that in your own work because you're thinking "I'm building a saas" and your users are seeing something that cares more about Being SaaS or prioritize random stuff more than even the basic thing it's supposed to help them do.
The impression you get isn't "more is nice to have even if it arrives in the wrong order", it's actual frustration/distrust seeing all this random stuff and what you want it do or be perceived as, prioritized over the actual thing it's supposed to do. Make it easy to find a group or trust that this is an actual thing people can use, I promise you that you don't need an Events API with embeddable widgets until you can do that.
Please create a better UI and make it easier to view events / try posting one before signing in. Something card-based where I can quickly type in my location and see what events are nearby.
This isn't just a complaint about the UI being "vibe-coded-coded" or incomplete, but the product itself not making the happy path very useful or confusing.
For example why is the landing page trying to sell this like a b2b saas app or hit me with a bait and switch login wall, or why is the screenshot not just the actual directory/a search bar, why do I have to know to go to groups? (Also, why are you showing me activity feeds or funneling me into that when I'm on your website primarily to look at groups and events? Why would I go to your site to look at that) Then on the group page it would be very convenient if there were just an edit/post button that I can click to draft or actually make a group (and then maybe quickly group by / filter by location or region). Same thing with adding an event, you could have a + button with a modal to draft it and only hit me with the login wall when I try to post.
The event/group UI actually looks decent but I really think you need to prioritize the core activation flow and design. Right now it makes activation, understanding what the product is, and doing the first thing I would want to do (look at groups or events) not obvious. I'm somewhat of a hypocrite on this but also speaking from experience - there's no point in spending time marketing a product with own-goals like that.
Why are your docs so much better designed/clear than the first thing I see or want to do! You don't need docs for this, it's like three database tables you can search and post to! Why the globe?? I'm not even sure why I would want or need to directly browse your users but why is there so much more effort here than in the groups UI (the thing I would be using this for)?
Since this is a pretty conventional crud app the only reason people would really have to use it is UX (or an audience you don't have yet). Trying to be helpful here because I think you should keep working on it and it's something I'd want to use if there were more attention to detail, which you could prob fix in less than a day with a coding agent.
Thanks for the great feedback - much of which I agree with! If you think the UI is bad now, you should have seen it in 2024 :)
For context, I think many of the decisions I've taken have been due to a lack of activity to surface. I completely agree that there needs to be an /events page, but it doesn't make sense with the low volume of events right now (IMO, at least).
Fair points on the landing and groups page - I've tried to address some of those issues tonight.
> you could have a + button with a modal to draft it and only hit me with the login wall when I try to post.
Not something I'd considered, to be honest! I usually get annoyed when I fill out a form only to find I need to sign up to finish the process - maybe others prefer that? I've gone and added that for groups and activities (well, when my CI finishes). Events are dependent on a group (for now at least), so that's a task for tomorrow, I think. Thanks for this suggestion!
Well, you have to either capture/eliminate/persist side effects and control the environment tightly, or it's limited in what it can do.
In a distributed or concurrent system, for full granularity, that can require specialized timing or virtualization techniques up to ensuring fully atomic snapshots and deterministic execution environments (and whether or not that properly models the SUT in real environments, or introduces bias/breaks the reproducibility in a way you care about)
Otherwise if you're only running against fixed checkpoints you have something closer to traces that maybe you could re-run or test against, in some cases, if you put in the work to set it up. In distributed systems that can be a lot of work so it's a bit vague if left unspecified. Because it's not enough to merely replay something if things can drift or don't accurately model the real system
> Well, you have to either capture/eliminate/persist side effects and control the environment tightly, or it's limited in what it can do.
You really need to read up on durable executions before commenting. Your comment reads as if you are completely oblivious to them. Their whole point is benefiting from an execution model where your workflow is comprised of idempotent pure functions whose inputs and outputs are tracked by the durable task persistence.
It's a problem I've spent a lot of time on, just not through the products marketed like temporal. I commented on the article because it's about program replay with checkpointing which is similar to what I worked with/mentioned.
I didn't see the article mention idempotency anywhere, and you didn't in the original response to the guy who said it just sounded like a buzzword; atomic snapshotting with deterministic execution is literally how you make a program continuation an idempotent function!
And the article is about solving the problem at the language runtime level so it doesn't even do that. So it would be reasonable to assume it is a buzzword if it does not have the essential property you mentioned and I was referring to. I was not even intending to disagree with you but just add what would make it less of a buzzword in this kind of case.
For the sort of architecture described in the blog post, you're persisting the program rather than a log, so you only need idempotency between any two checkpoints. For a lot of apps that's easy to achieve if write the snapshot into the same transaction the user is using for application data, and if you create/propagate idempotency tokens to other services.
You don't need specialized timing or virtualization techniques.
Good model. Anybody interested in actually training models or designing agentic systems should be doing this.
My company started around working on this problem because it's the basis for how you train programming models/reliably deploy LLMs to do specific tasks. It allowed me to build a much better mental model for LLMs because I saw how weirdly fickle/inconsistent/picky they could actually be outside of a "chat" where it feels like they have a coherent persona or consistent knowledge/capability.
Initially I thought of it as a search over prompts for capability at completing specific tasks, but now I think the speed/reliability and operations (eg can I switch models without degrading perforamnce?) benefits are even bigger benefits for most users.
A little "secret" since labs are making it harder to even use their models in this way and it's important that it be more widely understood: distribution-aware replay/re-sampling is a key technique in post-training LLMs. But it's also something that allows you to automatically identify the best model for some subset of your tasks, which can save you a lot of money.
Cars use AI for steering control (et al) and technology very similar to RLVR (hold the RL), eg property-based testing and formal verification, to prove the soundness of their embedded systems. Most of us in San Francisco trust Waymo with our lives more than human uber/Lyft drivers
As long as you can verify/test and take accountability for the thing you put your name on there’s no reason not to treat it as a process or search problem rather than one you assemble yourself by hand. The only problem is that it’s ironically much harder and more engineering than most “software engineers” are willing or able to do.
I spent several years working on permutation testing/experimentation and creating e2e verification of infrastructure because at scale, or when reliability/correctness are critical, you cannot rely on a single person’s mental model, or for the world to not drift around a system as it works now. That kind of system is what allows you to use LLMs or engineers who don’t know everything about it to improve or change it. It’s more science than art, which is often (but not always) what you want
But when nobody will die from your decision (and to be clear I think security is extremely important, but moreso for banking/healthcare than a private wow server), then “shoddy” becomes a matter of reputation/taste vs value/marketability.
The demand curve is different because it’s low stakes, like throwing a bad party or oversalting food. And part of the problem in software to begin with is too much LARPing about scale/engineering for things that don’t need it, as well as lack of accountability or care for things that do.
You can still be an “engineer” working on a game, it’s just more about making the game fun than making it safe. Or, you create a process for making and test hundreds of experimental bridges, and refine/invest additional time in understanding and verifying the safety of the best one.
Strong agree. I think the fundamental challenge of working in fields that increasingly become AI-enabled will be the ability to understand and direct large or intricate systems without prior knowledge/the advantage of having built the model as implemented. That’s already how it works in complex domains or large businesses.
It does require a different kind of ego/abilities than before. My (negative) framing of the whiplash effect is that it’s a reckoning of “process fetishism”/a bad kind of careerism in the tech hiring market (because for the labor market to work, candidates need to be evaluable and sortable by businesses, and many people build an identity/optimize for legibility around “best practices” or very particular “technologies” which might get them a job).
Ultimately, you need to know and learn/be responsible for stuff, and be able to help people with your labor, not be “a type of person” that isn’t effective at the task of helping. But at the same time knowing things and being able to take accountability/help people remains critical, especially because that’s what people will want to pay for even as “time spent typing it in” decreases.
Personally, I think it will be a good thing because software and “tech” will become a more strongly domain-driven/enabling medium for real-world or specialized things. IE it is the end to “software for its own sake” or “willingness to type it in and play with Jira/jenkins/frameworks” and the beginning of something that is more applicable or knowledge-building rather than “being the X for Y at Z”. Harder but more fun :)
They're not selling it to you/it doesn't come out of your salary?
They're selling it to your employer. You're literally not even the customer for this product. There's no need to get angry that they're charging enterprise/vendor rates for a product.
And it's free for up to 100k devices. If you are running anything on 100k devices you should be able to afford $0.50/device and. If you aren't then why do you care? It's still a very customer-permissive and flexible business model so I cannot understand why this is upsetting or offensive
I deploy browser extensions to millions of devices, and small local models that I can run in that space are incredibly appealing.
But the "per user" model is just especially difficult to justify here, and comes with a TON of fucking downsides like usage tracking, feature availability, and product structure (ex - is a trial user a user? how long? etc...)
---
And it's not even like they're justifying it with model download support or caching... they shove it entirely onto hugging face, or have you self serve.
As their literal target audience - I'd rather buy the weights for a fixed price (even a high one), and not let them influence my product design decisions with saas style pricing.
IMO it is a costly/goodhart-resistant way to “show your work” and help other people understand or challenge your mental model. (IE a justification for something you believe to be true). Overly polished writing is performative, it’s hard to take seriously once you’ve read The Economist/LW enough to see how poorly “well written” correlates with truth
To a certain extent are all wrong or ignorant about almost everything because our knowledge/time are very limited. But it is really important to understand what other people think in order to coordinate with them/align human goals and understanding.
It’s good that the average person taking the lowest-friction path to using an LLM in bad faith is easy to identify now. The more obvious and disliked it becomes, the more they’ll be hit with the stick to actually know things and not bother people. It’s so much worse to be “bad and stupid and not care” than “possibly cringe or wrong”
reply