ConstraintLayout has already been one of the most fundamental components in Android Development with lots of effective features to create complex and robust layouts. You may consider it as a more advanced Relative Layout with lots of improvements and cool properties 😎. It can help the developer to get rid of lots of boilerplate code and improve code readability without compromising performance.

When/Why should we use it?

As I said, ConstraintLayout provides lots of cool features but everything comes with a price! ConstraintLayout is one of the most expensive layouts in Android Development. That’s why it should be chosen wisely. Unlike, LinearLayout or FrameLayout, it…

Hello everyone 👋🏻! Today I’m going to show you how to use the “Shimmer Effect” in your Android projects. Before start, for those who don’t know what shimmer is that it’s a more efficient and UX-friendly way to show a loading process to the user. It’s generally preferred for list items as you see below:

Shimmer Effect

Now, let’s see how to implement it with an example, shall we?

We are going to use a 3rd party library for Shimmer which is provided by Facebook.

If you want to check it out, click here.

Firstly, let’s add the related dependency to…

At last, I am so proud to present you the last part of my ConstraintLayout series 🤘🏻. This one will be the longest and the most intensive👊🏻. We will dive into the deepest parts of the ocean and find out the true potential of ConstraintLayout. You can check out the first two parts of the series in the links below:

After this article, I believe you’ll have enough background to start using MotionLayout. Please seat your belt when you are ready, we are about to take off 🚀🚀

What is MotionLayout?

MotionLayout is a subclass of ConstraintLayout with additional ways to animate…

Our journey with the ConstraintLayout continues in the second part. If you miss the first one, you can check it out first in the link below:

In the previous one, we’ve investigated the basic features of the ConstraintLayout one by one. This time we’ll dive into some detail and see its upper limits.

We can separate the features provided in ConstraintLayout 2.0 into three different parts.

  • Flow
  • Layer
  • MotionLayout


Flow can be considered as the robust version of the LinearLayout. By definition, it is a virtual layout that is used to chain views. Wait a minute! We know from…

21. yüzyılın en büyük gelişmelerinden biri hiç şüphesiz hayatlarımıza bir anda girip bomba etkisi yaratan “yapay zeka” kavramı. Aslında bu kavrama çok da yabancı değiliz. Hepimiz içinde yapay zeka geçen ve genellikle robotların dünyayı ele geçirmeye çalışmasıyla devam eden filmlere oldukça aşinayız. Öğrenen, yorumlayan, sürekli gelişen makineler ve sonunda kaçınılmaz son, insanlığın çöküşü … Gerçek hayat uygulamalarında ise bu durum oldukça farklı . Öyle görünüyor ki her ne kadar yapılan yapay zeka çalışmaları umut vadedip bizleri heyecanlandırsa da robotların dünyayı ele geçirmeden önce hala öğrenecekleri çok şey var :)

Yunus Emre Arslan

Android Developer @getir

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store