Speed coding a new feature for my app (with my friend) - Mini Hackathon + learning AWS S3

Sdílet
Vložit
  • čas přidán 14. 07. 2024
  • Hi my name is Chris and I build productivity apps (Mogul, Ellie and Luna) 👋
    In this video my friend and I work on the new task attachments feature for Ellie. We show the behind the scenes of one of our "mini hackathon" nights, talk about learnings from working with S3 and more :)
    Check out my Twitter, Instagram and Tiktok where I post way more frequently and build in public 👇
    Twitter/X: / raroque
    TikTok: / chris.raroque
    Instagram: / chris.raroque
    My apps / Startup ✌️
    Ellie (daily planning app): ellieplanner.com/
    Luna (budgeting app): lunabudgeting.com
    Mogul (personal CRM): mogulnetworking.com/
    Aloa (my startup): aloa.co
    Finney's twitter: x.com/finnius25
    Timestamps:
    0:00 - Intro, hackathon, friend intro
    1:07 - Picking what to work on (task attachments)
    2:02 - Quick brainstorming / data structure
    2:45 - Choosing AWS S3 (instead of Firebase storage)
    3:42 - 2 hours in (going over what we worked on)
    4:48- Learnings about S3 (we used it wrong)
    7:10 - Final data structure / more UI updates
    11:05 - Quick break (come pick up a pizza with us)
    12:02 - Deploying the last few changes (attachment clean up)
    14:40 - Outro / thank you for watching :)
    #appdevelopment #dayinthelife #softwareengineer #startup #softwaredev #indieappdeveloper #dayinthelifecoding #codewithme #buildinpublic #vlog

Komentáře • 70

  • @localkels
    @localkels Před měsícem +14

    This was probably my favorite episode so far. Loved the cozy Saturday night vibes. Bring back Finney!🙌

    • @raroque
      @raroque  Před měsícem

      So glad you liked it Kelsey! 🙌
      I think your comment is going to make his day 😂 will bring him back for sure

  • @raroque
    @raroque  Před měsícem +10

    Just wanted to say thank you for all the support on all my videos ❤if there is any topic (technical or not) that you want covered please let me know!

  • @mshstudio2148
    @mshstudio2148 Před měsícem +2

    Love Finney smart as hell

  • @brianruizy
    @brianruizy Před měsícem +5

    first time here, really like the vibes! And your workspace is so nice 👍

    • @raroque
      @raroque  Před měsícem

      Appreciate that! 🙌🙌 glad to have you following along :)

  • @adrianmurage
    @adrianmurage Před měsícem +7

    I love how real this is. And it shows me what your work looks like as you go ❤
    Great job man!!!

    • @raroque
      @raroque  Před měsícem +1

      Glad you liked it! Thanks for following along :)

  • @Graveness4920
    @Graveness4920 Před 4 dny +1

    suugestion- create a assests manager because sooner you would you end with requirements like show storage used per customer, upload files for profile photo, project icon, attachements in comments and what not.

    • @raroque
      @raroque  Před 4 dny

      Asset manager on the user side? Or on the admin (my) side?
      Regardless this is a great idea!

    • @Graveness4920
      @Graveness4920 Před 4 dny +1

      @@raroque server side, so that you can implement access control, virus detection or nsfw detection.

  • @jyoutir
    @jyoutir Před měsícem +1

    i came accross ellie planner recently and im astouneded by how much transparency you have as a dev, this is incredible. love the work you are doing, huge inspiration

    • @raroque
      @raroque  Před 13 dny

      Thank you so much for watching and for the kind comment :) 🙏

  • @_jormanespinoza
    @_jormanespinoza Před měsícem

    Great content!

  • @akidnamedcarl9006
    @akidnamedcarl9006 Před měsícem +1

    Awesome video! It was fun getting to watch the BTS process of your app. Glad you’re back posting vids!👌

    • @raroque
      @raroque  Před měsícem +1

      Good to be back! 🙌🙌🙌 thanks for following along :)

  • @Mohamed_A98
    @Mohamed_A98 Před měsícem +1

    I absolutely enjoyed this video! It gave fantastic insights into your development process. Keep up the great work! 🙌🏾

    • @raroque
      @raroque  Před měsícem +1

      Thanks for watching! Lmk if there is anything you want to see :) 🙌

  • @tapiacarlos1
    @tapiacarlos1 Před měsícem +2

    Dude I found your channel the other day and I love it! I really appreciate the insight into your development process! I thought the pacing, delivery and everything was amazing! Hope to build a channel like yours in the future!!

    • @raroque
      @raroque  Před měsícem +1

      yooo thank you for following along 🙌
      glad you find the content useful :) also 100% start a channel, turning out to be the best decision I've made in the last few years

  • @fuadadio
    @fuadadio Před měsícem +1

    Awesome video. Looking forward to more of these.

    • @raroque
      @raroque  Před měsícem

      I didn't expect to resonate so well with this video, will definitely be doing more in the future!
      (and thanks for following along!)

  • @das_vjkrishna
    @das_vjkrishna Před měsícem +1

    Your Videos are amazing! It inspires me. Keep the great videos coming !! 🥳

    • @raroque
      @raroque  Před měsícem

      🥹🥹 thanks for watching! Muuuuch more to come 🙌🙌

  • @hapaise2924
    @hapaise2924 Před měsícem +2

    loved!!! actually really good videos! Thank you!, motivates me to code my project

    • @raroque
      @raroque  Před měsícem

      🥹 thanks for watching! and good luck with your project, you got this 🙌

  • @NK-ds8qo
    @NK-ds8qo Před měsícem +1

    Love this video.

    • @raroque
      @raroque  Před měsícem

      Thanks for watching! Let me know if there is anything you want to see :)

  • @jemywemy.
    @jemywemy. Před měsícem +1

    just found ur channel. Super insightful watching you build. Keep up the great work 👏

    • @raroque
      @raroque  Před měsícem

      Appreciate that! And thanks for following along :)

  • @habitsofsuccess4322
    @habitsofsuccess4322 Před měsícem +2

    Just found your channel and subbed, Good stuff you got here. Just curious how long have you been creating your own SaaS apps?

    • @raroque
      @raroque  Před měsícem +1

      Thanks for following along! 🙌🙌 I think it’s been almost 5 years! But didn’t take things like monetization seriously until 2 years ago :)

  • @AndreSantos-yk9pr
    @AndreSantos-yk9pr Před měsícem +1

    awesomeeeee!

    • @raroque
      @raroque  Před měsícem

      thanks for watching! let me know if there is anything you want to see in the future :)

  • @denilsonnascimento975
    @denilsonnascimento975 Před měsícem +1

    I just discovered your channel and i loved it.
    Amazing Video, keep going!!

    • @raroque
      @raroque  Před měsícem

      🙌🙌 thanks for following along!

  • @Scantrax2022
    @Scantrax2022 Před měsícem +1

    Nice feature! Did you also take the following into account: What will happen when you enable attachments, then upload some on your tasks and then disable the feature again. Will it delete all attachments for every task or will the remain hidden but still be available 😉

    • @raroque
      @raroque  Před měsícem

      Thank you!
      We did actually think about that one!
      Hidden but available :)

  • @g33kdev
    @g33kdev Před měsícem +1

    Great work! 🚀 6/7 hours is actually faster than I expected so hats off to y'all! 👏
    What do you use to gather and track feedback?
    I 💯 agree Firebase storage can be expensive and the free bandwidth disappears so fast 😬
    I'm glad you caught the problem about serving files from S3! That's the downside about using different systems. If you were using Firebase for storage, you could rely on that auth, but since auth is separate, you have to proxy data between.
    What are you using for your backend? Firebase cloud function?
    For uploads, I don't think you need to upload to your backend and then from your backend to s3. When you get that temporary container, you can upload from your front end to s3.
    Also make sure to check out other storage providers that behave like S3 but may be cheaper like wasabi, back blaze, or cloudflare!
    😂 Attachments vs attachment?? Are you using JavaScript without type checks??

    • @raroque
      @raroque  Před měsícem

      So many great questions to respond to! 😅
      1. Using Canny for the feedback :)
      2. 20% Firebase functions 80% a small express server hosted on Render
      3. Correct on the temp container. We are technically not uploading to the backend but we are getting that temporary container from the backend, do you think that is the right approach?
      4. Will look at others, had not considered others actually!
      5. No type checks 🙊 i live a dangerous lifestyle
      (also thanks for watching!)

    • @g33kdev
      @g33kdev Před měsícem

      @@raroque
      1. Ah, I discovered Canny recently after seeing someone built a free simpler alternative 😅
      2. That's unfortunate you need another piece of backend infrastructure. Why'd you decide to use a separate express server rather than Firebase's Cloud Functions?
      3. Nice! Ya, I think that's the standard recommended approach since the upload is more direct and the token the client uses should be very limited and only allow uploading that one file.
      5. 🤣

  • @weeklymindset
    @weeklymindset Před měsícem +2

    I always look unto these videos I like them

    • @raroque
      @raroque  Před měsícem

      Thanks for following along 🙌🫶

  • @godismyway7305
    @godismyway7305 Před měsícem +1

    Thank you for the great app! I have a small suggestion: it would be nice to add a skip button after signing up for those who don't want to go through the "How to use the app and app features" tutorial. Currently, I had to click next until reaching the main dashboard. Enhancing customer experience in this way would be appreciated.

    • @raroque
      @raroque  Před měsícem

      Noted! ✍️✍️
      I actually added a skip button to iOS but I guess forgot to add it to web 😅

  • @vaibhavdwivedi
    @vaibhavdwivedi Před měsícem +1

    Let's go! 🎉

  • @mohamedsobol9014
    @mohamedsobol9014 Před měsícem +1

    Very cool. Can you please work on adding Weekly Objectives (similar to Sunsama)? I'm very much looking forward to it

    • @raroque
      @raroque  Před měsícem +1

      Thank you! And for sure, def plan on having this on the roadmap :)

    • @mohamedsobol9014
      @mohamedsobol9014 Před měsícem

      @@raroque Thanks, Chris very much appreciated!

  • @ufukacar1117
    @ufukacar1117 Před měsícem +1

    ıI actually loved this video! I found out your channel from previous video and I immediately followed you.Cause I'm also developer which is tryna build app with swift 🤙.Keep it up with this content and greetings from Turkey ♥

    • @raroque
      @raroque  Před měsícem

      Wow thanks for watching and for the kind words 🫶 good luck on your dev journey, absolutely love swift!

  • @Hasan10-oh7vl
    @Hasan10-oh7vl Před měsícem

    Love it broo!!
    Do you need a video editor bro?
    I can do a sample video;)

  • @hammadahamed4539
    @hammadahamed4539 Před měsícem

    Hey Chris & Finney,
    the UI looks consistent, minimal and elegant,. Do you use any UI libraries , if yes what.

    • @raroque
      @raroque  Před 13 dny

      Hey! The only library I use is Ant design for a few components like dropdowns and modals :)

  • @takundahwaire2539
    @takundahwaire2539 Před měsícem +1

    S3 presigned URL is the way to go!...what if for some reason the client fails to upload to S3? How is your backend notified?

    • @raroque
      @raroque  Před měsícem

      forgot about that 🥲
      off the top of my head, I think it just doesn't store on S3 and also doesn't write to firebase BUT we definitely don't show anything on the UI showing the failure so have to go add that
      Good catch!

  • @felixtechmedia
    @felixtechmedia Před měsícem +1

    Great vid!! Currently using Firebase for my own app and thinking about changing soon because of the pricing 😅 qq: how do you track user requests? Cheers!

    • @raroque
      @raroque  Před měsícem +2

      Thank you! 🙏
      Whats the biggest cost for you? Storage?
      Currently using Canny for feedback :)

    • @felixtechmedia
      @felixtechmedia Před měsícem

      @@raroque right now it is storage; in the near future I think it will be document Reads as I use streams, so either I switch to another backend solution or refactor my data layer.

  • @Tyzer126
    @Tyzer126 Před 27 dny

    D you always work using Test Driven Development or not ?

  • @kikz01
    @kikz01 Před měsícem

    Please how can i contribute to this project?

  • @Kanna-fs5jg
    @Kanna-fs5jg Před měsícem +5

    Bro casually just showed he can view/download all the files users upload lol. I hope this is covered in the privacy policy. Try encrypting the file with the user credentials (hoping that wasn't stored plaintext) on the upload (inside the client) so s3 will always have the encrypted copy. While accessing the file, decrypt back on the client. It's fairly simple to implement this (1 function each for encrypt and decrypt) and will be a nice security addition for your users :)

    • @smotch7533
      @smotch7533 Před měsícem +3

      you cant be serious...

    • @raroque
      @raroque  Před měsícem +7

      Very good point! Thanks for bringing this up, will do more research on this today
      I’m a big advocate for data privacy (my other app Mogul is the only product in its category with actual End to end encryption) so if I can improve it here I will
      (Also wish you were with us a 2 days ago when we built this 😂)

    • @Kanna-fs5jg
      @Kanna-fs5jg Před měsícem

      @@smotch7533 Why can't I be?

    • @Kanna-fs5jg
      @Kanna-fs5jg Před měsícem +1

      @@raroque I found your channel very recently and went through your projects. Really really good job with the design! I am planning on using ellie so this video was perfect for me to understand some of the tech stack you used and how you make decisions.

    • @raroque
      @raroque  Před měsícem

      @@Kanna-fs5jg awesome to hear and thanks for following along! Let me know if you have any questions on Ellie, happy to answer anything :)