
saket
5.1K posts

Sabitlenmiş Tweet

🔥 Introducing telephoto, a compose library for displaying zoomable images with automatic sub‑sampling of large bitmaps: saket.github.io/telephoto/
English

I built a tiny IntelliJ IDEA plugin for something that had been bothering me for years github.com/saket/intellij…
English

@marcel_butucea It is currently hardcoded to support .kt and .java files only: #L76" target="_blank" rel="nofollow noopener">github.com/saket/intellij…
Feature requests and contributions are welcome!
English

@saketme Nice to see a dedicated solution for comment continuation. Does the plugin infer the comment token from the file type, or is it hard‑coded for Java/Kotlin? Would love to see it handle block comments too. 🤔
English

After 2.5y of dev, github.com/saket/telephoto is nearing ~600 UI tests that verify all possible combinations of usages. It's one of the most thoroughly tested UI libraries you'll find for Android. Shout out to my friends at emulator.wtf who made them possible to maintain!
English

@mustafa01ali I often think about this, surprised I pulled it off given how clueless I was back then. First time landing abroad, I took a taxi from SFO to Daly City with no internet and was dropped in some random deserted area.
My current 30y old self would panic just thinking about this.
English

@xovemnormie Both companies make bad designs, but the difference is in frequency/consistency. Apple's issue become news because they're exceptions, but with Google, details like this slip through more often imo.
Another recent example: x.com/saketme/status…
saket@saketme
My designer friends at Google, I love you, but this has to be one of your saddest attempts at copying Apple's UX. androidauthority.com/android-flashl…
English

@TechHighest Depends on the device profile I guess? My screenshot was taken with a Pixel 10 Fold. Here's another with Pixel 8:

English

@saketme It’s part Qt, part folks not willing to listen to me saying we can literally draw these in code now. What are we doing…
English

@evowizz I went through the exact same experience when I was building github.com/saket/byte-size
English

Today I finally looked into size formatting.
Maybe I'm the last to fully understand this but:
1 GB (decimal) is not the same as 1 GB (memory).
It means that 16 GB of file download is 1000 MB x 16, and 16 GB of RAM is 1024 MB x 16.
Here's the thing. You may think that 256GB of storage means 1024 MB x 256. But it actually means 1000 MB x 256. It's funny, because it means you actually have 238 GB in binary.
So to differentiate these, in 1998 the International Electrotechnical Commission (IEC) created new names for binary units. When talking about memory, instead of writing 16 GB of RAM, we should write 16 GiB of RAM. GiB stands for "Gibibyte".
The thing is, very few systems and people are using Mebibytes, Gibibytes, Tebibytes, etc. But the majority of people don't know that 1 GB can represent 2 distinct values depending on which unit is used.
So essentially we're stuck with GB meaning two different things, and a fix almost nobody adopted.
English

You also see this in India. Always in areas where there's a high chance of renters squatting and not paying rent. The deposits are insurance against that, and usually are ruinous for the renters. They end up having to take loans from loan sharks.
It's a sign of a weak judicial system and low trust in the housing market. It's not some amazing invention for the benefit of renters.
Èyítànwá (토이바) 🇳🇬🇰🇷@mus_toyy
Korea has a housing system that makes foreigners' brains stop working. It's called 전세 (jeon-se). You give the landlord a massive deposit — like ₩200,000,000 to ₩300,000,000. Then you pay ZERO rent. Every month. For 2 years. (You still pay utilities and maintenance fees — but zero rent.) When you move out? You get the ENTIRE deposit back. "Wait. So you just... live there for free?" Basically, yes. The landlord invests your deposit and keeps the returns. "And you get ALL of it back?"
English

@android_poet Do you have examples? This hasn't been my experience, but probably because the core Android dev community isn't really here anymore. Most prominent developers have migrated to Bluesky, Mastodon, and Slack since Elon took over Twitter.
English


@csinco @adhidesign Yep yep I'm using this as a reference. Though it only supports two actions, which makes sense for watches, so I'll have to figure out the right design for beyond that on larger displays.
English

@saketme @adhidesign Though it does seem to exist for Wear Material. Ha. Likely the implementation could be ported over. developer.android.com/design/ui/wear…
English

@saketme The server and videos hosting fees are exceeding the income now. So probably not.
English

Codingwithmitch.com will most likely be shutting down at some point this year. I've been at Block for 4.5 years now and I have no plans to produce new content any time soon for codingwithmitch. Thanks for the great years!
English

@evowizz In general this is the direction I'm aiming for, but with a bit more flexibility: developer.android.com/design/ui/wear…
English

@evowizz > honestly it wouldn't be that difficult
Haha. This is actually how I originally started building the library. If you have multiple swipe actions on either side, the effort to display them and identify their selections is so high that you might as well build from scratch.
English

The answer was no, so I'm building this myself as v2 of github.com/saket/swipe. Here's a first draft:
saket@saketme
Did Google ever release this swipe component as part of Material Design?
English












