• 3 Posts
  • 333 Comments
Joined 1 year ago
cake
Cake day: December 13th, 2024

help-circle
  • Yeah, I am one of those open source devs who doesn’t get paid for it. But I can’t really say it’s the fault of normal users. They’re just people trying to get by. The fault really lies in corporations using open source without supporting it. Some corporations do give back and support communities, but a lot just take and don’t give anything back.

    Personally, most of what I write for my company, SciActive, is open source. The only thing I don’t release is my actual product (Port87), but everything I’ve built in order to build it (the ORM, Nymph.js, the UI library, Svelte Material UI, the WebDAV server, Nephele) are all open source.

    I do get users shitting on these projects sometimes, but the majority of communications I get are respectful and gracious. It does sour the experience when someone acts rudely, but I try to not let them get under my skin. Some devs have trouble not being bothered by it, and for them, the rude users and lack of compensation are so much worse.

    What keeps me writing open source though is that I just genuinely have a passion for writing code. I recently built a full text search engine into Nymph, and the whole process was so much fun. I think that’s what powers open source, genuine passion for what we build.

    (There’s one project that gets shit on a lot more than my others, QuickDAV, which I’ve never really understood. A lot of people say they’d rather use SyncThing, which is fine, but they have different use cases, so it just baffles me. It’s like someone looking at Inkscape and saying they’d rather use GIMP.)


  • Thank you for being understanding. I shouldn’t have stated it as bluntly as I did either, so I think you were justified in taking it as condescending, and I’m glad we’re seeing each other’s view more clearly now. I think it’s awesome you’re getting into Linux, and even if you don’t ultimately do it, even considering self hosting is awesome. Getting Proxmox and your own NAS up and running is awesome too, btw. Something you should be proud of. I do want Linux and self hosting to be a welcoming space, so I’m going to try in the future to be more welcoming.

    When you’re ready, you can email me at hperrin-friends@port87.com about my offer. The offer stands any time you feel ready to dive in. :)


  • Again, you just sound like you’re not interested in self hosting. I wasn’t even that condescending to you, but you took it that way. You said you don’t want to learn how to self host in a community about self hosting. Like, imagine if someone went into a community about bicycling and was like, “Well, I don’t want to ride bikes, but I like motorcycles because I don’t have to pedal.” You should expect a certain level of disregard in a community if you’re going into that community saying you’re unwilling to learn the basics of what that community is about.

    If you’re not interested in self hosting, I’m not saying you’re not welcome here, because a. you are and b. I don’t moderate this community anyway, but I genuinely wonder why you’re here. You did say you might be interested in the future, so…

    This is a genuine offer: if you want to learn how to self host, I will get on a video call with you and teach you how to set up some services on your home network and open them up in a secure way. I write and run my own servers, and have for well over a decade, so I am qualified to teach you what you need to know, if you want to learn.


  • Yes. You could learn everything you need to know by watching a 20 minute YouTube video, but you’d rather use a paid product instead. That’s, like, the definition of a skill issue. The issue isn’t that the software is hard to use, it’s that you refuse to learn how to use it.

    And that’s not the fault of Jellyfin, because the “ease of use” of Plex is because it’s a paid product. They can afford to run servers to make everything work for you without having to put in any effort to learn. You’re using their servers to make it easy for you, and you’re paying to do it.

    It’s fine if you don’t want to learn to set up a service, but it does make me wonder why you’re commenting on a self hosting community. It seems to me like you’re not interested in self hosting. (Not trying to assume, but what you said is not what I would associate with someone who likes to self host.)







  • Here’s my thought process: plus is for numbers and strings, so it’s gonna convert the arrays to either numbers or strings. If it converts them to 0, the answer is 0, if it converts them to 1, the answer is 2, if it converts them to strings, the answer is “12”.

    You know what I didn’t say? [1,2]. Because plus is not for array concatenation. The question is meant to make you think you’ll get [1,2], because why else would you use plus on arrays?

    In a language that uses plus for concatenation, you’ll see that kind of code all over, and know what you’ll get. But you never see that in JavaScript, because that’s not how we concatenate arrays.


  • Ok, except I did predict it. It turns them both into strings and gives you “12”. I checked it. But I didn’t mean predictable as in, you inherently know what it’s going to do, I meant predictable as in, it will follow the same basic rules in each circumstance.

    So, should web pages be prone to crashing if everything isn’t perfect? I don’t know if you remember XHTML, but that was basically what happened with that. You have a “div” within a “p”? Page crashed. You have an unclosed “span”? Page crashed. XHTML was abandoned because is constantly broke the web.

    Web technologies are supposed to be resilient, so throwing TypeError is the last resort for something that absolutely cannot work, like trying to add to a Symbol. Since nothing from the user is ever a Symbol (there’s no input that can give it, and it can’t be stored in JSON), it’s acceptable to throw a TypeError there.

    JavaScript is meant to be fast and resilient. Its type conversions make sense when you consider those goals.


  • I mean how can you define a sensible way to subtract Infinity from an array, or add an object to a string? The way JavaScript defines it is predictable, easy to compute, and handles bad code gracefully, which is a good tradeoff between doing something like matrix arithmetic on a CPU and just straight up crashing. If you’re doing silly things like that, you should know how JavaScript coerces types, but I don’t do silly things like that, so I don’t really care how JavaScript would handle it. Every language will do silly things if you force it to. That doesn’t make it a bad language.

    Do you feel the same about C because C lets you take pointers of pointers of pointers until you’re addressing random memory in an unpredictable way? No, because it’s silly to do that.






  • I would assume [1] + [2] would give you either 0 or 2, but maybe "12". But why you ever write that? I’ve never bothered to memorize what happens there because I would never write that. The plus operator is not for arrays. It’s for numbers and strings. If you’re trying to concatenate arrays, there’s a function for that. Would you do that in Java or C? People trying to make JavaScript do silly things just because it refuses to crash when you do then calling the language bad for it is just silly to me.


  • Have you ever looked at the original JS implementation? It looks nothing like what JS is today. Saying the bones were spat out in a couple weeks is like saying Linux was developed in a few months.

    TS transpiles to JS, and any JS is valid TS. Take any TS, remove the types (and some syntactic sugar) and you have JS. I feel like if you like TS but not JS, you just don’t like loosely typed languages. That’s just a preference. It doesn’t make a language bad.