
The digest of interesting materials for the mobile # 294 developer (on April 8 - 14)
This week we're talking about Continuous Integration, the transition from web development to games, dark themes, unit tests, a new top-earning and multi-billion dollar key manufacturing industry.

CI is a workflow in which you integrate your code into the general product code as often as possible. And not just integrate, but also constantly check that everything works. Since you need to check a lot and often, you should think about automation. You can check everything on manual traction, but not worth it, and that's why.
Many today love reactive programming. It has a lot of advantages: the lack of the so-called “callback hell”, and the built-in error handling mechanism, and a functional programming style that reduces the likelihood of bugs. Significantly easier to write multi-threaded code and easier to manage data streams (combine, split and convert).
This digest is available as a weekly newsletter . And daily we send news in the
Telegram channel .
iOS
• (+23) We write the game “Memory Cards” on Swift
• (+14) Advanced string interpolation in Swift 5.0
• (+10) Custom instruments: when signpost is not enough
• (+9) We create interface elements programmatically using PureLayout (Part 2)
• Apple added an additional step to subscribing
• Apple hired another virtual reality veteran
• Netflix refused to work with AirPlay
•
Improving the iOS development cycle with breakpoints
•
iOS: Umbrella Framework with CocoaPods
•
Working with Create ML MLDataTable for data preprocessing
•
Migrating from Swift 4 to Swift 5
•
Creating a dynamic modular architecture for iOS
•
UIView SmoothCorners: rounded corners like Apple
Android
• (+33)IntelliJ IDEA 2019.1: Customization of interface themes, switch-expressions from Java 12, debugging inside Docker containers
• (+18) How to make the application more stable with 2 types of unit tests
• Android smartphones become secret keys
• Snap updated Snapchat for Android
• Moving images around the screen in Android
•
What is Android Lint and how it helps to write supported code
• The
application with facts about Chuck Norris on Kotlin
•
How to easily generate Smart Replies with ML Kit on Android
•
Cold streams, hot channels
•
Recreate the Facebook Messenger gradient
•
We use TextWatchers correctly
•
We play with the Android canvas drawVertices
•
Google forbids plugins for Instant Apps
•
How to use Firebase to create a multiplayer game for Android
•
Kotlin conversion - 4 traps worth paying attention to
•
Animation API cheat sheet in Android
•
Dagger and sparkling new @ Component.Factory
Development
• (+46) How we went from web development to game development
• (+46) How to create a dark theme and not harm it. Experience of the Yandex.Mail team
• (+22) Unity: we draw many health bars in one drawcall
• (+18)Raspberry-pi-tank and GPS navigation
• (+10) Design based on “reflection”
• (+5) Import 3D models into Unity and pitfalls
• AppsCast # 4: GPU, hexagonal accelerators and linear algebra
• Podlodka # 106: Platform development
• Disruptor Beam opens its backend
• Stack Overflow 2019 developer survey results
• Humble Book Bundle on classic video games
• Snapchat launched the game platform
•
Creating an Action for Google Assistant
•
Should I use React Native?
•
How I took an idea and turned it into a product
•
Why Test Driven Development (TDD) is Best for Reliable Programming
•
Ideas for applications that will enhance your programming skills
•
Why and how do I teach Flutter?
•
Computer games on BASIC
•
No time, no money, no problem: completion of The First Tree
•
Unsolicited redesign of Paypal: UX research
•
Five features of great programmers
•
We create a full-fledged mobile application on Ionic4
•
Technical debt - re-launch or eliminate?
•
Color theory for designers (with infographics)
•
Angular application as a Progressive Web App
Analytics, marketing and monetization
• (+14) Two ways to collect advertising rewards in mobile games, or robots should work
• (+14) How the Android Gustuff Trojan removes cream (fiat and crypto) from your accounts
• Netflix missed first place in top earning applications
• The most earning applications in Brazil in 2018
• Tonal: a gym on the wall
• Candy Crush series has a record 1 quarter
•
Splash Screen: a successful first launch for your mobile application
AI, Devices, IoT
• (+67) Why and how do we hide license plate numbers in Avito ads
• (+38) Photos from rough sketches: how exactly the neural network of NVIDIA GauGAN works
• (+21) Virtual reality - game, treatment, life. VR technologies at the service of rehabilitation medicine
• (+20) How smart cities arise
• (+15) Sustainability of GAN training (Digging deeper)
• (+15) How to promote a newbie and not break anything
• (+4) How IoT technologies will change the world in the next 10 years
• KeyMe received $ 50 million for key manufacturing
• Qualcomm improves AI in the new Snapdragon
• Augmented reality in the Hermitage: AR-craft competition of AR applications starts on April 15
• Smart answers and Language Definition in ML Kit
• Technodigest (March 2019)
•
Aroma: using machine learning for code recommendations
•
3 biggest mistakes in learning Data Science
•
Yes, AI will replace designers
← Previous digest . If you have other interesting materials or if you find a mistake, please send it to the mail .

![]() | CI evolution in the mobile development team |
![]() | Reaktive - multi-platform library for reactive Kotlin |
This digest is available as a weekly newsletter . And daily we send news in the


• (+23) We write the game “Memory Cards” on Swift
• (+14) Advanced string interpolation in Swift 5.0
• (+10) Custom instruments: when signpost is not enough
• (+9) We create interface elements programmatically using PureLayout (Part 2)
• Apple added an additional step to subscribing
• Apple hired another virtual reality veteran
• Netflix refused to work with AirPlay
•

•

•

•

•

•


• (+33)IntelliJ IDEA 2019.1: Customization of interface themes, switch-expressions from Java 12, debugging inside Docker containers
• (+18) How to make the application more stable with 2 types of unit tests
• Android smartphones become secret keys
• Snap updated Snapchat for Android
• Moving images around the screen in Android
•

• The

•

•

•

•

•

•

•

•

•

•


• (+46) How we went from web development to game development
• (+46) How to create a dark theme and not harm it. Experience of the Yandex.Mail team
• (+22) Unity: we draw many health bars in one drawcall
• (+18)Raspberry-pi-tank and GPS navigation
• (+10) Design based on “reflection”
• (+5) Import 3D models into Unity and pitfalls
• AppsCast # 4: GPU, hexagonal accelerators and linear algebra
• Podlodka # 106: Platform development
• Disruptor Beam opens its backend
• Stack Overflow 2019 developer survey results
• Humble Book Bundle on classic video games
• Snapchat launched the game platform
•

•

•

•

•

•

•

•

•

•

•

•

•

•


• (+14) Two ways to collect advertising rewards in mobile games, or robots should work
• (+14) How the Android Gustuff Trojan removes cream (fiat and crypto) from your accounts
• Netflix missed first place in top earning applications
• The most earning applications in Brazil in 2018
• Tonal: a gym on the wall
• Candy Crush series has a record 1 quarter
•


• (+67) Why and how do we hide license plate numbers in Avito ads
• (+38) Photos from rough sketches: how exactly the neural network of NVIDIA GauGAN works
• (+21) Virtual reality - game, treatment, life. VR technologies at the service of rehabilitation medicine
• (+20) How smart cities arise
• (+15) Sustainability of GAN training (Digging deeper)
• (+15) How to promote a newbie and not break anything
• (+4) How IoT technologies will change the world in the next 10 years
• KeyMe received $ 50 million for key manufacturing
• Qualcomm improves AI in the new Snapdragon
• Augmented reality in the Hermitage: AR-craft competition of AR applications starts on April 15
• Smart answers and Language Definition in ML Kit
• Technodigest (March 2019)
•

•

•

← Previous digest . If you have other interesting materials or if you find a mistake, please send it to the mail .