While getting quotes for a site recently the question of filesystem came up a lot and I admittedly didn’t know much on the subject.

Doing some research the popular choices appear to be either PHP frameworks or less often ASP.NET frameworks.

Among popular PHP frameworks I see Laravel come up a lot, open source is certainly more reliable than something maintained by Google, Facebook, or Amazon but currently the Laravel maintainers are pushing AI really really hard.

So is the only real solution to learn to program with PHP without using any frameworks or libraries? Can anybody who has implemented a secure fileserver for a website tell me how difficult or easy it would be to learn?

  • UlrikHD@programming.dev
    link
    fedilink
    arrow-up
    3
    arrow-down
    1
    ·
    1 day ago

    I’m not sure if you’re masterfully trolling, or genuinely asking for help. But if you’re making a post asking for help, you should be open to feedback and willing to learn from the help provided.

    I’m locking the post as there’s seems to be nothing but arguing with no learning involved. Feel free to send a DM if you want to discuss the decision.

  • spartanatreyu@programming.dev
    link
    fedilink
    arrow-up
    30
    arrow-down
    1
    ·
    3 days ago

    What do you mean “filesystem”?

    That’s the data format that you’ll find on a USB flash drive, hard drive, ssd, etc…

    It has nothing to do with web development, they’re completely separate things.

    What you’re asking makes as much sense as asking: “Which temperature smells best? Words or tired?”

    You’ve gone down the wrong road and we’re not sure how you got there.

    You’ll have better luck if you explain what you’re actually wanting.

        • FiniteBanjo@programming.devOP
          link
          fedilink
          arrow-up
          1
          arrow-down
          12
          ·
          2 days ago

          While getting quotes for a site recently the question of filesystem came up a lot and I admittedly didn’t know much on the subject.

          Doing some research the popular choices appear to be either PHP frameworks or less often ASP.NET frameworks.

          Anybody who doesn’t understand what is being discussed after reading that should not be trying to answer, I don’t really have a lot of time to educate every single passerby on the most basic of terminology.

          • Kissaki@programming.dev
            link
            fedilink
            English
            arrow-up
            12
            arrow-down
            1
            ·
            2 days ago

            The quoted text makes no sense. It has gaps. And the comment you dismissed seemingly pointed that out.

            Websites don’t have a file system. They serve content as responses.

            PHP is not a filesystem. ASPNET is not a filesystem.

            You could be talking about managing files, you could be talking about sourcing web responses from local files, or you could be talking about something else.

          • doeknius_gloek@discuss.tchncs.de
            link
            fedilink
            arrow-up
            9
            arrow-down
            1
            ·
            2 days ago

            I don’t really have a lot of time to educate every single passerby on the most basic of terminology.

            A simple search could do you a world of good, pal. I’d start at the Dunning-Kruger-Effect and go on from there.

      • Caveman@lemmy.world
        link
        fedilink
        arrow-up
        6
        arrow-down
        1
        ·
        2 days ago

        Honestly, that was a perfectly reasonable question and you’re being rude. Pretty much every programmer knows what a filesystem is but a filesystem framework is not clear.

        I would have pitched in with questions and suggestions but since you’re being a dick I won’t.

      • Phoenixz@lemmy.ca
        link
        fedilink
        arrow-up
        7
        arrow-down
        1
        ·
        2 days ago

        Your question makes little sense, and then you tell people to search for… Something?

        Sure! Go to a sub where people are trying to be helpful and give an attitude when they ask you to make sense

        • FiniteBanjo@programming.devOP
          link
          fedilink
          arrow-up
          1
          arrow-down
          10
          ·
          2 days ago

          If you know what PHP, Laravel, NodeJS:FS, etc are, or if you have a rudimentary understanding of tech stack terminology, then you know what FikeSystem refers to in this context. This post has answers and discussion before these sealioning “I dOn’T unDERsTaNd” trolls came in and started brigading.

          If you don’t know then you cannot and should not answer this question.

          • VonReposti@feddit.dk
            link
            fedilink
            arrow-up
            9
            arrow-down
            1
            ·
            edit-2
            2 days ago
            • PHP: Programming language, not a file system
            • Laravel: A web framework built on PHP, not a file system
            • ASP.NET: A web framework built on .NET, not a file system.
            • NodeJS: A JavaScript runtime, not a file system

            Node:FS is a module for NodeJS which is the first time you have mentioned something that interacts with file systems. It is NOT a file system, but a way to work with a file system. All these programming languages and web frameworks you’re mentioning has a way to interact with file systems. You shouldn’t choose your tech stack based on this, you should choose it on all it’s other properties where they actually differ.

            With your less-than-rudimentary understanding of IT and programming I’d suggest you avoid looking like an idiot by arguing with experts and just accept the free help and corrections that are offered. If you keep being an asshole when people try to understand what you mean because your explanation is all over the place, no one will offer their time, especially not for free.

              • spartanatreyu@programming.dev
                link
                fedilink
                arrow-up
                7
                arrow-down
                1
                ·
                2 days ago

                Bro, you need to stake a step back and take a few breaths.

                if you have a rudimentary understanding of tech stack terminology, then you know what FikeSystem [sic] refers to in this context.

                No we don’t, because your context is incompatible with reality.

                A filesystem is just a way to format data.

                A filesystem framework is a way to create/manage a format of data.

                Neither have anything to do with Web Development.

                NodeJS:FS […] It is literally called a FileSystem in the docs, take your complaints up with them

                The first sentence on their docs explicitly say: The node:fs module enables interacting with the file system in a way modeled on standard POSIX functions.

                It’s not a file system, it’s a module for interacting with a file system.

                Same thing with Laravel:

                Laravel provides a powerful filesystem abstraction thanks to the wonderful Flysystem PHP package by Frank de Jonge.

                An abstraction (like everything else in laravel), not a file system.

                If that still doesn’t convince you that Node and Laravel are not file systems or file system frameworks, consider the fact that Node also has a module called OS and Laravel has a module called database. Is node an operating system? Is Laravel a database?


                Please be polite, lest you risk self-burn ironies such as these:

                A simple search could do you a world of good, pal.

                Anybody who doesn’t understand what is being discussed after reading that should not be trying to answer, I don’t really have a lot of time to educate every single passerby on the most basic of terminology.

                I’m an ameteur at best.

      • ExperimentalGuy@programming.dev
        link
        fedilink
        arrow-up
        8
        arrow-down
        1
        ·
        2 days ago

        I don’t think what you asked made sense either. I initially thought you were going to ask a question about different file explorers because thats a relatively common topic, but what you asked made no sense.

        • FiniteBanjo@programming.devOP
          link
          fedilink
          arrow-up
          1
          arrow-down
          8
          ·
          2 days ago

          Try reading the post and you will see it’s about finding a filesystem tool used in web development such as Laravel or NodejsFS. There is no ambiguity here, this isnt about thumb drives or operating systems.

          • Caveman@lemmy.world
            link
            fedilink
            arrow-up
            2
            arrow-down
            1
            ·
            2 days ago

            That’s a dumb reply. If you count fs from nodejs then you can literally Google “how to [read/write/stream] file in [pretty much any language”.

  • Pieisawesome@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    1
    ·
    2 days ago

    Dude, you need to chill out and stop attacking people who are attempting to help by asking simple questions to try and HELP.

    You should use fuse and c++

    • FiniteBanjo@programming.devOP
      link
      fedilink
      arrow-up
      3
      arrow-down
      8
      ·
      3 days ago

      So, I am no expert, but, usually “tech stacks” have 2 or more parts:

      1. Frontend Framework: Vue, Angular, React, etc

      2. Backend Frameworks comprised of Content Delivery Network (CDN) such as CloudFlare, Database such as MondoDB or MySQL which efficiently stores and serves non-binary data, and a FileSystem which efficiently stores and serves binary data such as images and videos.

      The benefits of using an isolated FileSystem solution is that it can be much more secure and easier to implement.

      But idk, I’m an ameteur at best.

      • expr@piefed.social
        link
        fedilink
        English
        arrow-up
        16
        arrow-down
        1
        ·
        edit-2
        3 days ago

        I think you’re using the word “framework” quite broadly here. Cloudflare and databases aren’t “frameworks”. The word is perhaps ill-defined, but generally it means something like “an opinionated library ecosystem in a programming language”. React, Vue, and the like are Javascript “framework” libraries for making what are called Single Page Applications. They are hardly the only way to make websites, though, and some (including yours truly) believe them to much more trouble than they are worth for most purposes.

        Laravel, Django, Ruby on Rails, etc. are all backend/server-side “framework” libraries for creating Multi-Page Applications, or in other words, the model for which the web was originally designed (that is, you get HTML and follow links embedded in that HTML to get to new pages).

        At any rate, a “file system for a website” is quite vague. It really depends on what your goals are. You have to define what is you’re trying to do and who it’s for. It’s not particularly difficult to spin up an sftp server to allow remote access to files if all you care about is remote copying, but I’m going to assume you mean a file server served over HTTP(S).

        There’s about a million tools out there for serving up static files, getting a directory listing, etc., and it really depends on your goals. It’s fairly simple to configure nginx to serve up a directory with a very rudimentary index if you don’t need anything fancy (nginx can do fancy too, ofc, just takes more work than what comes out of the box). I personally like Caddy over nginx these days, though. Caddy in particular requires very little configuration, honestly.

        But yeah, without more information about what is is you’re trying to accomplish, it’s difficult to give specific recommendations.

        • FiniteBanjo@programming.devOP
          link
          fedilink
          arrow-up
          2
          arrow-down
          22
          ·
          3 days ago

          Nah, disagreement on semantics. I used Framework to broadly describe codebases which do a ton of work that a developer can rely on without building their own from scratch, which is accurate. Every mechanism or benefit that Cloudflare CDNJS provides for the user could technically be done by the developers themselves, as unlikely as that is.

          • expr@piefed.social
            link
            fedilink
            English
            arrow-up
            14
            arrow-down
            1
            ·
            2 days ago

            I mean, that’s simply an incorrect definition and not what anyone means when they use the word, speaking as a senior engineer working on web applications over the last 10 years. Such a broad definition is practically meaningless since it encompasses pretty much everything in programming.

            A database is 100% not a “framework”, it is a software application that allows clients to retrieve data by supplying queries in a dedicated DSL.

            cdnjs is also decidedly not a framework, nor is any other CDN. CDNs are an infrastructural component in networking that allows content to be cached in servers that are geographically distributed over large distances in order to reduce the effects of network transmission time (since content can be served from servers closer to the client). It has very little to do with programming.

            A framework is a library (or possibly, set of related libraries) in a programming language that aims to be very “batteries-included”, insofar as the programmer gives up precise control over the program they are creating in exchange for having many commonly-needed things for the task (typically, SPAs or web servers) already done for them. The reason I said it’s perhaps ill-defined as a word is that the line between what counts as a library and what counts as a framework is a bit blurry.

            • FiniteBanjo@programming.devOP
              link
              fedilink
              arrow-up
              1
              arrow-down
              11
              ·
              2 days ago

              You tell me my definition is wrong and then confidently churn out the same definition.

              You can code the mechanisms for a CDN. You might not have the servers to run it on, but you can. It is a framework

              • expr@piefed.social
                link
                fedilink
                English
                arrow-up
                7
                ·
                2 days ago

                It is not at all the same definition. A CDN is not a programming language library, which is how I had defined frameworks (with other qualifiers). All frameworks are (one or more) libraries in a programming language. A CDN is, ultimately, a network of running servers that serve up content. It’s a distribution mechanism for content, not a method of building software applications (which is what frameworks are). You can use a CDN to deliver the code for a framework/library to a web browser (or anywhere else, really), but that is not the same as saying that it is a framework itself, because it is not.

                A bunch of people in this thread, including myself, have been trying to help answer your original question (part of which is clarifying terms, since you seem to be confused about how things work, which is understandable for someone inexperienced), and yet you’ve been very combative and lashing out at people in spite of describing yourself as an amateur. When experts in the field correct your misunderstandings, it’s wise to learn from the information you’re given rather than telling everyone that they are wrong. Your attitude will not get you very far and will simply make people unwilling to help you learn.

                • FiniteBanjo@programming.devOP
                  link
                  fedilink
                  arrow-up
                  1
                  arrow-down
                  8
                  ·
                  2 days ago

                  A CDN is not a programming language library

                  You think they were just magicked into existence? Nah, they were programmed, and you can use specific syntax to call upon their functions.

          • Caveman@lemmy.world
            link
            fedilink
            arrow-up
            4
            arrow-down
            1
            ·
            2 days ago

            That’s just straight up wrong man. A lot of words in programming are not just semantics, they’re concrete shorthands for very specific things.

      • python@lemmy.world
        link
        fedilink
        arrow-up
        5
        ·
        2 days ago

        I’m not quite sure what you’re looking for, but the term “non-binary data” is sending me haha

        Anyways. I’ve used Laravel for about a year now, and it’s …fine. I don’t like the push towards AI slop or their constant attempts to push their own cloud services or whatever onto you either, but it hasn’t been much of a hassle to just ignore that part.

        What I like about Laravel is just how opinionated the framework and the documentation is (like how it wants you to build Factories and set up proper test data when making new database Entities, and how the Inertia routes encourage a clear schema). It’s also been pretty pleasant to get the basics right out of the box, like proper auth and login functions. And I like the kind of stuff that you can do with blade templates! I’m using them to serve dynamically generated SVG files and it works really well.

        I haven’t really needed any sort of crazy file management things though, so my opinions might be completely irrelevant to your use case. In fact, my Laravel project is really not set up for any sort of large data, since that’s just not a thing I need. I’m running it in an AWS EC2 instance (the smallest one, as that’s included in the AWS Free tier) with just an sqlite database right in there. If I suddenly wanted to manage files in my application, I’d probably be looking at doing that with AWS S3 buckets. Which would work I guess, but I personally really prefer interfacing with S3 buckets via AWS Lambda, and those work much better with Node, Go, Ruby or Python. I’d probably be leaning towards Node, since that’s just what I’m most familiar with. Doesn’t mean that it’s the choice I’d recommend, because your project might have completely different technical requirements! Web dev is a confusing clusterfuck of edgecases.

        If Laravel looks like it works for your requirements right now I’d say go for it. No one knows what the future looks like - it could be completely enshittified in a year, or it could be totally fine because the maintainers have just been riding the AI hype for marketing clout while still making a decent framework. If you stick to decent coding practices, switching to a completely different framework really won’t be the end of the world.

        Alternatively, since you’re looking to hire someone for your project, maybe just focus on finding the most capable engineer you can and let them choose whatever tech stack they seem fitting? They’d probably have a much better understanding of your requirements and could make choices that work well together contextually.

        • python@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          2 days ago

          oh, I also just remembered: You might like Zig! They’re a C-based language, not a framework, but they’re staunchly anti-ai. If complying with your moral compass is something you want to pursue (which I think is valid, I think most devs wish they had the breathing room to do that) you might want to consider it!

          I’ve looked it up and apparently there is a zig-based Web framework called Jetzig. I have never used it or heard about it before, but at first glance the functionality it offers seems solid enough.

  • Rimu@piefed.social
    link
    fedilink
    English
    arrow-up
    4
    ·
    3 days ago

    Laravel has been around for a long long time (decades?) so I’m pretty sure whatever AI stuff they’re adding are optional packages that can be ignored if they’re not for you.

    • FiniteBanjo@programming.devOP
      link
      fedilink
      arrow-up
      2
      arrow-down
      4
      ·
      3 days ago

      If somebody could confirm or deny this with more certainly I would appreciate it.

      TBH there really is no trust to be given when the maintainer is a slopper, so I would worry about potential updates ruining the whole project.

    • FiniteBanjo@programming.devOP
      link
      fedilink
      arrow-up
      1
      arrow-down
      1
      ·
      3 days ago

      Are they maintainable long term?

      EDIT: Seaweed appears to sell storage used for the project? Can it not be selfhosted?

      EDIT 2: RustFS: “The fast data foundation for the AI era.”

      • tapdattl@lemmy.world
        link
        fedilink
        arrow-up
        5
        ·
        3 days ago

        They can both be self hosted, I self-host Seaweedfs personally as part of my backup strategy.

        As far as rustfs’s “The fast data foundation for the AI era.” I believe that’s just marketing to illustrate how capable their product is. Looking at their github contributors history the main contributors all appear human

  • Caveman@lemmy.world
    link
    fedilink
    arrow-up
    1
    arrow-down
    2
    ·
    2 days ago

    Uhh, just use the HDD and file commands with any service? It’s not forbidden to just serve a whatever file from a REST endpoint.

    If your not doing a Dropbox virtual filesystem or forced to work with ftp/sftp then just make a whatever endpoint and send back a file instead in any language/framework.

    • FiniteBanjo@programming.devOP
      link
      fedilink
      arrow-up
      1
      arrow-down
      4
      ·
      2 days ago

      How about I use a proper FileSystem framework and have proper discussion with people who do? Why are there so many people trying to dismiss the entire discussion? Probably just one guy and his alts, maybe a Tankie I pissed off.