The biggest problem, and biggest fail of IRC. It is too low level and requires people to write scripts when they need anything else beyond simple text message.<p>I am torn apart here, because I really do like hacking things. The issue is - most people don't. They just want to use it, and they want to use it consistently - no matter the platform, the client, the server they are connecting to. And I totally understand that. More of it, I also understand that if you fail to provide this consistency your service have failed in the design phase and will never get widespread usage.<p>The sooner we, tech savvy people, understand that, the sooner we'll be able to deliver a successful open services that actually stand a chance with their closed counterpart.<p>So obviously, give people way to hack, but you must to:<p>* Design a rich protocol covering needs of the biggest target possible while allowing optionally disable features. Channels history, disappearing messages, embedded media, text formatting, emoji, stickers, web hooks, API for bots, you name it. The protocol must cover most of them, so there is no need to write scripts anymore, unless you need something niche.<p>* Design a strict spec for the clients, so all of them must keep to the spec, or they fail to be part of the service. And this is critical - do no allow client to behave differently and have a missing features.<p>* Design clients so they are trivial to use. They must be usable out of box and all (most) of the features must be enabled after installation. Necessary steps to start using it (connection, channels, etc.) should be reduced to minimum and intuitive.<p>* Keep a community of server and client developers so they can share info and be able to build uniform solution for the users.<p>* And probably most important - promote the service. And do promote it heavily, unless you want to design something niche, which, I guess, is not what we are talking here.<p>I've used IRC for years in the past. It was great, I do admit - not anymore. Today I require at least few formatting options (bold, inline code, block code) and no 3rd party tools needed to get anything else work properly. I have no time to hack things I need to use. I would rather spend my time to hack things I like. IRC is just a tool to communicate, I want to use it, not hack it. I loathe to jump here and there to accomplish tasks that should be done within a second with one click.<p>The biggest problem I observe with many things in the industry is - made by devs for devs. Never for average Joe. Average Joe have no idea about keeping your session attached so you don't loose nick, logs, etc. Neither he cares about that stuff. And honestly - the older I get, the less time I have for this kind of stuff as well. Just make it work or face the failure.