📜 ⬆️ ⬇️

DevFest North in St. Petersburg on September 30

Only two days are left before the DevFest North conference organized by the Google Developer Groups of St. Petersburg and Petrozavodsk . And until September 29, 23:59 you can still buy tickets and become part of a cool IT event!

We have already published a description of the reports in the previous article , but today we decided to introduce you to the person who will hold the opening keynote - Royi Benyossef - and interview him briefly .
image
Royi benyossef
Google Developer Developer Android
Samsung Next
Tel Aviv

Recall, Royi on DevFest North will talk about how you can use the capabilities of your device (including its sensors) and will show some UX techniques in order to improve the performance and usability of your application.




It seems that it was so long ago that it is difficult to believe what it was. However, you are right, the conditions and tools can truly be called spartan compared to what we have now.
')
My first project was very unusual, if we talk about it today. We developed an information system for public transport with a touch screen, but we did not have any ready-made devices (and emulators) for this. For development, we essentially took something with a touch screen (the quality of which also left much to be desired), compiled AOSP and downloaded it. We can say that we made the first tablet with AOSP (although, of course, we could well not be the first).

It is clear that at that time there were no well-established approaches to the development or recommendations, so the entire development revolved around enthusiasts and experimenters who constantly researched something new and exchanged information with each other.



My answer may seem strange, but I think that the most important changes in the development ecosystem are releases of support libraries for testing, in particular Espresso. Probably, manual testing of applications is the longest and most expensive part of development.

Automation tools help to significantly reduce the dependence of developers on manual testing and speed up the process of releasing new versions of applications (DevFest North will have an excellent report on the details of testing processes from Bogdan Mukvich - note. Ed.)



I don’t like to make such comparisons, but if you insist, I can say that in general, Android development provides more options, but here you can come up with such a metaphor that when developing for Android, you have more ropes, but you can suddenly understand that they have become a noose around your neck! On the other hand, the integration of design in iOS is an easier process, but the development of IDE and libraries (in particular, ConstraintLayout) aligns these platforms.



In principle, if a UI / UX application is not very demanding, then, of course, the development of a cross-platform application will be cheaper (approximately 1.5 times the cost of developing an application for one platform). Therefore, frameworks like React can be quite useful.

However, it is very difficult to write a cross-platform application whose UX will not yield to native applications. In addition, such developers are still significantly less. Therefore, if you want to somehow reduce costs, you can try to go the other way. If you hire very good developers and use testing automation tools (the importance of which I mentioned before), then we can reduce the time and cost of manual testing, as well as reduce the number of bugs. And ultimately, this will reduce the cost of s / n, which are key during the development.



Honestly, I'm not very good at theoretical training for Android developers, since I mainly studied various blogs, looking at Github code and questions on StackOverflow, when many modern resources were not yet available. As one of the options to start with, these are courses on Udacity, they will help you understand the basics and get involved in development. However, you can only become a really good developer after you have not been a very good developer for a long time :) And there are no other ways. Write your projects, learn the tools, the Android framework and libraries, chat in forums and forums, become part of the community. And after you make 2-3 good projects, you will have both the necessary experience and the portfolio.



Of course, there is always the risk of “getting stuck” at a certain level, when current knowledge is more than enough to work on a project. However, you should always try to be on the wave, for this it is easiest to follow the blogs of famous developers, such as Romain Guy, Chet Haas, as well as blogs and speeches of Google Developer Experts.



Firstly, it is necessary to develop your project - it allows you to learn something new that you don’t do at work, and besides, you can easily design a feature in your project to try some kind of library or approach. And secondly, an important part of development is public speaking and the ability to share knowledge with the community (this way you will deeply study some technologies, as this is necessary in order to teach others). You can speak at a variety of venues - conferences and meetings, in particular, held by the GDG-communities, reports within the company and so on.



Today, many people are already able to develop simple Android applications; this is essentially a stream. And now is the perfect time to expand your horizons, work with the backend, cloud services (Google Cloud / Firebase) and machine learning, since the future lies precisely in these technologies. Moreover, there are more than enough opportunities for this - we can easily use the services of Google, AWS, MS and many others.


Thank you Royi for the answers!
There are many more cool speakers invited to DevFest North with whom you can get acquainted at the conference.
We are waiting for you at DevFest North on September 30 at the congress center “PetroCongress”.
The conference will be held from 10-00 to 19-00.
Registration starts at 9-00.
Read more on the DevFest North 2017 website!

Source: https://habr.com/ru/post/338920/


All Articles