5 Tips to become a Flutter Master, Secrets I've learned over 6 YEARS.

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
so I've been teaching flutter for the past 6 years now and over that time span I've taught a healthy amount of students but I've gotten an even more healthy amount of emails from students ask me for help regarding suching problems that they're facing usually these problems fall into two categories the first is that the student has been learning fluted for an extended amount of time and they still don't have an idea of what the framework is capable of how they can build stuff with it and it's just a mess in their mind and they've basically given up and they think that flutter is just too complicated and they can't understand it while on the other hand I have students that basically have a grasp of flutter and they've been able to build some things using flutter by following along with tutorials but whenever it comes to them building their own stuff that they have envisioned within their mind they have no idea how to do it in this video I'm going to be sharing with you guys five practical tips that you can Implement starting today to improve the efficiency of your learning when it comes to becoming a flutter developer and hopefully become a flutter developer that's not only proficient with following along tutorials but also building stuff on their own my first tip to everyone is going to be to think of their flutter Learning Journey as a social experiment and what I mean by this is whatever you do try to put it in the public Spotlight one way you can do this is by creating a get up account and then whatever project that you're working on whether that's a tutorial that you're following along with or something that you're creating by yourself try to make it a public repo and try to share it with other people this is going to have three distinct advantages for you the first is that you're inadvertently going to be building a portfolio that you can show to potential employers or other people that you just like to share your work with in the future secondly it's going to make it very easy for you if you encounter a problem to share this code with potentially more experienced developers than you and then they being able to give guidance to you because they'll be able to see all of the code that you've written and lastly it's also going to give you the advantage of in the future if you'd like to basically collaborate with another flutter developer either because they have more experience with you or maybe you just want to code with the peer so that it motivates you and them to better themselves then you'll have an actual GI up repo in which you guys can actually work with each other and learn the fundamentals of how software development Works in general when it comes to working with different people and collaborating together so this is why I highly recommend that if you're starting your flutter development Journey or if you're learning any framework in general or even programming that you put everything you do into the public Spotlight and one way you could do this is obviously by creating a getup account on a daily basis I work on a lot of different things and most of them are closed Source but I always take time out of my day to learn new things whether that's learning a new framework or improving my knowledge upon an already existing framework or programming language that I know the way I like to do this is by creating a gith up repo then following along with the tutorial or creating something my own learning all of the things from that and then just publishing that code onto get up and making it freely available to everybody else this way I come under the public Spotlight because I get a lot of followers who actually take a look at my public repositories and just give me a follow for that and secondly it's just a way of me to give back to the community the same way I do on YouTube where I'm able to share my expertise with others and share the things that that I've learned tip number two is to avoid obsessing over finding the best Aid management solution for the project that you're building I can't tell you how many emails or comments I get where people ask me he saying what's the best State Management package for flutter what do you recommend or what do you use and the honest answer to this is that it completely depends upon the project that you're building and as you develop as a software developer and gain more experience you'll be able to weigh the pros and cons of different State Management Solutions that are out there and then decide which one we want to use but as a rule of thumb there's one thing that you should always focus on and that is to keep your code base as simple as possible and avoid as much complexity as possible because it's going to make it easier for you to maintain your code base and it's going to make it easier for you to avoid bugs and in the future when the project becomes bigger if that is the case to be then other developers are going to have an easier time understanding what's going on if you try to implement for an app that's just going to have two screens a complex State Management solution such as River pod then that's just overkill for the project and honestly that project doesn't need it all of the State Management packages and names that we see being thrown all around the developer Community have been created for specific reasons and they have specific pros and cons and they are suitable for different types of projects just trying to find the optimal solution that works for all different projects is unrealistic and if you really want to learn a state management package then my tip for you would be to just learn one and just try to become proficient in it if for example you decide okay getex is the state management package that I'm going to be learning then just learn getex and become the master at it and just forget about all of the rest when the time comes to learn them because maybe you've been hired onto a team that uses another state management solution than the one you know then you'll learn it at that point but you don't need to overwhelm yourself with learning all of these different State Management Solutions because honestly at the end of the day what actually matters is the user experience that you can provide to the end user and they honestly don't care what type of back end you're running if that's go rust or Dart or even python or what the front-end framework is what they are concerned with is that the experience for them is as seamless as possible and as good as possible tip number three that I have for every aspiring flutter developer is to code as much as possible I do not want you to get stuck in what we called tutorial hell and that is when you're basically watching tutorials endlessly without getting anywhere with the actual coding that you're doing so what I'd like you to do is adopt the mindset of hey I'm going to spend some time watching a video reading some documentation listening to somebody but after that I'm not to allow myself to learn anything else before I've implemented the things that I've learned now I know that it's difficult as programmers to come up with ideas on what can I do with the information that I've learned so I've left a link to this awesome gab repo down in the video's description which has a list of different GitHub repos which have open source flutter projects in them so if you want inspiration or if you want to learn how other people have coded certain applications you can definitely take a look at this gab repo and I also already have made a dedicated video on this so if you want to delve more into that I'll leave a link to that video down in the description as well but basically this get up repo is going to show you a bunch of different projects that people have built using flutter and hopefully it's going to provide you with some inspiration or maybe even just the ability to proo through the code and see how other developers have dealt with the problem of creating these flutter applications and then hopefully you can also following along in their footsteps and create something on your own just by watching tutorials by themselves you're going to get nowhere you need to combine the actual learning with practice in order to become an actual proficient flutter developer tip number four is going to be to focus on the essentials of the flutter framework I don't want you to confuse yourself with the bazillion packages that are out there on pbev for all of the different problems that you can solve with them what I want you to focus on are what are the key things that flutter as a framework by default includes in itself and how I can use it so this is what are the built-in State Management Solutions what are all of the different widgets that are available to me how can i u the baked in Concepts into the flutter framework to build something from scratch and then once you have a solid understanding of the framework by itself so this basically means how do list views work how do brid views work what is a scroll controller what's a form going to look like in flutter how is a button created how is a text Feld created how can I create a container with a shadow and other things like this then you can proceed to actually learning about the different packages that can help you solve problems more efficiently there's no need to put yourself into learning all of these different packages if if you do not know the basics of the flutter framework because this way you're not going to be getting anywhere so I'll recommend that when you're learning flutter as a developer is that firstly take a look at what are the core components that come packaged with the actual flutter framework try to become a master at them and then after that you can slowly as need be try to integrate these different packages that are available that are made by the community for whatever problem that you're facing within your application and lastly the final tip that I'd like to share with you guys is to think of flutter as just one part of the puzzle in order for you to become a Top Lodge developer you have to understand that flutter is just part of a greater ecosystem that is app development at that you need to have an understanding of some other parts of this actual ecosystem in order to be a competent developer so what do I mean by that well you need to have a good enough understanding of how to build frontend uis using flutter but you also need to know how to attach your flutter app with the back end and for a backend you can either go the route of creating a custom backend or how you can link up a flutter application with a backend of service such as Firebase or app right or pocket base Each of which are excellent backend Solutions each of have their own pros and cons and you need to develop the intuition of being able to understand which is the best backend for the actual project that you're going to be building for example pocket base is an excellent recommendation from my side to those people that are going to be building a Indie side project that's not going to get a lot of traffic but they'd like to share it with the world while if you're building a project that you would like like to scale in the future then maybe taking a look at app or Firebase might be a better option or even going completely custom but these are things that you're going to learn as you gain more experience moving onwards from back end you might also have situations in which you'd like to integrate analytics within your actual product so you can understand user Behavior better or see error logs and see how your application is performing underl and things like that well for that you can take a look at different log Monitoring Solutions or analytic solutions that are out there for example firebases Firebase analytics or maybe you could use something such as log rocket to actually analyze the log and session data for your actual application so try to learn these things as well try to implement these within the projects that you're building and I guarantee you by learning these skills you're going to take yourself from being an average developer and not standing out in the market to being somebody that's can actually be considered a 10x engineer that companies are willing to hire on top dollar so definitely invest in learning skills that surround the app ecosystem in general just don't put all of your emphasis on learning flutter another example that I give you is for example you might want to implement post notifications for that you can either go with Firebase messaging or you could use a third party service such as one signal maybe you'd like to delve into the world of devops so a good place might be to actually understand how you can automatically build and deploy your flutter app to the web using some kind of a cicd tool for example an open source one is called Jenkins and then as I had alluded to in the first tip try to learn some kind of a source control system my recommendation is G because most of the companies use them but there are other ones out there as well but git should be the only one that you need to learn for now so what I want you to do from today onwards is try to think of app development as a skill that requires a lot of generalized knowledge and a well-rounded skill set and this is going to make you more marketable and it's going to allow you to demand top dollar from companies that are building to hire you and it's also going to make you more hirable so these were the five tips that I wanted to share with you guys in today's video If you enjoyed the video then please don't forget to leave a like on the video and subscribe to my channel so that you get notified every time I release a new video and as as always stay happy stay healthy keep learning keep growing and I'll see you guys in the next video bye-bye
Info
Channel: Hussain Mustafa
Views: 1,912
Rating: undefined out of 5
Keywords: flutter app development, flutter tutorial, app development, learn everything about flutter, built with dart, flutter, dart, firebase, tutorial, introduction, development, android, ios, steps, guide, Flutter, Flutter tutorial, flutter roadmap, flutter 2024, flutter course, learn flutter, dart roadmap, flutter developer, flutter learning, flutter beginner course, flutter beginner tutorial, flutter full course, flutter crash course, Learn flutter, mobile app, mobile development
Id: fHkywt0XhhY
Channel Id: undefined
Length: 11min 4sec (664 seconds)
Published: Tue Jun 11 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.