zetavg's Avatar

zetavg

@zeta.vg

⿻ Hybrid Developer ฅ'ω'ฅ https://github.com/zetavg 🐦 馬斯克還我鳥 (@zetavg on Twitter, @zetavg@g0v.social on Mastodon)

81
Followers
61
Following
59
Posts
12.06.2023
Joined
Posts Following

Latest posts by zetavg @zeta.vg

A virtual certificate with text "Celebrating 10M users on Bluesky, #119,618, zetavg ‪@zeta.vg‬, joined on Jun 12, 2023"

A virtual certificate with text "Celebrating 10M users on Bluesky, #119,618, zetavg ‪@zeta.vg‬, joined on Jun 12, 2023"

Bluesky now has over 10 million users, and I was #119,618!

09.10.2024 19:09 👍 3 🔁 0 💬 0 📌 0

🤟 🙋 🤟 🙋 👐 🙏 🤗

08.07.2024 23:21 👍 1 🔁 0 💬 0 📌 0

🩷 💚 💙 💛 🧡

04.06.2024 15:10 👍 0 🔁 0 💬 0 📌 0

Saw the Bluesky team is already very busy working on amazing features (it seems that commits and PRs are even made and opened on weekends). Should do my best not to increase their workload.

26.05.2024 06:59 👍 6 🔁 0 💬 0 📌 0

Thank you! It’s also impressive how swiftly they review, test, merge, and release contributions. I would recommend the Bluesky app to OSS enthusiasts as a widely-used RN app to contribute to.

26.05.2024 06:57 👍 2 🔁 0 💬 2 📌 0

Thanks for testing it out! Glad to make the Bluesky mobile app more appealing for Android users.

26.05.2024 06:37 👍 3 🔁 0 💬 0 📌 0

希望打破都市傳說到出一台 mini 版的旗艦型 iPhone 的程度 😭

我也想要 120hz 和微距鏡頭rrr

23.05.2024 14:12 👍 2 🔁 0 💬 1 📌 0

崩潰 🫠

23.05.2024 12:12 👍 3 🔁 0 💬 1 📌 0
A poster taped on a wall. The main text on the poster reads “BIRDS AREN’T REAL” in bold letters. Below this, it says “Wake up, 35c3!” and features a silhouette of a bird with the text “GOVERNMENT SURVEILLANCE DRONE” underneath it.

A poster taped on a wall. The main text on the poster reads “BIRDS AREN’T REAL” in bold letters. Below this, it says “Wake up, 35c3!” and features a silhouette of a bird with the text “GOVERNMENT SURVEILLANCE DRONE” underneath it.

Glad you mentioned it! My ultimate goal is to bring the bird back 😈
(Decided 2 seconds ago)

Since Twitter isn’t open-sourced, I finally ended up here 🐦

23.05.2024 06:00 👍 25 🔁 0 💬 2 📌 0

So this may be a react-native-reanimated worklet function (when used as an onScroll event handler?) thing.

Test code: gist.github.com/zetavg/6f1d2...

22.05.2024 00:55 👍 0 🔁 0 💬 0 📌 0
const obj = {
  a: 1,
  b: 2,
  c: 3,
  d: 4,
};

function fn() {
  return obj.a;
}

Run 1e6 times under React Native on Android (Hermes): 252.8965630531311ms

const obj = { a: 1, b: 2, c: 3, d: 4, }; function fn() { return obj.a; } Run 1e6 times under React Native on Android (Hermes): 252.8965630531311ms

const obj = {
  a: 1,
  b: 2,
  c: 3,
  d: 4,
};

const { a } = obj;

function fn() {
  return a;
}

Run 1e6 times under React Native on Android (Hermes): 242.1379680633545ms

const obj = { a: 1, b: 2, c: 3, d: 4, }; const { a } = obj; function fn() { return a; } Run 1e6 times under React Native on Android (Hermes): 242.1379680633545ms

Well, I do expect this to have some perf difference (or not, due to some JS runtime optimization magic?)

But, yes, it shouldn't be that significant.

At least, it shouldn't cause a function running at 60fps to lag.

22.05.2024 00:55 👍 0 🔁 0 💬 2 📌 0

Did a quick search & couldn’t find any documentation or discussions on this... tip?

If anyone knows of someone talking about this somewhere, please let me know!

22.05.2024 00:53 👍 1 🔁 0 💬 1 📌 0

Took me some time to identify the cause of this issue.

It’s interesting how accessing a property of a tiny object (just 4 properties!) in a react-native-reanimated worklet function can noticeably impact performance.

22.05.2024 00:52 👍 7 🔁 0 💬 1 📌 0

The downside of having a highly customized theme is that it has to be maintained from time to time. Luckily, even without maintenance, this hasn't broken down within half a year.

21.05.2024 03:30 👍 2 🔁 0 💬 0 📌 0
Bluesky App Laggy Scroll Improvement
Bluesky App Laggy Scroll Improvement https://github.com/bluesky-social/social-app/pull/4108

發現了如何改善 Bluesky app 在 Android 上,時間軸的捲動會卡頓的問題。 youtu.be/ipZeTkb2mAk

可能算是 react-native-reanimated worklet function 的一個小地雷?

(App 時間軸的捲動流暢度跟 web app 版比、或是時間軸頁面的捲動和個人檔案頁面的捲動相比,滑順程度有明顯落差。)
(比較好的 Android 裝置可能感受不太出來,但中階或以下會隨著等級越低越到無法接受的程度。)

19.05.2024 10:22 👍 4 🔁 0 💬 0 📌 1
Preview
3rd Party Twitter Apps - HackMD TwitterIt for Twitter基本上是把網頁版 Twitter 包在 app 裡,很難用⋯⋯

稍微看了一下,撇除 X API 的定價可能是無法忽略的開支,要獲得穩定的 API 供應也是堪憂呀⋯⋯畢竟他們有無預警封殺 3rd party client 的紀錄,而且這樣也擋了廣告的獲利。

雖然似乎還是有一些 3rd party app 活著,初步研究了一下他們是怎麼做到的 🤔

hackmd.io/@z/3rd-party...

19.05.2024 02:28 👍 0 🔁 0 💬 0 📌 0
Preview
Expand the background color to cover the overscroll area on settings screen on iOS by zetavg · Pull Request #4101 · bluesky-social/social-app This is just a minor visual tweak to make the settings screen look better on iOS. Before After

先發個小小的 PR 試試水溫 github.com/bluesky-soci...

18.05.2024 23:42 👍 1 🔁 0 💬 0 📌 0
Preview
Native translation expo module by mozzius · Pull Request #4098 · bluesky-social/social-app

剛好 30 分鐘前有人也發了 PR 了 🎉

github.com/bluesky-soci...

18.05.2024 23:29 👍 0 🔁 0 💬 0 📌 0

做來自己用簡單,做完發 PR 難呀~

18.05.2024 23:28 👍 0 🔁 0 💬 2 📌 0

今非昔比 😅

18.05.2024 05:06 👍 0 🔁 0 💬 0 📌 0
Post image
18.05.2024 01:56 👍 37 🔁 30 💬 0 📌 0

(剛剛在看 code 試著拿一個自訂的 URL 當作是 tenor 上的 gif 丟進 gif selector UI 的 onSelect callback 看能不能變成那樣,但沒有成功 😛)

18.05.2024 04:04 👍 0 🔁 0 💬 1 📌 0
Preview
Cat GIF ALT: Cat GIF

不過丟 giphy 就會變一個小小的播放器的樣子,沒辦法像從 tenor 挑的 gif 一樣變這樣:

18.05.2024 04:01 👍 0 🔁 0 💬 1 📌 0

太陽花十週年紀念活動。

18.05.2024 03:18 👍 1 🔁 0 💬 1 📌 0
Preview
Animated GIF - Find & Share on GIPHY Discover & share this Animated GIF with everyone you know. GIPHY is how you search, share, discover, and create GIFs.

原本的 Google 翻譯用起來大概是這樣的感覺⋯⋯按下去等幾秒後再捲捲捲,幾乎要快五秒才總算看到翻譯。

media.giphy.com/media/v1.Y2l...

18.05.2024 02:55 👍 1 🔁 0 💬 0 📌 0
Preview
Animated GIF - Find & Share on GIPHY Discover & share this Animated GIF with everyone you know. GIPHY is how you search, share, discover, and create GIFs.

修改 Bluesky app,把貼文 translate 的功能改接到 iOS 系統內建翻譯。

好用多啦~幾乎按下去瞬間就能看到翻譯 🎉

media.giphy.com/media/v1.Y2l...

18.05.2024 02:54 👍 5 🔁 0 💬 3 📌 0

DM 我幾乎都只有轉貼文給別人的時候會用⋯⋯

我還期待早日能 PO 影片和 gif 🍿

18.05.2024 00:02 👍 2 🔁 0 💬 1 📌 0

不過這或許也要歸功於 iOS 在作業系統的層級就提供了相當多好用的 API 和 UI,例如 stack 和 modal navigation、ScrollView 與螢幕上鍵盤的互動處理、action sheet、context menu⋯⋯等,而 iPhone 上的系統,通常就只會是那幾個版本,於是大家就可以放心地直接使用這些系統提供的功能(像是幾乎完全沒看過它卡過的 iOS navigation),將它們包成 RN packing 變成人人都在用的 community standard。

17.05.2024 18:41 👍 2 🔁 0 💬 0 📌 0

目前我開發 RN 的感覺是,RN 無論如何比起 native app 都多了一個 JS 層的 element tree 要處理,應該無論如何效能或能耗都比純 native 差上一點。以及同樣的 app 在 Android 上的體驗相較於 iOS 會比較糟:撇除可能 RN 在 Android 上的實作有效能差異、或 UI thread 比較容易受到其他 thread 的影響而變得卡頓之外,RN 生態圈在 iOS 上有比較多 native component 的實作可能也是一個主要原因。

17.05.2024 18:38 👍 3 🔁 0 💬 1 📌 0

我的理解也是 RN 本身的限制(但並非無法解決,像 Discord 就順到不像 RN),Expo 倒像是讓 RN 開發起來比較順手的工具包 + 一堆常用的高品質 library。不過也有一個可能是包了很多 expo 或外部 lib 讓 app 變肥變慢。

17.05.2024 18:38 👍 3 🔁 0 💬 2 📌 0