How Mature Are You?

Age alone does not an adult make. But what does? What makes you finally, really an adult? Adulthood is a social construct. For that matter, so is childhood. But like all social constructs, they have real consequences. They determine who is legally responsible for their actions and who is not, what roles people are allowed to assume in society, how people view each other, and how they view themselves. But even in the realms where it should be easiest to define the difference—law, physical development—adulthood defies simplicity.

You can’t drink until you are 21, but legal adulthood, along with voting and the ability to join the army, comes at age 18. Or does it? You’re allowed to watch adult movies at 17. In many countries kids can hold a job as young as 14, depending on state restrictions, and are even allowed to deliver newspapers, babysit, or work for their parents even younger than that.

Chronological age is not a particularly good indicator [of maturity], but it’s something we need to do for practical purposes. We all know people who are 21 or 22 years old who are very wise and mature, but we also know people who are very immature and very reckless. We’re not going to start giving people maturity tests to decide whether they can buy alcohol or not.

There is definitely no certain age at which maturity sets in. In my personal experiences, I’ve observed that age has little or nothing to do with it. I have met young people who are mature well beyond their years, and I’ve known older folks who act childish, only thinking about themselves. So the question is: What are the character traits that show maturity? And do “mature” people exhibit them 100% of the time?

Well, I’m not sure that we can be mature in every situation that presents itself to us because we are always growing and learning as human beings, and I’m pretty sure that all of us have been guilty of at least some of these negative behaviors at least once in our lives. That being said, by considering these 25 tell-tale signs, perhaps we can be more aware of the interludes in which our whiny, complaining, adolescent self rears its immature head…

1. Realizing how much you don’t know.

2. Listening more and talking less.

3. Being aware and considerate of others as opposed to being self-absorbed, self-centered, and inconsiderate.

4. Not taking everything personally, getting easily offended, or feeling the need to defend, prove, or make excuses for yourself.

5. Being grateful and gracious, not complaining.

6. Taking responsibility for your own health and happiness, not relying on others to “fix” you or placing blame for your circumstances.

7. Having forgiveness and compassion for yourself and others.

8. Being calm and peaceful, not desperate, frantic, or irrational.

9. Showing flexibility and openness as opposed to resisting, controlling, or being unreasonable.

10. Helping yourself, not just expecting others to do it for you out of a sense of entitlement.

11. Doing good deeds even when there is nothing in it for you other than knowing you helped, being selfless.

12. Respecting another’s point of view, beliefs, and way of life without judgment, not insisting you are right, belittling another, or using profanity or violence to get your point across.

13. Sharing your good fortune with others.

14. Being able to turn the other cheek without wishing harm on another.

15. Thinking before acting and having good manners, not going off half-cocked, lashing out, or being rude.

16. Encouraging and being supportive of others.

17. Finding joy in the success of someone else, not envy or criticism.

18. Knowing there is always room to grow and improve and reaching out for help.

19. Having humility and laughing at yourself.

20. Recognizing that which does not work in your life and making an effort to do something different.

21. Passing up instant gratification in favor of long term benefits.

22. Accepting, liking, and loving yourself, not needing someone else to “complete” you.

23. Standing up for fairness and justice for yourself and others and choosing to do the right thing.

24. Making sacrifices for the good of others without resentment.

25. Not clinging to materialistic items or bragging.

I’m sure there are probably other signs, but this list covers at least the majority of them. I know we can always do a better job displaying our mature sides. I also know that, by doing so, we lift each other up through our example. What’s most important, however, is seeing the negative side of our behavior and knowing we must do something positive to change it…And that, my friends, is WISDOM.

Apple’s WWDC 2023: Vision Pro & iOS 17

Each year at WWDC, Apple’s Worldwide Developers Conference, the company showcases what’s next for its biggest platforms — iOS, macOS, and more — and what developers can do to make apps and services for them. Let’s take a look at two key announcements made at the keynote address on Monday, 5 June 2023.

Apple Vision Pro, a new headset

Apple/Screenshot by CNET

The Vision Pro is a personal display on your face with all the interface touches you’d expect from Apple, with an operating system that looks like a combination of iOS, MacOS and TVOS.

The device itself looks like other headsets, though the glass front hides cameras and even a curved OLED outer display. The headset is secured to the wearer’s head with a wide rear band. You also have an external battery back that connects over a cable and sits in your pocket. There’s a large Apple Watch-style digital crown on the right side that lets you dial immersion (i.e. the outside world) in and out.

The Vision Pro has three-element lenses that enable 4K resolution, though you can swap out lenses, presumably for different vision capabilities. Audio pods are embedded within the band to sit over your ears, and “audio ray tracing” maps sound to your position. A suite of lidar and other sensors on the bottom of the headset track hand and body motions.

The homescreen of the Apple Vision Pro Apple

Technically speaking, the Vision Pro is a computer, with an M2 chip found on Apple’s highest-end computers. But a new R1 chip processes all the other headset inputs from 12 cameras, five sensors and six microphones, and sends it to the M2 to reduce lag and get new images to its displays within 12 milliseconds. The Vision Pro runs the new VisionOS, which uses iOS frameworks, a 3D engine, foveated rendering and other software tricks to make what Apple calls “the first operating system designed from the ground up for spatial computing.”

Interior cameras track your facial motion, which is projected to others when on FaceTime and other video chatting apps. The interface uses hand motions to control the device, though there are also voice controls. It’s tough to tell how these controls will work, and we’d expect that users will need some time to adapt to not using a mouse and keyboard. 

There is a lot more to this stunning device, take a look at ’s video introducing Vision Pro Introducing  Vision Pro

Every single person who reviewed the device after the keynote were left mesmerised by the experience. However the one key thing that could be an issue is that it is SUPER EXPENSIVE. It will retail for $3,499. For comparison, Meta announced its Quest 3 last week at the price point of $499, while its Quest 2 is retailing for $299. Of course the Vision Pro is way more impressive than the Quest in terms of hand tracking, integrating with the  ecosystem and much more. With micro-OLED displays, spatial audio, a 3D-like camera and many other high-end features, it’s no surprise that the Apple Vision Pro is a bit on the pricey end. So, it might be more designed for enterprise users than ordinary consumers.

And while everyone agrees $3,499 is a huge amount of money, that doesn’t mean people won’t buy it. Where the discussion actually lies is whether or not the Vision Pro is worth that astronomical asking price. Would you be willing to pay $3,499 to get your hands on an Apple Vision Pro headset? Let me know in the comments below.

iOS 17

 claims that iOS 17 brings a ton of quality-of-life improvements. However only a few key updates got me excited.

  • Interact with a widget from your Home Screen, Lock Screen, or in StandBy. Complete a to-do, play or pause a song or podcast, or access your Home controls to get tasks done in the moment.
  • A new safety feature, Check In, sends a note to a trusted contact when you reach a location — like when you make it home safe after late-night travel. If it’s taking you longer to get to a destination, you’ll be prompted to extend the timer rather than alert your contact. It also shares your battery and signal status. Check In is end-to-end encrypted.
  • The Photos app now recognizes your pets, such as cats and dogs, and places them in the people section.
  • AirDrop has been a helpful tool to send files between Apple devices, but now you can share your contact info with Name Drop. You can choose what you want to share between email addresses, phone numbers and more.
  • Journal is a new secure app for personal recollections. Apple is pitching it as a gratitude exercise, but iOS will auto-include activities like songs and workouts you’ve done to your personal log. 
  • A new mode, StandBy, converts an iPhone to an alarm clock when it’s charging and rotated horizontally. It gets smart interactions like a large visible clockface along with calendar and music controls.
  • Audio messages are now transcribed, so you can read them in the moment and listen later.

Unlike previous iOS announcements, this one left me feeling disappointed.

There were many other updates announced. Which ones did you like or think are pretty cool? Let me know in the comments below.

Learning from Mistakes: The Tale of the Broken Vase

In life, mistakes are often seen as stumbling blocks, but they can also serve as stepping stones towards growth and self-improvement. One such lesson came to me through a story I read of a personal experience involving a cherished family heirloom, a delicate porcelain vase that had been passed down through generations.

One sunny afternoon, as a curious and carefree child, the author found himself left unattended in the living room. Drawn to the captivating vase displayed on a high shelf, he couldn’t resist the temptation to examine it more closely. Ignoring the cautionary whispers in his mind, he reached for it, only to accidentally knock it off the shelf.

The world seemed to slow down as the vase descended, shattering into a thousand pieces upon impact with the floor. Panic set in, and guilt washed over him like a tidal wave. How could he have been so careless? Tears streamed down his face as he realized the magnitude of my mistake.

When his parents discovered the broken vase, they were understandably upset. However, rather than scolding or punishing him, they approached the situation with wisdom and compassion. They sat him down and gently explained that mistakes are a natural part of life. It was how we respond to them and learn from them that truly mattered.

Together, they gathered the fragments of the shattered vase, symbolizing the opportunity for redemption. As they painstakingly reconstructed the pieces, his parents encouraged him to reflect on what had happened and think about the consequences of his actions. They emphasized the importance of being more mindful and responsible in the future.

That incident became a turning point in his life. It taught him humility, accountability, and the value of learning from mistakes. He understood that avoiding mistakes altogether was impossible, but taking responsibility for them and seeking growth was within my control.

After reading this story, I approached life with a newfound sense of resilience and determination. I embraced challenges as opportunities for growth, learning from each misstep along the way. Through perseverance and self-reflection, I developed a greater understanding of my strengths and weaknesses.

Today, as I reflect upon that story of the broken vase, I am grateful for the lessons it taught me. It reminds me that mistakes do not define us but rather shape us into better versions of ourselves. By accepting responsibility for our actions and learning from our missteps, we unlock the potential for personal growth and become more resilient individuals.

In conclusion, the story of the broken vase serves as a poignant reminder that mistakes are not to be feared but rather embraced as valuable teachers. They provide us with the opportunity to learn, adapt, and become wiser. By acknowledging our errors, making amends, and striving to improve, we transform our mistakes into stepping stones towards a brighter future.

Here’s a lovely rendition of Shakira’s “Try Everything”

“Nobody learns without gettin’ it wrong”

Drinking from my Saucer

Do you remember older generations drinking from their saucer? Then today I came across this poem that made me feel there was symbolism to the coffee ritual.

Drinking from My Saucer
by John Paul Moore

I’ve never made a fortune and it’s probably too late now.
But I don’t worry about that much, I’m happy anyhow.

And as I go along life’s way, I’m reaping better than I sowed.
I’m drinking from my saucer, ‘Cause my cup has overflowed.

I don’t have a lot of riches, and sometimes the going’s tough.
But I’ve got loved ones around me, and that makes me rich enough.

I thank God for his blessings, and the mercies He’s bestowed.
I’m drinking from my saucer, ’Cause my cup has overflowed.

I remember times when the went wrong, my faith wore somewhat thin.
But all at once the dark clouds broke, and the sun peeped through again.

So God, help me not to gripe about the tough rows that I’ve hoed.
I’m drinking from my saucer, ‘Cause my cup has overflowed.

If God gives me strength and courage, when the way grows steep and rough.
I’ll not ask for other blessings, I’m already blessed enough.

And may I never be too busy, to help others bear their loads.
Then I’ll keep drinking from my saucer, ‘Cause my cup has overflowed.

The SCARF Model

Conversations are much more than a simple exchange of words. Consciously or not, every time we interact with someone, we’re meeting some of their social needs and perhaps depriving them of others. That is, we’re using language and engaging in behavior that either uplifts and motivates people or causes them to withdraw and shut down.

Have you ever struggled with building teamwork? Do you remember times when you thought everything was working well, only to find that your colleagues were unhappy or frustrated? A little while back I came across the SCARF model to improve communication and understand your influence when working in a team.

The SCARF model, from David Rock out the Neuroscience Leadership Institute (2008), provides a framework to understand the five domains of human social experiences. David Rock and his team found that there are 5 areas of our brains that light up (via brain scan technology) during our social experiences.

Status – Sense of respect and importance in relation to others. “I am respected by my family, friends, and colleagues.”

Certainty – Sense of clarity to predict future outcomes. “I am confident I know what is coming next in my life.”

Autonomy – Sense of control over events that impact the future. “I am the master of my own destiny.”

Relatedness – Sense of connection with others in your groups. “I am connected to those around me.”

Fairness – Sense of non-biased and just treatment between people. “I am treated justly.”

These five areas can either be interpreted by us as a reward or threat based on the type of social experience we are having.  Conflict is, by its very nature, a social experience.  When we experience conflict we are experiencing the threat response side of the SCARF model. The different ways our brain interprets social experiences in the SCARF model is summarized in the graphic below.

😱Respond To Threats
👉🏻Blood is redirected from the brain to the muscles
Which means: Less creativity, fewer ideas, short term thinking, conflict

🤩Responding To Rewards
👉🏻Increased blood flow to the brain
Which means: More creativity, more problem solving and insights, fresh ideas

Once you know how and why you react, with better understanding you can manage your own responses, have increased empathy for others and increase engagement amongst your team and colleagues.

Many of us will have one or two areas in this SCARF model that will be regular conflict triggers for us.  For me, they are Fairness and Certainty.  A lot of my conflicts surround these topics. 

There you have it. That’s the SCARF model. 

Remember that not everyone works the same way and that everyone can react differently to any given situation. To use the SCARF model most effectively, it’s key to understand each of your team members. Consider who that individual is before taking any action, and adjust your strategy accordingly. If you can master applying the SCARF model to your daily interactions, you’ll be one step closer to building a functional and fulfilling working environment for everyone around you. 

St. Joseph

Everything we know about St. Joseph comes from scripture. We know he was a carpenter, a working man, for the skeptical Nazarenes ask about Jesus, “Is this not the carpenter’s son?” (Matthew 13:55). He wasn’t rich for when he took Jesus to the Temple to be circumcised and Mary to be purified he offered the sacrifice of two turtledoves or a pair of pigeons, allowed only for those who could not afford a lamb (Luke 2:24).

We know he was a compassionate, caring man. When he discovered Mary was pregnant after they had been betrothed, he knew the child was not his but was as yet unaware that she was carrying the Son of God. He knew women accused of adultery could be stoned to death, so he resolved to send her away quietly to not expose her to shame or cruelty. 

We know Joseph loved Jesus. His one concern was for the safety of this child entrusted to him. Not only did he leave his home to protect Jesus, but upon his return settled in the obscure town of Nazareth out of fear for his life. When Jesus stayed in the Temple we are told Joseph, along with Mary, searched with great anxiety for three days for him (Luke 2:48). We also know that Joseph treated Jesus as his own son for over and over the people of Nazareth say of Jesus, “Is this not the son of Joseph?” (Luke 4:22)

We know Joseph respected God. He followed God’s commands in handling the situation with Mary and going to Jerusalem to have Jesus circumcised and Mary purified after Jesus’ birth. We are told that he took his family to Jerusalem every year for Passover, something that could not have been easy for a working man.

Since Joseph does not appear in Jesus’ public life, at his death, or resurrection, many historians believe Joseph probably had died before Jesus entered public ministry.

We celebrate two feast days for Joseph: March 19 for Joseph the Husband of Mary and May 1 for Joseph the Worker. March 19 has been the most commonly celebrated feast day for Joseph, and it wasn’t until 1955 that Pope Pius XII established the Feast of “St. Joseph the Worker” to be celebrated on May 1. This is also May Day (International Workers’ Day) and believed to reflect Joseph’s status as the patron of workers.

Joseph is also patron saint of the Universal Church, families, fathers, expectant mothers (pregnant women), travelers, immigrants, house sellers and buyers, craftsmen, engineers, and working people in general.

Joseph is the patron saint of the dying because, assuming he died before Jesus’ public life, he died with Jesus and Mary close to him, the way we all would like to leave this earth.

The prayer below to St. Joseph is among the first few prayers we learned at home and said daily at the end of our rosary.

O St. Joseph,
whose protection is so great, so strong, so prompt before the throne of God,
I place in thee all my interests and desires.
O St. Joseph, assist me by thy powerful intercession
and obtain for me all spiritual blessings
through thy foster Son, Jesus Christ Our Lord,
so that, having engaged here below thy heavenly power,
I may offer thee my thanksgiving and homage.
O St. Joseph, I never weary contemplating thee and Jesus asleep in thine arms.
I dare not approach while He reposes near thy heart.
Press Him in my name and kiss His fine head for me,
and ask Him to return the kiss when I draw my dying breath.
St. Joseph, patron of departing souls, pray for me.

Pope Francis 10 years on

Early in Pope Francis’s pontificate, the sense of expectation was enormous.

He spoke simply and powerfully. He stayed away from the typical trappings of papal luxury. He was seen as an outsider and a natural reformer. He stirred some trepidation among conservatives, but not enough to override the global adulation. “The People’s Pope,” Time magazine called him, naming him person of the year in 2013.

Today is 10 years since Francis was elected pope. In that time, he has retained many of his personal hallmarks, and he has altered the Catholic Church in important and potentially enduring ways, including by making pillars out of issues such as migration and the environment.

Pope Francis asked for prayers as he spoke about the future of the Church and his pontificate so far in an interview published yesterday.

“Being the pope is not an easy job. Nobody has studied before doing this,” the pope said, recalling how St. Peter also “fell” when he denied Christ.

“But, after the resurrection, Jesus chose [Peter] again,” Pope Francis explained. “That is the mercy of the Lord towards us. Also towards the pope.

Asked about his wish for the world, Pope Francis responded: “peace.” He also criticized what he called a “globalization of indifference” in the face of tragedies like war: “The turning a blind eye and saying, ‘Why should I care? It doesn’t interest me! It’s not my problem!’”

Francis said one of his dreams for the future of the Church is a Church which ventures out into the world and is among the people.

Addressing readers of the newspaper, he asked for prayers from those who pray and “good vibes” from those who do not. “The pope loves you and is praying for you.”

“Even if bad things happen, even if you have had a bad experience with someone from the Church, don’t let it condition you. The Lord is always waiting for you with open arms. I hope you succeed in experiencing it within your lives like I have within mine many times. The Lord has always been beside me, above all in the darkest moments.”

As Pope Francis celebrates the 10th anniversary of his papacy, may we lead by his example of caring for the poor, reaching out to people often overlooked and sharing the joy of the Gospel.

Here are 10 facts about Pope Francis, shared by the Archdiocese of Bombay.

Morning Rose Bud ~ Fr. T

morning rose bud
each one prophecy
each one promise
sequence fulfill
unfathomable way
only He knows
till dazzle bloom
and way beyond

His touch of grace
His always there…

my life a prophecy
His promise made
I must fulfill
through living faith
of what must be

His plans unfold
uncertain ways
my joyous life
not sacrifice
but fully lived
sufficient grace
an offering

photo and poem by Fr. Terrence Quadros SJ

Suitcase on Wheels

We put wheels on bags after we put a man on the moon, made the internet and started flying the Boeing 747. What took so long?

In 1970 Bernard Sadow had no luck selling his new invention into Department stores.

“I showed it to every department store in New York City and everybody said I was crazy. ‘Nobody’s going to pull a piece of luggage with wheels on it.’ People just didn’t think in those terms,” 

He was a Vice President of a Luggage company, and simply put 4 wheels on the bottom of a normal case. Macy’s finally started selling them, with a campaign called ” “the Luggage That Glides.” A patent for 2 years followed, before other makers jumped into the market.

We learn from this than innovation is inextricably linked with culture and society.  

Until the 1970’s travel was for the wealthy only. 

People who travelled didn’t carry their own bags, they had staff too. The idea they’d lift things themselves was outrageous.  
And thus the buyers were not the users and there was a huge disconnect in the market. 

(For similar reasons domestic use of electricity was slow, why would a house owner care how hard their staff found it to light lights, or cook food) 

The idea of dragging luggage on wheels was seen as less sophisticated or too utilitarian. 

But Sadow didn’t change the world. The bag was still slightly awkward to use, as as more people entered the travel market, traveling more and more often, it was a bad bag for people who wanted to travel alone or for quick trips. 

It was even later, in  1987, US pilot Robert Plath created the modern cabin bag. As a pilot for Northwest Airlines, Robert Plath had to travel very frequently so he knew what people really needed.

He made a far smaller version of Sadow’s suitcase and reoriented it to be more upright and with a longer telescopic handle. Now the bag would be easier than ever to move, with no bending over.

It’s then the bag took off. 

But in an even more useful twist to the tale, we learn than neither really invented wheeled luggage. It was 1954, when the Polish/Croatian painter Alfred Joseph Krupa first attached wheels to a bag.

Krupa was an amateur boxer and martial arts practitioner, and he also taught target shooting and fencing, and a chronic inventor.

But the timing wasn’t right, he didn’t have the right connections, he was born into a country that didn’t have a clear path to global markets at the time, and he had so many ideas, he could never just focus on one. 

There is a lot that can be learned from all of this. Take from it what you wish.

My biggest takeaway here is that the idea itself, however crucial, is only about 1% of the process needed to make it work. And that there’s a bit of luck with timing and opportunities involved, perhaps outside of our control. Then I get to thinking…how many potentially great inventions/prototypes are out there, but are victims of bad timing or placement, or the inventor being discouraged from an initial rejection?

Lenten Poem

Christmas is over and it’s Lent all over again,
Should I eat a meat sandwich or should it be plain?
Should I fast for 5 hours or skip breakfast and lunch,
Or just have tea and a little something to munch?

Should I stop smoking or should I shun drink,
Should I stop thinking those wrong thoughts I always think?
Should I be patient with the one driving in front of me,
Should I give a mouthful to my colleague or just let him be?

This, my friends, is what we’ve made Lent out to be,
A set of bargaining chips, to be paid as salvation fee!
It is just a reminder for you and for me,
The price has been paid, by the One on the tree!

Let’s make use of this time given to us for no fee,
To reconcile with the world and the One who set us free.
Because no chicken or chocolate can ever pay the price
That has already been paid by our Lord Jesus Christ.

Just repent.….


How to Reduce Mobile App Size

Mobile phones have evolved a lot over the last few years. However storage is still a big concern. In addition to all the apps we have installed, we still would love to have a lot more storage for our photos and music. This makes the mobile app developer’s job a little more challenging as they need to keep their application size in control to make downloads fast and improve the user experience. 

Source: CleverTap

When forced to uninstall a few apps to make room in their phone’s memory, a person is most likely to choose from a list of apps that take up more space and are used the least. If your app is on that list, it’s likely getting deleted.

A bigger app size also results in longer installation time and slow launch times. When choosing between apps with similar features and similar ratings, a user is more likely to go for one that takes up less space in their phone. 

Here are a few techniques used to reduce app size and improve performance so your app gets downloaded and stays on your ideal user’s device.

Compress image files

Many apps, if not all, make use of images to improve user experience. Reducing the size of these images is an easy way to decrease your app size.

There are two ways to reduce image size:

  1. Remove metadata from image files (lossless compression)
  2. Reduce file size by reducing image quality (lossy compression)

Remove metadata from image files

Your image files have a lot of metadata stored in them that has nothing to do with image quality. For example, an image taken with a digital camera may store information about the date, time, shutter speed, flash mode, and camera manufacturer and model. Removing this information will reduce the file size without having any impact on image quality. 

To remove metadata in Windows 11, right-click the image, go to Properties, and click Details. The window will give you the option to ‘Remove Properties and Personal Information.’

Source: Bitrise.io

Click on that, and you’ll get another window to select the metadata you want to remove.

Source: Bitrise.io

Select all and click OK. That will remove all metadata. This method will not result in a significant decrease in file size. However, doing it for every file in your app will result in a cumulative reduction in size that can make a noticeable difference.

To remove the metadata from images on MacOS, you need to use a third party application like Exif Metadata to remove metadata from your photos.

Use vector graphics where possible

Vector graphics are images generated based on mathematical commands that tell the system to connect a series of points. Vector graphics are smaller in size and more scalable compared to raster images — images that are saved as pixels. Vector graphics are usually saved in SVG (scalable vector graphics) format.

The use of vector images for icons, symbols, logos, and characters is very common, and you can create a vector version of any raster image using Adobe Illustrator or a similar tool. Doing so will result in the loss of some colors and sharpness — so this method is not applicable in all cases. If your app is image heavy and you think that converting all raster images into vector images will be too resource intensive — or there will be an unacceptable loss of quality — you can always go for image compression.

Use image compression tools for raster images

Image compression tools such as TinyPNG can compress images by reducing their quality by 50% or more. This is also called lossy compression and is achieved by removing less critical information from the image. This is an irreversible process, and the compressed image cannot be restored by any means.

With high-resolution images, the human eye cannot spot the difference between the original image and the compressed image. That is why lossy compression using an image compression tool is a good idea to reduce the size of all images used in your app. 

Using this method, you can reduce the file size for each image by a few hundred kilobytes or just a few kilobytes depending on how much you choose to compress the images. If there are dozens or hundreds of images in your app, the saved space will become significant.

Reduce or remove unused resources

As you keep updating your app, some features may become obsolete, and some layouts, colors, strings, etc., may slowly go out of use. Removing unused resources of all types when you update will help you keep your app size small.

Remove unused resources in iOS

You can open up the app in Xcode and see all the resources in the resource list or use a tool like FengNiao to detect all unused resources. The tool helps you find all unused resources, which you can then remove from the IPA file. Your IPA (iOS App Store package) file is a compressed file that contains all the resources, code, and metadata that iOS uses to distribute and install apps.

Remove unused resources in Android

Use the lint tool to detect unused resources in your APKfile. The APK file is the Android equivalent of the IPA file — it is a compressed file that contains all the resources, code, and metadata that Android uses to distribute and install apps. The lint tool shows warnings about all unused resources, and you can then proceed to remove them.

Use Android App Bundle for Android

The Android App Bundle is a pre-APK publishing format that contains all of your app’s resources and code. Google Play uses it to create multiple APKs, each optimized to support a different device.

Using the Android App Bundle helps you reduce download size. That’s because once you sign up for it, Google Play only delivers the resources necessary to run the app on each device. For example, Super Mario Run on Google Play has a download size of 60 MBs for devices with smaller screens and 80+ MBs for those with bigger screens.

You can use the Gradle command to build your App Bundle by using the following command: 

./gradlew :app:bundleDebug

Use App thinning for iOS

App thinning removes unnecessary resources and code from your IPA file. Using this technology, you can decrease the size of your app on your users’ phones. When you export your app to the App Store, you get the option to enable App thinning.

Additionally, you can enable on-demand resources. The App Store hosts all resources for released apps — resources being images, video, and sound files. Enabling on-demand resources means resources are downloaded in the background as needed, only called when needed, and removed when not needed automatically. You have to mark on-demand resources by tagging them.

The App Store also creates multiple variations of your app for different versions of iOS and devices. These variations only contain the necessary resources needed to run the app; all else is removed. This is very similar to how Android App Bundles work. The App Store does it for every new app now, i.e., you don’t have to enable this option from anywhere.

Aim for a lower-than-average app size — and keep it that way

The top apps on the App Store are 153 to 206 MB in size, and those on Google Play are 55 to 73 MB. This also depends on the type of app. A gaming app will definitely be bigger than a To Do app. But aiming for a lower-than-average app size can lead to quicker installation and better performance — giving you a chance to increase your conversion rate and user retention.

Having a small app size on release is good, but as you release new updates and features, your app size will grow. To keep the app size lower than the average for your category, you need continuous testing and monitoring capabilities.

Any other tips/ideas/suggestions on reducing app size? Let me know in the comments below!