Why you should visit the next conference and learn even more (DroidConVIE 2018)

I’m the founder of CodeBrainer. CodeBrainer teaches absolute beginners how to program, where we go in to great details with practical assignments. That is why I like to visit meetups and conferences to get a feel, what people like to learn, and to see at what programming level an average developer is.

Miha Cirman
CodeBrainer
7 min readOct 4, 2018

--

The conference started with a topic that is very dear to me, diversity. Always when I listen to stories about diversity in IT I know we can do so much more. IT is a male dominant domain and I hate that for a simple reason. IT consists mostly of male ideas, and we need ideas from all genders, ideas that are diverse all the way. The conference was opened with a talk by Joe Birch who painted a picture about diversity all across Europe. Working at Buffer makes you transparent that’s why conclusions from Joe were all about being yourself and taking care of each other. He pointed out that starting the day with a greeting that is more gender agnostic is a way to start, since you will be building a more open community. There was a great comment from a lady in the row in front of me. That when looking for new colleagues we should use an appropriate social media as well because social media is influenced by genders. What helps a lot if you want to make your team more diverse is to always hire more than one person from a minority (or each gender ;) , so that the minority is not so overwhelmed by everybody else in the team.

The talks (building large projects, clean architecture, large markets and artificial intelligence)

Visiting conferences always makes me think about what will I learn or if anything at all. I’ve been developing for more than 20 years and I know a lot of things, I have met a lot of problems and solved most of them. So is there anything more I can learn?

Technologies are constantly changing so it is hard to stay on top of it all the time, that is why an experienced developer will always present a level of knowledge with a bit of restraint, as there is always a thing we can learn to improve our knowledge.

A talk that made me think a lot was a talk about moving LibreOffice to Android by Christian Lohmaier. Let me first just point out that it was a talk about building a LibreOffice viewer, an app that enables you to render documents prepared in LibreOffice. Sounds easy? I guarantee you that it is a lot harder than you think. There is a huge code base they wanted to use, the goal was to leave the core as is, not to change anything. So everything they build should be done as a wrapper a way to compile and link modules, packages, classes,…

This talk was a bit shocking as Christian explained the journey. We are all used to build Android apps in a snapp. Can you guess how long it took them? The first successful compile took them 4 months, yes four months. There was so much to do, before there were able to compile it for the first time. Even then the build took them 6 hours to process. And things like that just make me warm and fuzzy inside, since I know there is always a lot more I can learn, more problems I can solve and get excited by.

I have been developing Android apps in Kotlin for almost a year and I like it more than Java. While working on projects, it is hard to take time and learn the basics of a language. You do learn a lot working, but it is all affected by the project and the way the business logic is structured. So I just wanted to visit the talk “Having fun with functions” by Adnan A M. I thought this will be a basic lecture, but I was wrong as I discovered twists for designing functions in Kotlin. There was not a lot I haven’t used, but it was all broken down to basics and it just makes you think about it. This was the inspiration to prepare a blog about functions in Kotlin. (Coming soon, check out for links)

Artificial intelligence is a topic of the future. The current AI solutions are working on large databases. That is why it is still hard to start a good AI project since you need a lot of good and structured data. Bartosz Kraszewski explained Tensorflow on a simple and fun example. It is an app that can read digits you write by hand. I wondered a lot, what would the first project be for me, and it looks promising to get started with Tensorflow. You can learn all about his project here: Handwritten Digit Recognition on Android

Bartosz Kraszewski

So what is the hype all about, a great talk by Željko Plesac was all about thinking of technologies we use in everyday life. With that I mean frameworks, new programming languages, approaches in development… Few examples were: Kotlin, Realm DB, Rx Java, Instant run,…

We all know that new technologies are good and that our projects and knowledge must grow with time. As time moves on, technologies are refined and improved and we must try them, a lot of technologies are fun to use but we must stay critical to how they change our development, are they here to stay for a longer period. Željko’s conclusion is: Do not be afraid of new technologies but try them and asses how they affect your projects: Do new technologies speed up the development? Is the code better, is it easier to work,… Don’t be afraid to use new technologies, but don’t use them just because of the hype.

Clean architecture is a burning topic, since all teams have a different approach to how a project should be built and what kind of principles to use. Almost all the time the answer lies in simpler classes, no matter how the structure is designed. More classes, less code. Interfaces should lead the way in complex situations. Yossi Segev explained use cases on a great example for movies, based on the MovieNight project. Visit A Guided Tour inside a clean architecture code base to learn more. And learn you will, my student. Once you start down the dark path, forever will it dominate your destiny, consume you it will.

As we develop application (web or mobile) we are always looking for that next market we can grasp. And Aygul Zagidullina explained how we can go and discover more about east markets. She pointed out a lot of facts about India, that we need to take in to consideration before we can go and make them our customers. The thing that made me think was data. How hard it is for them to get it and how expensive data still is in India. In India there is only the mobile world, their experience with internet consists purely of mobile. And mobile data is hard to get and when you get it the cost is absurd, in India a free app can cost 2$ to download. Knowing this makes you think about how much data we toss around in the part of the world where broadband is taken for granted.

Aygul Zagidullina

Each conference has some time dedicated to networking and this is the best time to get to know each other. Take your time and go to lunch with them, go grab a drink. Networking is a time, when people are relaxed and ready to talk about challenges they have in real life.

And the best for last — MotionLayout

I’m always amazed at what iOS developers can do with ease, when building UX and animations. And I was really excited with the talk about improvements for ConstraintLayout and MotionLayout by Hari Vignesh Jayapalan. After listening for five minutes I realised that this is a topic we must cover in our blog. And I was excited to learn that this technology is a little bit ahead of the hype and our students will be able to work with it when it will becomes public. Making animations a part of layouts just makes sense, since we have all the control over UI in layouts. But MotionLayout is more than just that as it enables you to link your animations to actions in code and vice versa. Can’t wait to tell you more about it.

Conclusion

Visiting meetups and conferences is great. You will meet a lot of new people and even if you know them already, this a time when you can learn about their new projects, what they have learned during the year. Since you will not be able to learn everything, it is good to get insights and choose what you want to learn, what is your next topic on your TODO list.

DroidConVIE was organised as expected, thanks for having us. I will try to visit them the next time around.

So I hope we all meet again next time.

--

--

Miha Cirman
CodeBrainer

Founder of CODEBЯAINEЯ @thecodebrainer With more than 80 web and mobile app projects behind me, it is time to share that knowledge.