Did Theo Really Fix File Uploading?

Ғылым және технология

A service created by a fellow creator here on KZread aims to solve the problem of large-scale online file storage for developers. I found their approach to be super interesting, so I built my own version of their service to get an understanding of how this works.
Links --
Video by Theo: • I Fixed File Uploading.
My GitHub: github.com/joschan21
Discord: / discord

Пікірлер: 65

  • @t3dotgg
    @t3dotgg Жыл бұрын

    omg this is so rad! Basically 1:1 with how we implemented it. I feel really bad that we didn't get to OSSing the packages before you made this, but they are open source now! I also made a diagram that's hilariously similar to yours, it's linked in the repo under /assets

  • @ouss

    @ouss

    Жыл бұрын

    rad

  • @samuelgunter

    @samuelgunter

    Жыл бұрын

    ok but did you really fix file uploading or nah?

  • @mrapple1000

    @mrapple1000

    Жыл бұрын

    @@samuelgunter He made uploading a bit more "safe" by removing possibility of ghost files. So it might not be completely fixed but it's a great feature to have.

  • @beganovich
    @beganovich Жыл бұрын

    I am not sure Theo fixes or solves anything, to be honest. Just another wrapper on top of something already established. This could be just nice library, but you can't make money off of it.

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Making wrappers around established services seems to be a big trend atm, pretty much what vercel did with KV, Blob & Postgres just a few days ago with a pretty big upcharge

  • @beganovich

    @beganovich

    Жыл бұрын

    @@joshtriedcoding Anyone who's in industry for over 10 years know we will just circle back to VMs and Linux. These services exist just to burn YC VC money, not to be helpful.

  • @aakarshan4644

    @aakarshan4644

    Жыл бұрын

    @@beganovich for e.g. Amazon prime just moved to VMs again from lambda. I think these wrappers exist to exploit some fear of aws/backend/dbs etc for frontend devs.

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    @@aakarshan4644 Heard that too, didn't they say lambda stopped working for them at 5% of their expected traffic?

  • @SonAyoD

    @SonAyoD

    Жыл бұрын

    Where do you hear that sort of information

  • @flavkaabeats4182
    @flavkaabeats4182 Жыл бұрын

    After 1.5 years of front-end training on react, I finally got my first offer. On the very first day, they gave a project for the Next js graphql apollo. Your videos saved me, thx :)

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Dude I'm so happy to hear that. All the best in your journey, thanks for sharing

  • @alexenax1109
    @alexenax11096 ай бұрын

    Loved the video! Great work Josh!

  • @EddyVinck
    @EddyVinck Жыл бұрын

    Hey, since the original UploadThing version is now open source, are you also going to open source your implementation? Could be fun to look around in your solution

  • @kennstack01
    @kennstack01 Жыл бұрын

    Dude, you're motivating me every single day with your videos. Keep going, Love you, Bro!

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    That's very nice to hear man. Cheers

  • @readywhen
    @readywhen Жыл бұрын

    For some type of devs who aren't genius abstract thinkers, especially beginners, all these wrapper services that simply add DX to an existing service, are great because it allows you to get something done --> run into the limitations --> forcing you to study the underlying service --> learning process is MUCH easier because you have already established context. But I guess abstract thinkers learn in the exact opposite order. Study the underlying complexities, then simplify into implementation.

  • @s-sameer
    @s-sameer Жыл бұрын

    It was super interesting to learn how everything works under the hood

  • @AJ-pz8ug
    @AJ-pz8ug15 күн бұрын

    I'm curious to see the final code. Also, I would be extremely interested in seeing a video how you dissected and reverse engineered this code. The steps you made. I know it sounds strange but it would be extremely helpful for new programmers to see your mind at work breaking all the details down.

  • @PpVolto
    @PpVolto Жыл бұрын

    Question do you have a AWS Client library that only generates the request for the presign post url that is edge ready i like to try supabase edge-function but most of the projects i work with need file uploads.

  • @nicholaspasqualetti
    @nicholaspasqualetti Жыл бұрын

    This make's the experience a bit better, but I'll stick with S3. Great video and interesting topic

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Cheers man

  • @maxwebstudio
    @maxwebstudio Жыл бұрын

    Nice Job, and nice video !

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Cheers man

  • @angzar
    @angzar Жыл бұрын

    very cool Josh. would love to see you build something useful with it, hint hint

  • @davidetrevisan7603
    @davidetrevisan76039 ай бұрын

    Not an expert but if the client receive the policy and then is sended directly to an s3 bucket without the validation from the server the client can read and change the jwt before passing the image to a s3 bucket ? Sorry for the dumb question maybe i am missing something. Thanks

  • @kimrop7745
    @kimrop7745 Жыл бұрын

    realistically this just shows how much js devs are trying to be lazy coz aws already provide an sdk for signing and giving you response to use in your frontend to upload files been doing this for ages and never takes me more than 30 mins of work

  • @aakarshan4644

    @aakarshan4644

    Жыл бұрын

    exactly

  • @denissorn

    @denissorn

    Жыл бұрын

    Vercel, Theo etc are selling a product. Sometimes it makes sense to use the products (Eg OpenAI used Next, but not Vercel AFAIK), but I'm pretty sure it's not a good idea for their average target public to focus and rely on their services. The whole "DB are hard", "Infra is hard" etc is IMO a huge BS (not always, but as a 'hype', trend and general message to noob developers.). Yeah, it's hard but so is programming, IT and learning anything not trivial. If you are enthusiast and want to become good as a dev, you learn. If you can become a good dev, you can definitely invest bit extra time to learn basic admin, networking, operating systems stuff and the environment in which you're working. Because it's kinda requirement. If you just want to get the 'shit' done, then obviously even programming is going to become less and less relevant. With all the 'rapid application development' tools, BaaS etc, one will be able, and already is, to build certain types of applications even without writing a single line of code. Many companies are still not comfortable with sharing all the user data with big tech or anyone else, just for the sake of improving DX lol.

  • @CadisDiEtrama000
    @CadisDiEtrama0003 ай бұрын

    When the UploadThing server returns the metadata to Your Server, does Your server then send that to the client to notify that the upload is done? Or does the client immediately know the upload is done when S3 tells it's done?

  • @EvgenyBobkin
    @EvgenyBobkin10 ай бұрын

    would be great to see a full code example with an infrastructure setup based on cdk

  • @universe_decoded797
    @universe_decoded797 Жыл бұрын

    Its not possible for people to make 4k pictures in vercel production. I had to decrease the size by 10x in the client

  • @alice-smith
    @alice-smith Жыл бұрын

    No Github repo for the clone? 🥺🥺

  • @vidyabandi5027
    @vidyabandi5027 Жыл бұрын

    Just thinking about things that are being built these days like vercel's new storage , uploadthing they are all just providing good developer experience wrapped around actual service and then charge money for developer experiences. that's why don't shy way from hard stuff like aws.

  • @sujit_webdev

    @sujit_webdev

    Жыл бұрын

    💯

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    True, especially when it comes to scaling your apps, having knowledge with the underlying providers is invaluable

  • @chinatyu4778
    @chinatyu4778 Жыл бұрын

    Would be great if you can do a tutorial on your 24hr implementation

  • @felipefelix92
    @felipefelix92 Жыл бұрын

    How is putting and getting objects to/from s3 a bad experience? Lol

  • @dueft4479
    @dueft4479 Жыл бұрын

    Theo is incredibly good at marketing / polarizing. The term of "fixing" something while just making sth. easier for devs by e.g. making a library/wrapper is popular by dev youtubers. Unfortunately, it is clickbaity and misleading. The only thing it might fix is the time cost and dx. However, dx and lazyness comes at it's cost. I wonder how much they will charge in the future. Nonetheless great tool.

  • @charliesta.abc123
    @charliesta.abc123 Жыл бұрын

    What is/ was bad/ wrong with the way we've been doing file uploads?

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Nothing, just takes a lot more effort

  • @PedroSanchez-od7cc
    @PedroSanchez-od7cc Жыл бұрын

    repo?

  • @rugisis1
    @rugisis1 Жыл бұрын

    I never really had a problem with uploading to begin with. Not sure what the big problem was or is?

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Seems like for you there is none

  • @rugisis1

    @rugisis1

    Жыл бұрын

    @@joshtriedcoding I guess I’ve just had to do it so many times it becomes relatively easy. All of this is s3 specific right?

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    @@rugisis1 Yeah it becomes a routine task and you eventually get used to the presigned urls and how s3 policies work. This video is s3 specfic, though you could use any other cloud storage provider to wrap (e.g. Cloudflare R2)

  • @iukeay
    @iukeay Жыл бұрын

    This is the only thing AWS amplify has down

  • @Luka_brx
    @Luka_brx Жыл бұрын

    S3 is king

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    very reliable

  • @alir8zana635
    @alir8zana6354 ай бұрын

    is your implementation open source ?

  • @leularia
    @leulariaАй бұрын

    why not post the code it's just aws-sdk, any way !

  • @avivshvitzky2459
    @avivshvitzky2459 Жыл бұрын

    Well I use cloudinary hahahaha if you could do a demo project for uploading multiple images to cloudinary with next, that would be sweet haahha

  • @joshtriedcoding

    @joshtriedcoding

    Жыл бұрын

    Tried cloudinary once and didn't enjoy it at all, not sure if that's gonna be a future topic

  • @chinatyu4778

    @chinatyu4778

    Жыл бұрын

    @@joshtriedcoding what’s wrong with it?

Келесі