Hacker News new | past | comments | ask | show | jobs | submit | nkzd's comments login

I've always wondered, why was IRC not developed further? Some of the features people take for granted in chat clients today never made it to IRC.



It was, someone already pointed you to ircV3 which attempted to bring a lot of modern features to irc. But besides the specification process being slow you also had to content with all the different clients and networks. Most of which at that point in time already had stagnated in development.


If it supported things like picture messages, then it wouldn't really be IRC any more. I suppose you could create a new protocol that's most similar to IRC, but when creating new protocols, people typically want to make other improvements at the same time, such as the ability for a user to stay in a group while offline.

In my opinion, most of the differences between IRC and Slack/Matrix/Discord/etc stem from trying to keep users in a group chat while they're not actually online, since this requires servers to store message history, and then you're legally required to have a way to moderate the message history, and you might as well send back-history to clients who just joined, and so on. Additionally, since each message is stored authoritatively on the server, it can be updated with things like text edits and emoji reactions.

Some of the differences, like being able to send pictures, do not stem from that.

I read and responded to a similar comment recently here on HN about email security. The gist of the question is "why don't we create something like email but secure?" and the gist of my reply is "if we created a whole new system, we'd add all the things we can now have that we couldn't have when email was invented, like instant notifications, and then it would be a reinvention of a newer protocol (I didn't name Matrix, Fediverse or XMPP), nothing like email.". https://news.ycombinator.com/item?id=42633785


IRC supports picture messaging.

Encode the image to Base64, post the string and have your client decode. Or use your browser.

Simple.


Because there is nothing wrong with good old IRC. It was developed to a point and left alone. Trying to improve it could actually lead to overengeeniring and spoiling the protocol. If IRC is not what you want, look for alternatives. There are plenty of those.


Moxie Marlinspoke thought hard about that, here’s his conclusion: https://signal.org/blog/the-ecosystem-is-moving/


That's more Moxie's PR department rationalizing why they didn't go for the better (more resilient, more privacy respecting, more flexible, freer) decentralized approach. It's also extensively debunked: https://gultsch.de/objection.html


Ok. So what do you think are the reasons that IRC has lost marketshare to Slack and Discord?


I would assume it's mostly marketing. There's no entity behind IRC to push its adoption and herd the cats to a singular goal.

The lack of features that Slack/Discord specifically added to differentiate themselves from IRC are also important, but it was a lot simpler to add them to their brand new designs, than to work through having to specify them onto the IRC protocol and then get servers and clients to adopt it. You can look at the IRCv3 page linked higher in the thread to see some of the efforts, but this is 10 years later and we're still not there. :D


Popular irc servers still haven’t adopted ircv3, effectively holding all of irc back from making progress.


I rest my case.


> I've always wondered, why was IRC not developed further?

Personally, part of the charm of the IRC protocol is the simplicity. You can implement a client effortlessly in most languages in just an hour or two.


The instant messengers did that.

Then slack did the modern IRC client.


I'm so old I remember the days when Slack had built-in IRC integration :)


I thought I read somewhere the early versions of slack actually ran on irc.


I am not sure about this one. In the past, quality of life was terrible compared to modern life but fertility was not an issue.


Quality of life was terrible, but some things were still easier. Most importantly, that terrible quality of life was cheap enough that your kids could probably support you in your old age. Medical care wasn't so advanced, which is cheaper, but also means you had a good chance of dying younger or of a condition we could cure today. Housing was cheaper but also worse back then. Investments weren't accessible to the vast majority of people and "retirement" as a concept didn't really exist for the lower classes except as an idea that you would probably be too old to effectively do your job someday. Nowadays, your kids probably can't afford to support you into your old age, and you probably don't have a pension, which means making more money now so that you don't have to work until you die. You have a lot more options for a higher quality of life, but they tend to require that you prioritize money over a family unless you are either in the privileged position of being able to afford both or poor enough that it doesn't matter.


Kids used to be seen as a way to increase quality of life. They were free labor and a retirement plan all rolled into one.

They still are seen as a way to increase quality of life but in a more vibey sort of way.


Was it more terrible? You certainly had more organic social connections and family support. Physically tougher than a modern white collar job? Sure. Better than commuting and working for some shitty boss though!


We take so much for granted. Living in a world without electricity, medicine, food scarcity, lack of safety net.

Family didn't offer as much support as it appears. Average kids are working farms rich children are sent away to be raised.

The social bonds of the modern world still exist in the same places as the past. It starts with the church.. so if you crave the social connections you can still go to church to find it.


You almost had a coherent point until the last sentence. I'll take my social bonds without the side-order of dogma, thanks.


What bonds people in the past is religious dogma. We removed it and we wonder why our social bonds are so weak.

I'm not suggesting we go back but we have nothing to replace it. The one thing a church did was welcome in everyone. We don't have places like that anymore.


I guess I have to tell my local card shop to stop welcoming everyone on Commander night, because you're only allowed to do that if you're a church.


Welcoming people with money who buy cards as a promotion to sell goods.

It's not a place to hold a wedding or funeral. You can't go inside and sit down without someone trying to sell you something.

Some form of community can happen at a card shop. I use to hang around one when a was younger. Also got kicked out every now and then for hanging out too much.


I got married in a public park. It was free and everyone can convene there. What it doesn't do is insulate you from people you may find disagreeable or distasteful, which a church does.


Most places require a permit but aside from that, that's a personal event you invited people you know to. Everyone can't convene there. It's a one time event and because you pick the guests it does insulate you from people you find disagreeable.


Surely you are now arguing against your own point? If one holds a wedding at a church, it is typically not open to the public any more than a wedding in a park. "Wedding crashers" aside, you invite people you know and it is typically not expected nor desired for the general public to attend. It's nothing unusual; churches schedule time for weddings all the time, and then go right back to being a public gathering space once the event is over. I should add, since it's part of the core of this debate, that the idea that churches are universally welcoming or truly public is itself debatable: they hold a religious function and while churches are usually open to all attendees, you will struggle to find community there unless you share the religious beliefs of the other attendees. That is to say, the church as a structure is open to all; the church as a community is not.

For what it's worth, my wedding was intentionally kept small, which allowed us to hold a ceremony without a permit and without closing off any public areas.


ipaddr has a point.

The average person (non-scientist, non-technical) has replaced belief in the supernatural and the church with belief in science and the institutions of the state, and though there have been major improvements, we haven't completely refactored the old yet. Community and meaning is major functionality that we have yet to figure out anew.


I mean, this is the concept of the "third space." They have existed throughout history and while churches are certainly one example, they are not the only example. A church (or temple or mosque or whatever) fills a certain community role as a gathering space for religious worship, but it's not the only place where you can meet and talk to people.


Come up with a third space to rival the church of old and you’ll be hailed as a cultural hero for the next millenium. Starbucks has not cut it.


Jim Rouse thought it would be the shopping mall and designed my city of residence (Columbia, MD) with the shopping mall at its center.

It was a decent bet for 1967.


American shopping malls of the mid-to-late 20th century were a decent bet, but I think they fail because a) they're very pedestrian hostile, b) they tend to be owned by a singular landlord that can enforce policies that discourage gathering, and c) they just kind of smack of artificiality. But bazaars, street markets, and other commercial areas have certainly been third-places since before long before it was a defined term. Heck, the ancient Greeks were quite proud of their agora.


Try asking that after spending a while living in a tenement building with 3 people per room and frequent outbreaks of dysentery and smallpox.


People still live like this today.


extremely rare in countries with falling birth rates


> In the past, quality of life was terrible compared to modern life but fertility was not an issue.

not sure which "past" you're referring to, but in agricultural societies, more kids was important to survival and quality of life, as you needed hands on the farm; also, the child mortality rate was much higher so you had to have more kids to start with; that was also pre-birth control -- as soon as that was introduced the birth rate started to fall tremendously


I imagine that birth control as well as the giant array of entertainment options available to us other than sex contributes to modern fertility

Why do poorer people have more kids? Sex is free, birth control and netflix is not


Poor people are also more religious, and in the age of birth control,religions that don't explicitly require their adherents to procreate will have far fewer followers than those that do after just a few generations.


People didn’t have a choice back then. So the two options now are: “force people to have kids” or “make life better for people so they want kids”. I’d like to think we’ve evolved enough as a society to choose the later option.


There is no later option, actually. No matter how good life would be - people won't have more children. Prosperity in the context of fertility matters only in relative values, not in absolute values. People have a lot of children not when they are wealthy, but when they are wealthier than others, and so it always be minority, no matter how good life are.


In companies I've worked at I noticed databases (Both SQL and No-SQL) are never hosted in Kubernetes clusters. I am looking for opinions of more senior folks on why is that? Is Kubernetes simply not mature enough?


For us, our Nomad cluster clients (the instances that runs the workloads), are a bit more ephemeral, the workloads are moved around servers, and the servers go up and down as we scale the infrastructure.

A database, that should be highly available, that is on a node that's going down, might disrupt database clients and end-users.

Not to say that you can't host databases inside the cluster, you can place databases on more stable servers (tag them with "db", be careful when you make changes) and don't move workloads, or manage expectations with the database clients.


Most of my k8s experience is from using it 4 years ago, so it may be better with storage now. But we required bare metal for all our dbs. We required full performance.

We did have redis in k8s, but the redis cluster our team needed was over 50 nodes and was experiencing all kinds of odd problems and our ops team insisted we move to vms. Performance was better. We didn't use disc, all memory. Wish I could recall the issues better.


from my own experience, running stateful services in k8s is not easy and prone to errors.

so unless your devops/sysops/whateveryouwannacallitops has a lot of experience, it's just not worth it when things like RDS/ElastiCache exists.

i worked at a place that was 100% k8s, but all stateful things (redis, mysql, rabbitmq) were either hosted or in VMs.


What is the use-case for GraalPy? To be honest I don't understand why would anyone want to use it.


I worked at a company where data scientists wrote python code using pandas and we had port it to java and a library called keanu that was very useful but soon became unmaintained.

Of course this was very time consuming and unrewarding, all because only java applications could be deployed to production due to a stupid top-down decision.

This GraalPy sounds like something I wish existed back then.


jep[0] has existed for a while now, and does what GraalPy is doing quite well.

I'm using it for similar purposes as you stated and for that it works quite well. A research group I am collaborating with does a lot of their work in one Java application (ImageJ for microscopy), so by integrating my Python processing code into that application, it finds its way a lot quicker into the daily workflows of everyone in that group.

Most recently I've also extended the jep setup to include optional Python version bootstrapping via uv[1], so that I can be sure that the plugins I'm writing have the correct Python version available, without people having to install that manually on the machine.

[0]: https://github.com/ninia/jep

[1]: https://github.com/astral-sh/uv


Did you look into Jython back then?


Jython has historically lagged hard, often falling behind for very extended periods. For a time their releases basically just stopped, which led to them missing support for pretty much anything between 2.7 and 3.6 (iirc). I know the project basically rebooted at some point, but I've since lost interest.


Not to mention the biggest drawback imho. Those alternative implementations don't support C extensions.


Jython was dead for a long time. It might be back a little now, but there is still no Python 3 support.

GraalPy is much more active and more compatible.


Not me, someone else in the company did, I don’t remember why it was dismissed.


Ghidra embeds Python scripting via Jython, which is stuck on Python 2. Switching to GraalPy would allow Python 3 scripting.

Any other Java programs that want a scripting engine could use it as well.


Besides all the nice answers given by others, a big one was not mentioned: performance!

Graal can do pretty advanced JIT-compilation for any Graal language, plus you can mix-and-match languages (with a big chunk of their ecosystems) and it will actually compile across language boundaries. And we haven’t even mentioned Java’s state of the art GCs that can run circles around any tracing GC, let alone the very low throughput reference counting.


I guess for pure python applications, they'd rather throw more hardware at the problem than messing with the JVM.


For serial workloads it’s very very hard to scale by hardware, though. CPUs aren’t getting 2x faster as they used to.

Also, what is “messing with the JVM”? That’s like one of the most battle tested technologies out there, right next to the Linux kernel.


Don't get me wrong, I love the JVM.

The unfortunately common irrational aversion to JVM aside, there's also the fear of "using it wrong".


Picture working for a big, non-tech corporation. Your BU only does Java because it has always been thus and Jeff the SVP is a law grad and doesn't want anything to change because of perceived risk. GraalVM allows smart people who have to work within such limitations to still write (mostly) the software they want while still vaguely relating it to Java for decision makers.


Those "smart people" write blackboxes in esoteric languages that only the same person maintains.

Everyone else has to write wrappers to interact with that blackbox. God forbid someone daring to even change the code, because it basically doesn't even need/use junit tests. Eventually the smart person gets bored and moves to something else, that tool then gets rewritten to Java in two days by someone else.

End of story.


Not so vaguely, either. The dev story is not Java but the deploy story is.


Minecraft Mods can only be written in Java and I want my kid to learn python.

Jython is still 2.x and it'd be nice to let my kid write a minecraft mod in python. Not a business use case but a use case.


When I was learning programming, my coding class used a Bukkit plugin that connected to Python. I can't remember what it was called, but that was for Minecraft 1.7.10.

Not sure if you were wanting Python specifically, but KubeJS lets you use JavaScript for mods. I think there's also a clojure integration.


Thank you. My 3rd grader knows basic python so I'd prefer to stick with that or Scratch


Maybe this would be an interesting alternative runtime environment for PySpark? I think currently PySpark runs in Python and somehow interacts with a JVM and relies on copying data from one to the other.


Data scientists trapped in bureaucracy?


I am assuming - With this, JVMs needing integration with LLMs can embed LLMs in JVM instead of making outbound API calls. If my assumption is right - wouldn't this improve performance of consumer applications?


Thankfully some LLMs also have Java bindings to the same native libraries used by Python.



I use NearDrop for sharing files between my Samsung and Macbook: https://github.com/grishka/NearDrop


Does it work for you currently? there's an unsolved issue that happened after a One UI patch a few months ago


Can you summarize what does this mean for an average gym goer? Should I take protein immediately after workout?


Yeah, I think the least controversial takeaway is that you can afford to have a large protein shake immediately after workout. I personally don't think you need to. But this study and some others indicate that muscle responds best to protein consumption when it's in some post-exercise state (but it's unclear if that state is 30 minutes or 3 hours or longer etc). I'd say it's more important to focus on your overall daily consumption rather than the timing of it


A summary of my own looking into it is “don’t worry too much about it”.

For the average gym goer the most important thing is working out consistently to failure and periodically reevaluating your training so that it’s safe and optimal based on the latest research. How much protein you can shove in your face is rarely a concern, westerners get enough. Getting a bigger chest or shoulders when what you are doing isn’t working requires looking at your body mechanics and how to activate those muscle groups. As an example, I couldn’t squat for shit until I learned that I require a different stance than most people, due to how my hip sockets are angled (my feet naturally come to rest when standing at about a 80 degree angle, extremely wide compared to most)

Everything I’ve read seems to indicate that it’s probably ideal to eat something within a few hours after a heavy workout, but you don’t need to immediately rush down 2 scoops of protein shake or waste away. Excess protein doesn’t really hurt you either. Protein eaten is gradually absorbed throughout a surprisingly long time as it travels through the gut (the time of which varies greatly between people, I digest extremely slowly), which in practice can act like a “store” of amino acids despite the body not really having something dedicated for that purpose like fatty acids and carbohydrates. I haven’t seen studies on this, but I personally also suspect some amount protein is “stored” and released via gut bacteria, much like what happens with soil bacteria and nitrogen fertilizer. And that’s ignoring all the recycling of amino acids the body does anyways.

Likewise, muscle repair is a progressive demand over days, not an instant demand. Photos of muscle cells over time after a workout are illustrative of this.

Basically you don’t need to treat protein like a diabetic treats blood sugar.

For those people at an advanced enough level where they need to find optimizations to obtain more results, then yes, individual amino acids have metabolic effects that can likely be exploited. In fact, some amino acids (like leucine) can likely be a contributor of not just muscle gain, but also obesity because of how they work. Some people can benefit from restricting “protein” in order to lose weight, because they start burning body fat for fuel again. Likewise, fat isn’t just fat, but each fatty acid has its own complex waterfall of metabolic impacts (beware omega-6’s, which are very high in western raised pork and chicken fat).

Food can be thought of as a load of chemical signals for your body. So the above study isn’t surprising.


For anyone reading this in the future, please be aware the working out "to failure" is this posters' opinion. From my research, I'd tend to say it's actually not favoured in the current state of the art.

From what I understand, achieving (example) 80% of failure can achieve most of the same level of gains while avoiding a disproprionately significant amount of fatigue resulting from achieving full failure.


Just eat enough protein in total over the day. The "slam a protein shake immediately after working out" thing is bro science.


Depends whom you ask. I tried both and did not see any major difference between doing so right after or spacing it out


Hey, I am a classic backend software engineer looking to learn how to do things you mentioned. I believe if I learn these skills, I will know how to make "shovels" during gold rush :)

Can you recommend any learning resources for things you mentioned? I don't have an option to learn these on my current job, so it will be hard to structure CV to prove my future employers I know them when I don't have real world experience.


Check out my reply to the sibling comment


1. Logically split and store PDFs content in a vector database 2. Embed the query (Your questions) and search the vector database for closest results. 3. Use the results and LLAMA prompt to format the answer.


How can you prompt copilot like chat? It only does autocomplete well.


You need to have access to Copilot Chat, which is only available as an extension in VSC Insiders.


How could Meta ever find out your private business is using their model without a whistleblower? It's practically impossible.


This is an old playbook from Facebook, where the company creates rules that they know they can not detect violation of.

This gives the company plausible deniability while still allowing ~unrestricted growth.

Persistent storage (in violation of TOS) and illicit use of Facebook users’ personal data was available to app developers for a long time.

It encouraged development of viral applications while throwing off massive value to those willing to break the published rules.

This resulted in outsized and unexpected repercussions though, including the Cambridge Analytica scandal.

People should be wary of the development as much as they are enthused. The power is immense and potential for abuse far from understood.


You are certainly partly right, but it's also about liability. Those models might output copyrighted information, which Facebook doesn't want to get sued about. So they restrict the model for research. If someone uses it to replicate copyrighted work, they are not responsible.


Open AI faces the same liability concerns though. I think IP concerns are low on the list given past success of playing fast and loose on emergent capabilities of new tech platforms.

For example, WhatsApp’s greyhat use of smartphone address book.

The US government also has a stake in unbridled growth seems, in general, to give a pass to business exploring new terrain.


I think you can make that argument for all behind-the-scenes commercial copyright infringement, surely?


Have reasonable suspicion, sue you, and then use discovery to find any evidence at all that your models began with LLaMA. Oh, you don't have substantial evidence for how you went from 0 to a 65B-parameter LLM base model? How curious.


Fell off the back of a truck!


Recovered it from a boating accident.


Yes, that's how software piracy has always worked.


You can just ask if there is no output filtering


The future is going to be hilarious. Just ask the model who made it!


Does the model know, or will it just hallucinate an answer?


Probably both.


Same way anti-piracy worked in the 90s: cash payouts to whistleblowers. Yes, those whistleblowers are guaranteed to be fired employees with an axe to grind.


LLaMa uses books3 which is a source of pirated books, to train the model.

So either, it is very hypocrite of them to apply DCMA while the model itself is illegal. Or, they are trying to somewhat stop spreading as they know it is illegal.

Anyways, since the training code and data sources are opensource, you 'could' have trained it yourself. But even then, you are still at risk for the pirated books part.


Consider applying for YC's Spring batch! Applications are open till Feb 11.

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

Search: