So, randomly someone started talking about Glitch on a server that I moderate, on Discord. This server is about creating Discord Bots - something I not only do, but teach others to do.
The greatest majority of my viewers are young teenagers that have no money to purchase a VPS, no credit card to get free trials (on, say, Azure or AWS), and do not have the sort of technical know-how to understand half of what’s required to run something on Heroku.
I’m always on the prowl for free node hosting. As I said heroku is really complicated (and can’t save files which is a real issue for these sorts of projects), and others like OpenShift or Cloudnode do not support the most recent version of node (these kids are always on the “Cutting edge” so they use async/await and node 8’s util promisify as if it was the new coming of Jesus, I tell you).
So when I heard of Glitch being a free host provided by the people behind Trello and Stack Overflow, I thought finally I might have found a brilliant place to send these budding programmers so they could finally have a home. The rest of this wall of text is my first reactions to using Glitch for the first time.
Fair Warning: I’m a brutally honest person. I’d rather give my honest impression rather than hide behind politeness and small words. This is what I truly think. I don’t want to be hurtful, but I will probably come off that way. I’m sorry that I do.
First off: This horrible, and I mean completely laughable home page you have going. The art itself seems targetted at 3-6 year olds, it’s something I’d see coming from a Scratch website targetted at that age group. Not from a serious company that made Trello and Stack Overflow. I really don’t know what the heck you want to target there but it’s not serious programmers for sure.
Now, after this gut-wrenching reality shifting first impression, I went on to actually click on the “Create a Project” button, which brought me to the editor. And, this was my first good impression: I can start mashing away at the keyboard right away without even logging in, and see the result right away, and that’s pretty cool.
Second good point, is that the editor has code highlight and gives immediate feedback on what’s going wrong. I immediately was under the impression that this was a quality editor. The fact that I could click on the package.json and from there install new packages in a trivial, immediate, easy fashion is amazingly intuitive.
And then it went back downhill. First, I realized that essentialy every single keypress saved the file and refreshed the code. Now, as that might not be immediately an issue with something like express.js, it brings about one first issue. The constant, incessant, flashy save system that causes not one, but 3 different visual changes every character I type (well, 4 with the new character) is immensily distracting. It just deters from the code, will probably trigger a lot of people other than myself, and just basically makes the UI quite literally Glitchy.
Second, as I tried to add something else to the code that wasn’t express code (in reality, some bot code as a test to see if it worked and saved files) I realized that this brought about a massive issues with any code that does anything important on bootup. First, Discord bots have to login with a token and logging in more than 1000 times a day resets that token and emails you saying “yo your bot has an issue mate” (paraphrasing of course). Big problem.
And, unchecking the “Refresh App on Change” from, oddly, my “profile” drop-down, changed absolutely nothing at all because auto-save every character still refreshes it. A completely useless option that does nothing as far as I can tell. Note that changing the “watch.json” file (from what the other user that showed me this told me) did help in that I can refresh it every minute instead. STILL, it’s a big problem in my opinion.
Alright now after all this, I thought “ok there can’t be anything more that’s an issue, right? I got workarounds, everything’s good, I can write up a nice tutorial here?” but NO. Nope. That same user, having been shown that my project’s URL returned what I was expecting, turns around and says “hey by the way nice security token here, might want to hide that”. Because, as it turns out, contrarily to what the readme and homepage seem to alude to, you don’t have to invite people to see your project, they can just straight up open your source code with absolutely no special link or invitation. Just plop right into your code. Like my head did a 360 before exploding into how horrifying that was.
And the horror wasn’t over. I tried to figure out how to make a project secret. Searched on these very forums, no clue (it’s like you guys think your stuff’s actually intuitive, like gimme a break). Searched through the Project settings, nope. Same place as where the “refresh on save” was? nope. Holy shit like really where IS it. Well turns out you have to click “Share” in order to UNshare a project. You know like Windows used to have the “Start” button to Turn off your computer. Nice cue you’re taking from Microsoft circa 1995.
ARG and it wasn’t over. After making the project private, this other person was still in there in the project. And I couldn’t figure out of a way to REMOVE them! There was nothing under share, nothing under their name when I clicked, no way I could figure out. It took them to click on a button to remove themselves.
ALRIGHT! WHEW. I’m done. This covers my initial horrible - and yet somehow, in some places, wonderful - experience with Glitch.com. Now, here’s where I’m a little puzzled. And I mean quite literally, flabberghasted to be honest. You guys claim to be behind Stack Overflow, and Trello - two absolutely brilliant website that I use every day and have no issue with. Trello’s permission system is clear, easy to use, it’s UI is elegant and yet simple. Stack Overflow is also great in that respect, the UI is all intuitive and simple and everything we’d expect from Fog Creek.
So, uhm, at the risk of sounding like an ass if I haven’t already here: What in heaven’s name is up with this service being so inconsistent, hard to use, unintuitive in the Permissions/Settings area, and with a website seemingly developed for my 6 year old daughter? I just can’t wrap my head around this all.
Edit: Now, as blatantly provocative this display of initial frustration is, I am getting a few people to try out the system, though a bit of a walkthrough I made on https://anidiots.guide/other-guides/hosting-on-glitchcom.html - You will perhaps see a small influx of these people on your service in the next few days/weeks.