Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "mithril"
-
So I need to create a nice new web app. Let's look at some cool JS frameworks that I can work with.
*5 mins later* Hm, Angular sounds good, is there any good competitor?
*5 mins later* Wow, React sounds awesome as well. Let me learn it.
Google search result:
"Planning to use react? Check out Vue JS first"
*5 mins later* Ok so vue seems faster than React and much easier to learn. Let me see if Vue is the final choice.
Google search result:
"Angular VS Knockout VS Ember VS React VS Mithril VS Mercury VS Ractive VS Vue VS Riot"
Nope, fuck it63 -
"Should I use Mithril or Durandal?"
"I'm sorry, I don't play Dungeons & Dragons.."
"They're Js libraries.."
Fuck sake, because we needed more reasons for people to think we're nerdy virgins.5 -
"How am I supposed to use this API? Do you expect the client to open that black thing [terminal and curl]? Why doesn't it work in the browser with clicking?"
🤷♀️
- Apparently, I do frontend now.7 -
I think Matlab was only invented to fuck with people. Yeah, let's start indices with 1. Oh, and set copy and paste on Ctrl+W and and Alt+Y.
You didn't save your code? Too bad, the network went down and I lost the license.3 -
So, I just learned that all clients connected with TeamViewer to the same server share all their clipboards to everybody. I now have a lot of passwords that I shouldn't have.1
-
I just trained a neural network to recognize if a word is uppercase. I'm sure it will be useful at some point.5
-
How can you be a Server Administrator for more that 10 years when you don't know what a Terminal/Commandline is and that there's a difference between GET and POST?5
-
This week, they tested my backend and all hell broke lose ON THEIR SIDE. We had an emergency phone call and I proofed that it was not my fault which they even acknowledged.
Today, was a good day.1 -
I hate this company so much. I was tasked to write a simple program wrapped in an API. They gave me freedom of choice to use any language and technology because I said it'll be deployed in docker anyway.
Now, when they gave me the server, it's Windows Server 2016, of course, without docker installed (or even supported in any way). The access is done via TeamViewer for which I receive ID and password by calling a guy.
Oh, and everything runs as admin. "It's easier that way and we always do it like this."5 -
You guys sure know Angular/React/Vue, but have you ever heard of Mithril?
I guess it's a good light weight framework compared to Angular, React or Vue.
What do you guys think?3 -
A year ago I built my first todo, not from a tutorial, but using basic libraries and nw.js, and doing basic dom manipulations.
It had drag n drop, icons, and basic saving and loading. And I was satisfied.
Since then I've been working odd jobs.
And today I've decided to stretch out a bit, and build a basic airtable clone, because I think I can.
And also because I hate anything without an offline option.
First thing I realized was I wasn't about to duplicate all the features of a spreadsheet from scratch. I'd need a base to work from.
I spent about an hour looking.
Core features needed would be trivial serialization or saving/loading.
Proper event support for when a cell, row, or column changed, or was selected. Necessary for triggering validation and serialization/saving.
Custom column types.
Embedding html in cells.
Reorderable columns
Optional but nice to have:
Changeable column width and row height.
Drag and drop on rows and columns.
Right click menu support out of the box.
After that hour I had a few I wanted to test.
And started looking at frameworks to support the SPA aspects.
Both mithril and riot have minimal router support. But theres also a ton of other leightweight frameworks and libraries worthy of prototyping in, solid, marko, svelte, etc.
I didn't want to futz with lots of overhead, babeling/gulping/grunting/webpacking or any complex configuration-over-convention.
Didn't care for dom vs shadow dom. Its a prototype not a startup.
And I didn't care to do it the "right way". Learning curve here was antithesis to experimenting. I was trying to get away from plugin, configuration-over-convention, astronaut architecture, monolithic frameworks, the works.
Could I import the library without five dozen dependancies and learning four different tools before getting to hello world?
"But if you know IJK then its quick to get started!", except I don't, so it won't. I didn't want that.
Could I get cheap component-oriented designs?
Was I managing complex state embedded in a monolith that took over the entire layout and conventions of my code, like the world balanced on the back of a turtle?
Did it obscure the dom and state, and the standard way of doing things or *compliment* those?
As for validation, theres a number of vanilla libraries, one of which treats validation similar to unit testing, which seems kinda novel.
For presentation and backend I could do NW.JS, which would remove some of the complications, by putting everything in one script. Or if I wanted to make it a web backend, and avoid writing it in something that ran like a potato strapped to a nuclear rocket (visual studio), I could skip TS and go with python and quart, an async variation of flask.
This has the advantage that using something thats *not* JS, namely python, for interacting with a proper database, and would allow self-hosting or putting it online so people can share data and access in real time with others.
And because I'm horrible, and do things the wrong way for convenience, I could use tailwind.
Because it pisses people off.
How easy (or hard) would it be to recreate a basic functional clone of the core of airtable?
I don't know, but I have feeling I'm going to find out!1 -
Thank you very much for adding your git repo into our SVN repo. That makes everything very simple now.
-
I spent most of today debugging the server part of my service. The logo on the page didn't show on the local Windows Server.
My first thought was that the static files path is messed up (nginx with Windows path might be confusing, is it D:/file, D:\file, or even D:\\file), so I tried playing with it. But wait, the page works, so it must be something else because css and js and even the fonts are loaded.
Could it be a cache issue? Are the images too big?
No, fuck you Microsoft, Internet Explorer doesn't show webp images. FML6