Amusingly, for https://riot.im we just shelved our WYSIWYG editor efforts after trying two completely separate implementations over the years (one via Draft.js, the other via Slate.js) because: a) it's a nightmare to get right, b) nobody used it anyway (it was optional), c) chat isn't a wordprocessor, d) markdown (commonmark) + floating formatting toolbar is good enough.
Our current editor was written from scratch (codenamed CIDER), and seems to work pretty well for markdown input + some semantic elements like prettified usernames, room names, etc.
You know what else has a terrible WYSIWYG editor? Microsoft Teams. It's kind of sort of like Markdown, except when it isn't, or when it breaks. At least it's a step up from Lync.
All I want is consistent syntax for links, italics, and bulleted lists, bonus points for numbered lists, bold, and code blocks. I don't want to have to click stuff when typing, and I don't want to remember keyboard shortcuts with subtle differences between different services.
Markdown is good enough, yet for some reason, each platform finds it necessary to do something slightly differently. I really don't care about a WYSIWIG editor, as long as I can use straight text if I want. Basically, I want Reddit comments in instant messaging and bug trackers.
That plus a nice table syntax. So many times I need to put a table in a jira comment or chat, but not often enough to remember how for the particular context.
I _so badly_ want Jira and Confluence to support just plain old markdown. Their editor is a nightmare; every programmer where I work hates it but all of management seems to love it.
Confluence used to have it. Or a similar syntax at least. They went WYSIWYG around 2010 or so. It was a dark day; I still remember the plaintive cries echoing from engineer cubes (we had whole cubes back then!).
The new Confluence they are rolling out is pretty good at converting Markdown to WYSIWYG on the fly. Not without glitches, of course, but I'm thoroughly impressed.
It seems every text input box across the product line has a different input method: BB, Jira, and Confluence. You'd think they might standardize with one to be less user hostile.
Jira still has two different WYSIWYG implementations on different pages. On the "classic" issue form, you still enter `{code}this is code{code}`, but if you open that issue in the sidebar of the backlog page, it's Markdown.
Luckily I don't have.to use it anymore. It's 2+ years, but my memory wants to tell me that I hated it, because Confluence worked differently than JIRA.
We are using Gitlab now. It's much more limited than JIRA, but for what it does much more coder friendly.
On the topic of the text box, gitlab saves the content if I start typing, get distracted, go somewhere else and come back later. That's handy. Unfortunately there is some inconsistency that it doesn't work everwhere, was it so that in Wiki pages it didn't work?
Not to even mention the annoying one-click-to-edit fields that lose your scroll position in the ticket and you cannot escape away. I'm furious every time this happens.
This is my experience as well. Moving over to their new editor has left the markdown support in limbo between different views. I.e it varies between the view when creating an issue, editing an issue and commenting on an issue.. It's really infuriating. I asked them about it on Twitter and it's apparently a work in progress?
It can, but dealing with raw html, so white / black listing html tags is incredibly difficult and error prone.
I think it'd require whole team that'd maintain that and a lot of tests on different browsers cuz browsers try to "fix" html and it may vary between them, meanwhile it may lead to some bugs(probably)
I'd suggest to try stay away from html as hard as you can and use those cool *down parsers instead :P
Oh man, Lync. The re-skin of MSN Messenger that nobody wanted.
I remember when I couldn't change my status from "Away" for some reason. On my computer it would always show me as "Online," but to everyone else I had been away for 300+ days.
The fact that this industry turned to a proprietary low-quality solution like Slack when Riot/Matrix have already existed tells the full story about what a bunch of incompetent idiots we all are.
Everyone frustrated with the new Slack input box deserves what they got. Me included.
The reason for Slack's success is probably because it's a "turn key solution": you register your company, invite your employees, enter your CC, and you're good to go.
With a lot of these open solutions things are more complex. I think we should really focus on providing a good UX here if we want more adoption.
(also, I don't know if Riot is that much better; opening https://riot.im/app/ makes Firefox use 100% CPU and my laptops fan spin; I closed it after 10 seconds of just a loading animation)
https://modular.im gives a turnkey hosting solution for Riot/Matrix for what it’s worth.
Riot should be lighter weight than Slack, but launch (particularly if you haven’t used it in ages) can be slow, plus we’re chasing a startup perf regression on firefox atm. The main reason Riot’s better is that you can use your own server, participate in an open network, and have control over the software if some feature gets pushed out that you dislike. And you get E2E encryption :)
I think the messaging on modular.im could be a lot better, IMO. I don't know what the relations between all the different organisations/people are here, but having all of "Matrix", "Riot", "Modular" is just confusing branding/marketing. It would be much better to have just "Matrix protocol", "Matrix self-hosted", and "Matrix hosted", for example.
Right now, it's not even immediately clear that hosted Matrix is an option from just looking at the Riot and Matrix websites.
Just my 2c from a casually interested potential Modular customer.
It's true this is how a typical centralized commercial solution would be marketed. However, it's a bit trickier for Matrix since it's an open protocol with a neutral governing foundation and many client implementations.
Although New Vector (the company behind Modular) is currently driving most of the development of Matrix and Riot (the first and reference client), matrix.org itself is supposed to be a neutral network-related site. Notice the remark that it's controlled by the Matrix Foundation at the bottom of the page, and not New Vector.
That said, Riot does have a reference to Modular, but it's buried here: https://about.riot.im/free. I'd personally be fine with it being displayed somewhere more prominently (or at least under a more intuitive section name than "Free!"). I also think it would also be a good idea if the Riot page mentioned Matrix (or the Matrix logo) somewhere above the fold.
I don't think it's sad; I've worked for a lot of small companies. Spending a few days learning and setting up tools is a lot of investment, never mind maintenance. I want to focus on creating business value, not "plumbing" like setting up chat tools.
Small companies sometimes turn in to large ones, but migrating from the tools everyone is used to is often not received well. There is a lot of inertia here.
> it's kinda sad that it has come to be that tech companies will consider installing matrix "complex".
I go to the Matrix website and there's a lot of "blah blah blah" about how it's an open network, a decentralized messaging protocol yada yada yada" Nothing about "how to actually start using the thing"
> More importantly, you don't need to get IT or Procurement involved to try slack.
Are you implying you do have to do so to try out Matrix? You can simply use the web version of Riot hosted here (https://riot.im/app) and sign up for a free account on matrix.org.
There's a link to this accessible from the "Try Matrix Now" page you referenced above. Admittedly, it seems the words inviting you to try Riot "on the web" were linked to https://matrix.org/docs/projects/client/riot instead of to https://riot.im/app/. That's probably a mistake and should be fixed.
You can create your own rooms (which are like IRC channels) which can be invite-only.
The counterpart to Slack workspaces/"servers" would be Matrix communities. They allow you to group a bunch of rooms and users together for discoverability. The feature exists today and is usable but still not as polished as one would hope for, but I think work on this is coming up soon.
In particular, I think better community front pages (describing the community, supplying related URLs and such) and access control (such the ability to restrict joins to community rooms to community members without having to invite each user to the room separately) are things that will be worked on.
sorry, i think if a tech company can't maintain an install for something that is crucial , then it shouldnt be a tech company.perhaps it s a marketing shop or sth.
it's as if tech is delegating so much away that in the end there will be nobody left willing to actually do the tech
Maybe consider that we have literally hundreds of priority tasks, all of which are legitimately very important, and that while we can spend the time necessary to install and maintain non-turnkey solutions, we’d really prefer to work on one of the other priorities with that time.
There’s no such thing as general tech priorities, it’s just an amalgam of a bunch of individual priorities. In most of the cases I’ve seen those priorities are very reasonable. If you start a tech company and prioritize fiddling with internal messaging software over building your product, you’re going to fail. Prioritizing tech doesn’t mean yak shaving every random task, it means outsourcing as many non-essential tasks as you possibly can so that you have as much time and attention as possible for the one specific technical task that matters: building your product.
I don't think priorities shifted away from tech, they just moved up the value chain. Tech companies should focus their limited resources on building their core product, not managing "plumbing" like email servers or chat.
I can definitely maintain an install of whatever is needed. Why would I use time doing something that doesn't create value over and above just using a paid for solution?
to be fair, Slack predates Riot (and Riot has only got properly usable as a Slack replacement since hitting 1.0 in Feb this year).
But yes, very frustrating to see folks forced by a proprietary product to suck up something like the Slack editor change when there are FOSS options where you can just roll it back, set a config flag to get what you want, or worst case fork it.
There is a chicken-and-egg problem with matrix. It's clearly nice, but the more people use it, the easier it will become to install/maintain. That's how wordpress wins over commercial blogging platforms.
One thing i found it hard to do is integrate matrix with an existing database of users. It would be perfect for our community chat.
So true, I was annoyed all day and didn't know why. Had no idea they had "upgraded". I thought I had inadvertently hit a toggle that put it out of adult mode. I was too busy to fuss with it. Every time I went into that box I came out a little more angry, a little older, and farther from the feeling of good flow that Wednesday typically brings.
It's even sadder because Org-Mode demonstrated how to do WYSIWYG right.
Apply the styling in real time, but then also show the formatting characters around it! That way you lose all of the weird WYSIWYG edge cases (will this character I type at the edge of a bold segment also be bold?), and you also teach WYSIWYG users Markdown in a natural way.
Ugh. No. This really breaks up the flow of the text.
I’m sure it’s fine for org-mode’s intended audience, but for people not from a coding background, it’s horrid. And there’s no need to “teach WYSIWYG users Markdown” when WYSIWYG is fine for them.
In my experience it doesn't particularly break up the flow of text. And as for "people not from a coding background", inline styling with visible formatting characters is exactly how Whatsapp implements its rich text editing. Considering it's an app with a billion and a half MAU, I think you might find that you have an unrealistically low opinion of non-developers' intelligence.
No, it doesn't. It's just syntax highlighting for markup. Disappearing formatting characters, which is what I switched Org to myself, is another story - it has some of the problems introduced by WYSIWYG.
It could remove the Markdown once the message has been sent, and only show it in editing mode. Then readers wouldn't have their flow disturbed, and authors could edit their messages in a sane way.
We chose ProseMirror after doing a lot of research (TinyMCE, Slate, Draft, Medium toolbar) and have been very happy with what it’s enabled us to do so far. We’ll probably write a blog post about it at some point.
Riot's CIDER is pretty much an internal codename though, and it's not split out (yet) for anyone else to use. So hopefully it's not too bad a namespace clash.
Our current editor was written from scratch (codenamed CIDER), and seems to work pretty well for markdown input + some semantic elements like prettified usernames, room names, etc.
https://github.com/matrix-org/matrix-react-sdk/blob/develop/... tells all about CIDER, and https://blog.riot.im/riot-web-1-5/ gives the full context if anyone cares :)