i’ve been programming for some time and i’ve always had a solid command of the language i program in. will i have a problem creating complex and scalable applications because i don’t use frameworks?

  • stifle867@programming.dev
    link
    fedilink
    arrow-up
    3
    ·
    9 months ago

    As someone else said, not necessarily. However, it could also be likely if you aren’t used to working with frameworks that it could negatively impact your ability.

    What kind of applications are you envisioning making? A lot of the more complex applications have so many pieces that it would be impossible for you to build it from the ground up.

    Example of an interactive website: How long would it take you to become knowledge enough to implement a web server, handle authentication and storage of sensitive data, manage database connections and queries, handle caching, sends out emails, etc. Then on top of all that you create a machine learning model that receives data using computer vision that interfaces back into your website. Would you be confident that even if it all works that you haven’t made a mistake that an expert has spent years devising a solution for?

    Using frameworks allows you to build upon the expertise of many thousands, millions of hours and gets you closer to building the thing you actually wanted to build.

    • cschreib@kbin.social
      link
      fedilink
      arrow-up
      2
      ·
      9 months ago

      To be a bit pendantic, I think your argument applies more to using libraries than frameworks. You can do everything you describe by using a set of libraries or off the shelf solutions (for DBs, ML, etc), without them being part of an overarching framework, and without reinventing the (whole) wheel.

      It’s clear that using libraries over rolling your own for everything is sound advice (in 99% of the cases). But I think the picture is more nuanced when it comes to frameworks.

      The value that frameworks bring on top of this is that someone has already done the work of gluing two or more disjointed libraries together (e.g., auth and DB). But the drawback is that you also loose the ability to look outside the framework (or you have to do extra work to escape it’s constrained world), and compose things exactly the way you want. Frameworks tend to be invasive, and force you down a certain path, be it good or bad. They are helpful to get to a working solution quickly, but they may constrain you unhelpfully in the long run.