How i sold my laziness on OLX

Rahul Yadav
6 min readFeb 7, 2021

--

OLX_India

Ever heard about such title before ? I bet NO. Well, Lets start from an Atom. I’m Rahul, a small town ambitious coder having a bit over sized dream. Been studying Full Stack Android Development at Masai School.

As the title suggest, laziness is something which is been revolving around all of the protons in me. So much lazy that missed 40+ classes during school and college days, 20+ family functions , 2 interviews and (many more). Yes you heard it right! well, back to business.

So this was my second construct week at Masai School and we got the errand to clone the OLX India application in 4 even days, hmm a big task… but guess what, This loaf guy did that!

Okay, so let me first mention my teammates without whom this deal won’t been cracked. Praneeth Reddy .T a talented, self driven guy from Hydrabaad and Dhanashree Rane, an ambitious, creative lady from Pune, Maharashtra.

So lets break down those 4 eventful days in hours, minutes, and seconds, WAIT what ?. So its the first day and i just came to know about the project and who are the teammates, got the cup of coffee and laziness up and going and had a zoom connect with the mates to discuss about the plans and task distributions. The OLX app uses API calls to fetch data from servers and the most toughest task was to get the API from server and populate them in-app. So we distributed the task among ourselves and i got the most challenging task to tackle with the API handling.

Start page of OLX app.

The first day as it should be, was totally dedicated to layouts creation, we created the starting animation splash_screen and the start page of the app using the following layouts-

  1. Linear Layout.
  2. Constraint Layout.

and really the pages looks gooooood.

Once the introduction pages were done we moved on to login and sign up pages.

Praneeth and Dhanashree are good in layout designs so they started working on these pages and also don’t forget the another reason (IM LAZY).

Once the sign-up layouts were created i did the validation part and validated the phone number, username, and added permissions request as well.

And once done with all these, time for some good long naps before a next long day ahead.

Day 2 which is an even day for the project(mentioning as i like even numbers) starts with some fresh apples and a mindset,

Tea Coffee Bread and jam, start the day with a hope WE CAN.

Got connected to a zoom meet and had a scrum for the plans for today. It was an important day as we have to get the API in our app so today, “I have to keep my laziness aside”

Once i got the REST API’s of OLX, for implementing the logic for populating the data in the app, i used following concepts

  1. Recycler View.
  2. Intents.
  3. Retrofit.
  4. Glide.
  5. Toasty.
  6. Annotations.
  7. Bundles.
  8. Shared Preferences.
  9. GSON.
  10. Java POJO classes.

Bored of reading these ? If no, then let’s have a short info about all these.

Recycler View is used in app for populating the incoming data in a form of continuous list one after the another. Intents are used to carry information from one page to another. Retrofit is and Android concept used to fetch API from server. Glide is used to populate images on screen coming from an online server. Toasty is a plugin used to create beautiful toast messages. Annotations are used to validate the codes. Bundles is used to carry Data classes between activites. Shared Preference is used to store small amount of useful data within phone storage. GSON is used to convert the incoming JSON response into JAVA compatible classes.

Homepage of the app.

This is the homepage of the app which contains different kinds of categories such as cars, smartphones, jobs, electronics, properties, etc to search for.

There is a fresh recommendations section were freshly posted ads from users can de visible for buying according to your personalised needs.

You can also search for items from a particular location from the search section at the top.

Popular metropolitan cities like Mumbai, Kolkata, Delhi, Bengaluru where peoples post ads of some very good used products.

Cracking the logic for handling the API’s and pulling it in recycler view took a hell lot of power from my mitochondion (you noticed i moved from atoms to cells now). Its time for a deep nap after a good day. GOOD NIGHT.

Day 3 begin with a bang! Yesterday i forgot to add click listeners for handling the clicks on an item so today it should be all about handling clicks, tik tik.

location search in app.

I created interfaces for each possible clicks such as categories, locations, on image clicks.

Following image is an overview of a location search request for Delhi.

Let me tell a short info about OnClickListeners if you don’t know about this beautiful concept of Android. OnClickListener are as name suggest used to handle the click activites happening across the application, one can handle any kind f click activity and redirect the user to targeted areas.

The page contains following Layouts

  1. Constraint Layout.
  2. Relative Layout.
  3. RecyclerView.

There is also a heart icon at the top right corner of every item so you can click on it if you liked the particular item and planning to buy it, once you click on heart icon, the following item will get added to your liked items and you can access them afterwards.

There were about 10+ recycler views and 3+ locations to handle click so it took a whole day to add click listeners to all the items.

At the end to the day we had a quick stand-up zoom connect to discuss and review all that we have achieved till now, and after that ….. hmm guess now you know my next dialog right! (got a good nap).

Final day! Almost ! and the only task left was to create item details page and as always, teammates created the layouts and handed it to me.

I passed the Data class which contains the item details to the ItemDetails class and inflated the information on this page.

Following is the overview of how the item details page looks like.

The page contains following Layouts

  1. Linear Layout.
  2. Constraint Layout.

There are two buttons at the bottom by clicking which one can chat with the seller one on one and can also negotiate the price with the seller.

Super smooth and easy as OLX always is.

In evening around 7pm we were almost done with our self-made OLX India android application and seriously i forgot that I'm lazy as i was sooooo involved in this project.

Finally the cell now completely turned into human and i have my own OLX app in which i was the first costumer to sell my ummmm haaa you are guessing it right.

Do checkout our app by clicking here.

Curtains Down!

Thanks You for showing patience to read this blog.

Have a splendid day ahead!

--

--

Rahul Yadav

Small Town Coder with a little over-sized ambitions.