Hacker Newsnew | past | comments | ask | show | jobs | submit | Valk3_'s commentslogin

> Zulip is much better than Discord or Slack for managing the firehose of busy communities. Or at least, a lot of people tell us that they prefer the user experience to everything else they've tried, after a few weeks of getting used to it. :)

Could you expand on this?


Slack has basically one main hierarchy level (messages are grouped into channels) while Zulip has two, streams and topics. So you can create a stream for each project (say) and create a different topic for any given point that needs discussion about that project.

Kind of like if each slack thread discussion had a title and was discoverable from the left sidebar and didn’t get in the way of the other threads.


> didn’t get in the way of the other threads

But also, critically, if you want to, you can drop back to the "show me everything sequentially" view. Threads hide discussions away - which is good when you want to focus on something else, but bad when you can't remember where a discussion was.


The killer feateure is that it's very easy to move last $x messages to another topic, so if someone writes a short note that begins a conversation everyone is free to reorganize it, and also moving messages between threads is easy and nice.


From what I have read (not having actually used Zulip) it always sounded like the chats were threaded in the same way that mailing lists or newsgroups are threaded.

How accurate is that understanding?


That seems like a reasonable comparison. I've thought of Zulip as halfway between IRC and a forum.


No, it’s not fully threaded like those examples (or HN). In a particular discussion, you can’t reply to a post in the middle and have your reply branch off from the main discussion.


Check out https://zulip.com/for/communities/ and some of the linked case studies; they explain it better than I'll be able to in a quick comment.

But the main reason is that the topics-based organization and ability for moderators to move/split conversations means one can read and participate in a community much more fully given a fixed amount of time.


Any thoughts about Project Genie?


On a technical level, this looks like the same diffusion transformer world model design that was shown in the Genie 3 post (text/memory/d-pad input, video output, 60sec max context, 720p, sub-10FPS control latency due to 4-frame temporal compression). I expect the public release uses a cheaper step-distilled / quantized version. The limitations seen in Genie 3 (high control latency, gradual loss of detail and drift towards videogamey behavior, 60s max rollout length) are still present. The editing/sharing tools, latency, cost, etc. can probably improve over time with this same model checkpoint, but new features like audio input/output, higher resolution, precise controls, etc. likely won't happen until the next major version.

From a product perspective, I still don't have a good sense of what the market for WMs will look like. There's a tension between serious commercial applications (robotics, VFX, gamedev, etc. where you want way, way higher fidelity and very precise controllability), vs current short-form-demos-for-consumer-entertainment application (where you want the inference to be cheap-enough-to-be-ad-supported and simple/intuitive to use). Framing Genie as a "prototype" inside their most expensive AI plan makes a lot of sense while GDM figures out how to target the product commercially.

On a personal level, since I'm also working on world models (albeit very small local ones https://news.ycombinator.com/item?id=43798757), my main thought is "oh boy, lots of work to do". If everyone starts expecting Genie 3 quality, local WMs need to become a lot better :)


This one is pretty cool that i saw some time ago, not a game though, but a 3D portfolio: https://www.jessezhou.com/. The author even goes into how he made it: https://jesse-zhou.medium.com/jesses-ramen-case-study-77bae7....


Did you notice that it includes a shout-out to Bruno Simon?


I've been thinking about the problem of what to do if the answer to a question is very different to the question itself in embedding space. The KB method sounds interesting and not something I thought about, you sort work on the "document side" I guess. I've also heard of HYDE, the works on the query side, you generate hypothetical answers instead to the user query and look for documents that are similar to the answer, if I've understood it correctly.


What I'm wondering about is, if you have lots of dependencies, like in the hundreds or thousands, idk how many npm packages usually can have for the average web dev project, how do you even audit all of that manually? Sounds pretty infeasible? This is not to say we should not worry about it, I'm just genuinely curious what do you do in this situation? One could say well don't get that many dependencies to begin with, but the reality of web dev projects nowadays for instance, is that you get alot of dependencies that are hard to check manually for insecurities.


Some developers accept it as a reality, but it's only a reality if you're doing it. I think the time to figure this out is before your project gets a mess of hundreds or thousands of dependencies. Bringing in even a single dependency should be a big deal. Something you agonize over. Something you debate and study. Something you don't do unless you really, really mean it. Certainly not a casual decision. Some languages/environments make it too easy. Easy like: A single command line command and you now have a dependency. Total madness!


How do you become good at this? Is it simply practising doing UI/UX interfaces over and over and over and over until you get it? Do you have some specific advice on how to get "there" faster? I recently stumbled across this Refactoring UI book[1], heard it's sort of popular, know if it's any good?

[1] https://www.refactoringui.com/


Personally, I immediately don’t trust this book because the example on the page of the list UI puts a big red X over the version I prefer and find easier to read.


Half agree. The left version I feel has too many sharp lines and bold distinguishing features, so you don't know where to look, where the version on the right has too few so you don't know where to look.


I know exactly where to look, the little squiggly lines called letters and numbers, nicely separated from other rows with actual visible separators, instead of just floating out in the same ocean of grey.


Doing more certainly help, especially doing it more but deliberately. Trying new ways, getting feedback and repeat.


Yet another $149 course. The best online resources are free.


Looks very well executed, congratulations! I'm curious what tech stack did you use to develop the site?


Thanks! It's Next.js hosted on Cloudflare


Not sure what your exact task is, but I have a similar goal as well. Haven't had time to try alot of different models or ideas yet because got busy with other stuff, but have you tried this: https://youtu.be/dQ-4LASopoM?si=e33FQd5f4fYr4J5L&t=299

where you stitch two images together, one is the working image (the one you want to modify), and the other one is the reference image, you then instruct the model what to do. I'm guessing this approach is as brittle as the other attempts you've tried so far, but I thought this seemed like an interesting approach.


Sorry for my lack of knowledge, but I've been wondering what if you ask a question to the RAG, where the answer to the question is not close in embedding space to the embedded question? Will that not limit the quality of the result? Or how does a RAG handle that? I guess maybe the multi-turn convo you mentioned helps in this regard?

The way I see RAG is it's basically some sort of semantic search, where the query needs to be similar to whatever you are searching for in the embedding space order to get good results.


I think the trick is called "query expansion". You use an LLM to rewrite the query into a more verbose form, which can also include text from the chat context, and then you use that as the basis for the RAG lookup. Basically you use an LLM to give the RAG a better chance of having the query be similar to the resources.


Thanks for the answer! I think you are right, I've also heard of HYDE (Hypothetical answer generation), that makes an LLM encode a guess as the answer into the query, which may also improve the results.


At one hand you get insane productivity boost, something that could take maybe days, weeks or months to do now you can do in significantly shorter amount of time, but how much are you learning if you are at a junior level and not consciously being careful about how you use it, feels like it can be dangerous without a critical mindset, where you eventually rely too much on it that you can't survive without it. Or maybe this is ok? Perhaps the way of programming in the future should be like this, since we have this technology now, why not use it?

Like there's a mindset where you just want to get the job done, ok cool just let the llm do it for me (and it's not perfect atm), and ill stitch everything together fix small stuff that it gets wrong etc, saves alot of time and sure I might learn something in the process as well. And then the other way of working is the traditional way, you google, look up on stackoverflow, read documentations, you sit down try to find out what you need and understand the problem, code a solution iteratively and eventually you get it right and you get a learning experience out of it. Downside is this can take 100 years, at the very least much longer than using an llm in general. And you could argue that if you prompt the llm in a certain way, it would be equivalent to doing all of this but in a faster way, without taking away from you learning.

For seniors it might be another story, it's like they have the critical thinking, experience and creativity already, through years of training, so they don't loose as much compared to a junior. It will be closer for them to treat this as a smarter tool than google.

Personally, I look at it like you now have a smarter tool, a very different one as well, if you use it wisely you can definitely do better than traditional googling and stackoverflow. It will depend on what you are after, and you should be able to adapt to that need. If you just want the job done, then who cares, let the llm do it, if you want to learn you can prompt it in certain way to achieve that, so it shouldn't be a problem. But this sort of way of working requires a conscious effort on how you are using it and an awareness of what downsides there could be if you choose to work with the llm in a certain way to be able to change the way you interact with the llm. In reality I think most people don't go through the hoops of "limiting" the llm so that you can get a better learning experience. But also, what is a better learning experience? Perhaps you could argue that being able to see the solution, or a draft of it, can be a way of speeding up learning experience, because you have a quicker starting point to build upon a solution. I dunno. My only gripe with using LLM, is that deep thinking and creativity can take a dip, you know back in the day when you stumbled upon a really difficult problem, and you had to sit down with it for hours, days, weeks, months until you could solve that. I feel like there are some steps there that are important to internalize, that LLM nowdays makes you skip. What also would be so interesting to me is to compare a senior that got their training prior to LLM, and then compare them to a senior now that gets their training in the new era of programming with AI, and see what kinds of differences one might find I would guess that the senior prior to LLM era, would be way better at coding by hand in general, but critical thinking and creativity, given that they both are good seniors, maybe shouldn't be too different honestly but it just depends on how that other senior, who are used to working with LLMs, interacts with them.

Also I don't like how LLM sometimes can influence your approach to solving something, like perhaps you would have thought about a better way or different way of solving a problem if you didn't first ask the LLM. I think this could be true to a higher degree for juniors than seniors due to gap in experience when you are senior, you sort of have seen alot of things already, so you are aware of alot of ways to solve something, whereas for a junior that "capability" is more limited than a senior.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: