Lara Martin is a Berlin-based Android developer. She is a Flutter user, and is also very active in the programming community. She has been sharing her knowledge worldwide through online platforms and speaking engagements. Her goal is to give access to useful apps to practically everyone.
Flutter for newbies
Would you recommends Flutter to programmers who have no experience in mobile development?
I would say that, yes, I suggest to try Flutter to everyone regardless your backgrounds. I think the learning curve is quite flat for anyone even without coding experience or even with much experience. The language is similar to other client languages like Java or JavaScript. It can be something that everyone can learn.
Flutter is also quite straightforward. People can start using it very early and way easier than native mobile app development. I would say it was very difficult for me to learn Android compared to Flutter.
So why Flutter?
Mainly because it’s simple. That’s something that we discovered by running a study group in Berlin where we had people that were working on iOS and Android, both as developers and web designers. Everyone was able to follow the course with us and build applications, so I think it’s one of the benefits.
Flutter and Dart
Since Flutter is based on Dart, which developer will benefit the most using their skills to quickly learn Dart?
Flutter uses Dart programming language, which is very similar to other big languages that probably most of developers are familiar with. So I think it’s easy for everyone to just learn a new language once you know how a programming language works.
And it happens with Flutter and with Dart at the same way. You code with Dart and then Flutter, and will notice a sort of familiarity with the widgets and the framework that you are using to build that around.
What are Flutter’s most interesting features?
My favorite one was the hot wheel code. Basically, when you are coding some UI components, it automatically deploys it. You see the changes automatically on your emulator, or even on your device. You don’t have to wait. It will only show those the changes that you’ve made, and that’s very different from native development.
Indeed, in native mobile development when you do a tiny UI change, you have to compile and build the whole app, and then deploy it – which will take minutes. With Flutter, this whole reload feature it’s in almost instantly. That was my favorite one.
I would also add animations among the best Flutter features. Even in native mobile development, animations are something that I don’t want to do because it can be quite tricky and difficult to make them work. With Flutter and all its widgets, you can build beautiful things very easily.
Building web application with Flutter
Let’s talk about building a web application with Flutter.
First, in my opinion Flutter for web is not production-ready yet. So I would not suggest to build a web application with Flutter. I think the use case here would be you have a code base that could be running in different kind of platforms like iOS and Android, and you could also have a website based on the same codebase. It depends on the need you have. But I would probably not build a web application directly with Flutter. Maybe it’s better for a more production-ready version of the framework.
Diversity
Do you have suggestions for software development companies regarding reduction of gender diversity issues?
Something that helps a lot is anonymizing proposals, anonymizing information that you are receiving. Like when you anonymize the CV you’re receiving, you don’t have the names, you don’t have a picture. So you evaluate everyone more equally. The same applies to conferences such as Codemotion. You receive proposals and rate them based on some requirements that you have. But always try to avoid those bias, even those that you might not be aware of.
So I think that one of the things that would work really well at least for me and my team was anonymizing the hiring process. This could make everyone feeling more wanting to apply to a job position, for instance people who don’t want to be evaluated by their name or other features that might be not relevant for the actual job position.