James Ide Profile Banner
James Ide Profile
James Ide

@JI

5,019
Followers
101
Following
206
Media
2,456
Statuses

The official IDE of @expo

California, USA
Joined July 2010
Don't wanna be here? Send us removal request.
Pinned Tweet
@JI
James Ide
2 years
2 letter username is my blue check
3
2
58
@JI
James Ide
2 years
With the newest version of Git 2.37.0, you can run just "git push" to push new branches. No more "--set-upstream origin". Enable with: git config --global --add --bool push.autoSetupRemote true
Tweet media one
168
2K
13K
@JI
James Ide
8 years
Almost never open the Mac App Store again with "mas" (brew install mas). You Won't Believe It Actually Works.
Tweet media one
42
1K
3K
@JI
James Ide
5 years
How to Unix ~ by 🐱
9
414
1K
@JI
James Ide
7 years
I finally understand MVC
Tweet media one
2
956
961
@JI
James Ide
2 years
Note to iOS developers working on an app for awhile: two Apple certificates used to sign your provisioning profiles expired today. When you try to submit your app for review you'll get an ITMS-90165 error. Fix is to get a new provisioning profile.
21
134
479
@JI
James Ide
3 years
use-unmount-signal is a React Hook for canceling promises like network requests when a component is unmounted. · Standards-friendly: works with any web or Node API that takes an AbortSignal · Tiny: 269b minified/167b Brotli · New: tell me if it's useful
Tweet media one
4
74
433
@JI
James Ide
5 years
Today, with much heavy lifting from @cpojer , we’ve replaced 100% of Haste in React Native with standard paths. Years in the making, this opens React Native up more to standards-compliant web tools and eliminates the whole class of Haste map errors.
8
60
345
@JI
James Ide
7 years
If someone you know is starting a company and wondering about React's license, I wrote this for them to learn "why":
3
160
296
@JI
James Ide
2 years
expo-image is in beta and brings modern image formats to your universal apps ◆ AVIF, WebP, SVG, APNG, HEIC ◆ JPEG, PNG, GIF too ◆ Up to 91% smaller animations with AVIF: ◆ Universal: Android, iOS, web 👉 npm i expo-image && npx expo run:{android,ios}
Tweet media one
@tsapeta
Tomasz Sapeta 𝝠 swmansion
2 years
🎉 expo-image just transitioned from alpha to beta! 🎉 Thank you all who gave us feedback during the alpha period 🙏 Check out @expo docs for more details on what it can do:
9
25
283
5
31
252
@JI
James Ide
7 years
Neat post from Uber on React Native in production, downloading new JS bundles, embedding WebViews, Flow type checks:
3
94
250
@JI
James Ide
4 years
A (very small) portion of @expo 's balance sheet is now in Ethereum. Also expo.eth 👀
6
15
204
@JI
James Ide
7 years
StackOverflow surveyed 64,000 devs on libraries & frameworks: ❤️ Most loved: React 💀 Most dreaded: Cordova ⚛️ This spells: React Native
Tweet media one
4
75
183
@JI
James Ide
9 years
Last week I asked what people would like to learn about. By popular demand: “Routing and Navigation in React Native”
6
64
184
@JI
James Ide
4 years
We’re open sourcing the Results API, a building block for batching operations that might succeed or fail. · 1 KB minified · 1st class TypeScript support · 1st class plain JavaScript support · 100% test coverage · Matches Promise.allSettled results
Tweet media one
5
20
165
@JI
James Ide
4 months
⭐️ react-native is truly native ⭐️ React Compiler is actually a compiler ⭐️ react-native-ide is a real IDE — @kzzzf @appjsconf
Tweet media one
3
23
163
@JI
James Ide
8 years
The main Amazon app now uses React Native 😮! @Amazon / @AmazonLab126 want to talk about building your other apps like Alexa with @exponentjs ?
3
66
158
@JI
James Ide
3 years
We haven't shared a blog post on it yet but we've open sourced EAS's data layer called "Entity". Every time you log in to Expo, load an update, queue a build, add a team member, you're using Entity. We wrote Entity for security, correctness, and speed.
5
19
156
@JI
James Ide
1 year
New @Expo stickers for 2023 came in, here’s a peek. @appjsconf attendees will get two designs (and more than stickers 😉), this year’s are ✨ holos ✨
Tweet media one
9
8
158
@JI
James Ide
7 years
I used a library named Rock. Then Paper came out so I migrated to Paper. But Scissors beat Paper so I switched. Then they announced Rock v2…
7
57
134
@JI
James Ide
7 months
One of @Expo 's internal services has been running @bunjavascript in production for five months 🤫 An update to Bun fixed a memory leak and now it runs with 1-2 millicores and 20-30 MB of RAM
Tweet media one
3
10
133
@JI
James Ide
8 years
Now CS people can have muxes too! "mux" is a powered-up Promise.all that awaits promises in arrays/objects/Maps/Sets
Tweet media one
6
43
130
@JI
James Ide
8 years
@JI And for system updates to macOS and iTunes use "softwareupdate". Starting an OS upgrade now.
Tweet media one
0
37
128
@JI
James Ide
8 years
These are some pro tips I learned using React Native: . I hope some of them are helpful 😄
Tweet media one
2
49
124
@JI
James Ide
3 years
Today the @Expo team is fully releasing Expo Application Services (EAS), the 1st chapter of a new era for Expo with support for native code and a yearlong+ team project. We've designed EAS to be optional but excellent for taking your Expo apps from development to the app stores.
@expo
Expo
3 years
Expo Application Services (EAS) is now available to everyone! Build and Submit apps with a free account today! We're also introducing Production and Enterprise plans suited to businesses and professionals.
17
145
547
4
15
126
@JI
James Ide
5 years
In a world where Expo succeeds, the way we write apps multiple times today will seem pretty crazy to the new generation of programmers. Our next step towards that world is web support for Expo projects and we're sharing the first experimental release today.
@expo
Expo
5 years
Totally thrilled to finally give you all a peek at what @Baconbrix 's been working on, and announce experimental* web support for the Expo CLI and SDK 😯🤯. Read on!
1
49
167
7
23
120
@JI
James Ide
3 years
Some programming guidance I give is to understand at least one layer of abstraction above & below the layer you're working at. Ex: consider UX + VMs when writing JS. A few years ago Expo Android needed code that can't be expressed w/Java → ended up writing JVM bytecode directly.
Tweet media one
3
12
116
@JI
James Ide
2 years
Concurrent rendering in React enables stable frame pacing and responsiveness. If parallelized, React could outperform single-threaded native UI. I’ve been writing React for 10 years now. Concurrent rendering is one of the most important changes I’ve seen since React’s invention.
@reactjs
React
2 years
React 18 is now available on npm! Here’s an overview of what’s new in React 18, and what it means for the future.
168
3K
9K
5
9
108
@JI
James Ide
5 years
Who decided to call it k-pop instead of Seoul music
3
24
103
@JI
James Ide
3 years
Making a new role at Expo called Developer Success Engineers. Looking for developers who are excellent at helping developers. Work on our open source repos, provide enterprise care for customers, make Expo help our customers be successful. Full post here:
5
19
98
@JI
James Ide
8 years
FB+Google+Microsoft shaped my intuition of how code bases affect engineering strength & culture. This is Exponent's:
3
26
98
@JI
James Ide
2 years
The White House just released a report on the state of mobile app ecosystems w/a ✨very developer-friendly✨ conclusion and a call for more interoperability between platforms. Working on this every day and feels extra important now Full report:
Tweet media one
5
11
92
@JI
James Ide
5 years
React Native 0.61 will ship with standard path-based imports and requires. This standards-compliance is the start of a new era of universal tools. And to Haste, “What do we say to the god of death?” “Today.”
Tweet media one
2
12
88
@JI
James Ide
7 years
Someone get @ken_wheeler the DOM he actually wants
Tweet media one
7
6
85
@JI
James Ide
3 years
The judge of Epic Games v. Apple ruled Apple must let developers: 1. have buttons/links to other payment services (ex: Stripe) for IAPs 2. tell people how to pay for content Good news for people who use apps and make apps (everyone except Apple/Google).
5
15
83
@JI
James Ide
8 years
"Why is @yarnpkg separate from npm?" Yarn does a lot of things differently that we ❤️ working on @exponentjs :
Tweet media one
0
43
80
@JI
James Ide
7 years
Programmer compliments: "If you ran prettier on your face it'd be a no-op"
1
14
78
@JI
James Ide
8 years
This is a 3D game I made for the @getexponent team game jam. Physics, music, animations, lighting all running in Exponent driven by pure JS.
2
20
76
@JI
James Ide
2 years
Ad hoc provisioning profiles for iOS app development let you install builds on up to 100 of your team's devices. Previously to add a teammate you'd rebuild your app with a new profile that included your new teammate's device. Now, you can re-sign an existing build right away.
Tweet media one
@notbrent
brent 🇺🇦
2 years
a couple nice features that landed in EAS Build recently: - eas build:resign - re-sign a build after adding a new device to your ad hoc device list, without creating a new build. much faster than running a whole new build! - eas build:run - download, install, and run a sim build
8
15
90
1
5
79
@JI
James Ide
7 years
Who's looking forward to #ReactConf 2017 on Monday? I'm esp. excited for the lightning talks ⚡️, full schedule here:
Tweet media one
3
16
75
@JI
James Ide
4 years
In the 8 years I've written React, a few React libraries have stood out to me in their dedication. React Navigation has been a sustained effort for 3.5 years, a big part of React's lifetime and most of React Native's! Starting today, you too can sponsor @reactnavigation 's future.
@reactnavigation
React Navigation
4 years
React Navigation is now on @github sponsors! Check out this announcement blog post to learn about some great apps using it (from @Brex , @coinbase , @Shopify , @HowWeFeel , and more), a look at our recent accomplishments, and the team behind the library.
3
36
150
0
9
74
@JI
James Ide
1 year
JS debugging will level up again with @Expo SDK 49! When our app's code is broken, we want our app to change as little as possible when enabling the debugger. The Hermes JS inspector + the Expo Tools for VS Code make this possible and accessible
1
11
73
@JI
James Ide
8 years
#ReactNative 0.24.0-rc is out with better touch events on iOS, experimental native Animated on Android, and more:
1
46
66
@JI
James Ide
4 years
We just received @expo ’s first patent after a few years. (It’s for Expo Go’s special support for multiple SDK versions.)
Tweet media one
3
1
69
@JI
James Ide
5 years
Really respect this. “A delayed game is eventually good, a bad game is bad forever.” — Shigeru Miyamoto
Tweet media one
@reactjs
React
5 years
React 16.9 is now available! It contains several new features, bugfixes, and new deprecation warnings to help prepare for a future major release. Learn all about it on our blog:
33
933
2K
0
11
67
@JI
James Ide
4 years
We just set up the new GitHub issue templates for the @expo repo. When you open an issue you'll now see... · an actual form w/helpful instructions · clearly labeled fields · big text fields for freeform text, dropdowns for selections · no more <!-- instructions in comments! -->
Tweet media one
2
5
66
@JI
James Ide
5 years
He jokes, but Evan Bacon actually is one of those people who's worked so hard from a young age that his "years of experience" relative to others might exceed his age at some point.
Tweet media one
3
4
66
@JI
James Ide
3 years
A wild fact about Expo: for nearly six years we didn't have a module system. This year we're working on the Expo module system, official docs, etc. for writing native modules. Underlying layer will feel modern with Swift (iOS) & Kotlin (Android).
4
5
65
@JI
James Ide
4 years
Rewriting the main internal Expo repo's history to remove unused files dropped its size from 6.7 to 1.2 GiB (-82%)! Also ended up being an opportune time to rename master to main with all the rebasing. A bit faster and a bit more modern now.
Tweet media one
1
6
66
@JI
James Ide
9 years
If Node and React Native have made you nostalgic for compile times, npm 3 is here for you.
Tweet media one
0
67
66
@JI
James Ide
5 years
According to Apple, “10x” is pronounced “ten ten.”
0
0
62
@JI
James Ide
7 years
Expo has a new website and is featured on Product Hunt today!
Tweet media one
1
8
63
@JI
James Ide
3 years
After half a decade of work, Concurrent Rendering is here and will be the cornerstone of React’s competitive advantage in my eyes. CR paves the way for React to outperform* the DOM and native. (*like the way you might say Rust outperforms machine code though it’s compiled to it)
@reactjs
React
3 years
Our next major release is React 18. It will include out-of-the-box improvements like automatic batching, new APIs like startTransition, and a new streaming server renderer with built-in support for React.lazy.
86
1K
5K
3
5
62
@JI
James Ide
2 years
@alexandr_wang “How much was this project successful because this person joined?” v. “How much did this person join because the project was already successful?” Also reminds me of PG’s observation
Tweet media one
0
2
59
@JI
James Ide
10 months
From the original author of React Native Android
@kzzzf
Krzysztof Magiera
10 months
Yesterday at RNCK I demoed our new React Native IDE project we developed @swmansion . Check out the thread for details on each specific feature from the clip
87
332
2K
1
5
61
@JI
James Ide
8 years
React Native 0.24 is on npm w/release notes here: And 0.25-rc is here courtesy of @grabbou :
@grabbou
Mike
8 years
#reactnative 0.25-rc is out! Check out the updates and let us know on Github if you find any issues!
0
28
36
0
36
60
@JI
James Ide
4 years
One of the best features of @fbjest is how it makes you think about your code. What do you want to test? What *don't* you want to test? In the Expo push notification client we use Jest and fetch-mock to mock all network I/O. On GitHub Actions we get 99% test coverage in 2.6 s.
Tweet media one
1
5
60
@JI
James Ide
2 years
@10x_er geohot is legit, I'm not sure I've seen anyone seemingly not get stuck as much as George and that was over 10 years ago, around the time HR asked him for a resume and he sent a link to his Wikipedia page (hired)
2
1
58
@JI
James Ide
7 years
One of the best books for JS engineering (foundation for Redux, React Fiber, Prepack) was written 10 years before JS
4
13
58
@JI
James Ide
2 years
EAS Build's popularity is at an ATH and we're seeing customers needing to wait ~10 minutes for iOS builds. We strive for fast queues, usually < 1 minute, sometimes 5 minutes during busy times. More hardware is on order, hopefully will receive next week. Thanks for understanding.
3
2
59
@JI
James Ide
2 years
Git and code reviews at @Expo . Our main branches are linear histories. Rebase and merge. We've also got a cabal of engineers who believe stacked PRs is the #1 feature for GitHub could build ( @github pls)
4
3
58
@JI
James Ide
3 years
Start using custom native code in your universal apps with custom Expo development clients. Build them on your own computer (Xcode/Android Studio) or use a cloud service like EAS Build. The feature preview is here today.
0
11
56
@JI
James Ide
9 years
Sometimes people want to know about how we write our code. We're sharing some things we think about for coding apps.
3
21
55
@JI
James Ide
5 years
If you have multiple apps & libraries in your monorepo it's so great to link them together. Edit any JS/TS library and see your app change magically! Have been using expo-yarn-workspaces for over a year to link 120+ packages in the official @expo repo! 🎂
Tweet media one
6
9
57
@JI
James Ide
4 years
Of the many ideas in Deno my three favorites are: 🤝 a stable API like the web ⚛️ native TypeScript & JSX 📦 moving node_modules to user space I love these partly since @ccheever & I have been thinking similarly for @expo . Seeing Deno prove these ideas is helpful & inspiring!
Tweet media one
2
7
57
@JI
James Ide
3 years
@chancethedev The bottleneck in Chrome is 750+ ms of rendering, attributed to "System (self)". The main page element w/sidebars & newsfeed (4400+ child nodes for me) is set to "display: none" when showing a photo. Closing a photo removes "display: none", which alone took 1.05 s in this trace.
Tweet media one
5
0
57
@JI
James Ide
4 years
Made an extremely high-performance website at that loads over the network and renders in less than 30ms and has 100 on all Lighthouse metrics, 60 fps scrolling, and 100% a11y. Also the link to the new Discord is there.
Tweet media one
2
1
54
@JI
James Ide
3 months
6
7
55
@JI
James Ide
9 years
React Native just got async functions. The stars have aligned for us to unlock #ES7 's #AsyncAwait in #ReactNative .
1
43
53
@JI
James Ide
2 years
Very impressed with Linear's macOS app let alone the maybe surprising fact it's built with the web. Both @linear and @code set the gold standard Electron/desktop web views in 2022 🏅
Tweet media one
Tweet media two
2
3
52
@JI
James Ide
3 years
New instant mobile updates system from Expo continues to improve. Iteration speed like this is one of the holy grails of app development especially when you can deliver your latest work to both development and production. EAS Update currently in preview:
Tweet media one
1
10
52
@JI
James Ide
2 years
Every screen in your app gets a URL with @Expo Router. When you can link to every screen, lots of things become easy or free: "Copy Link" buttons Restoring navigation state Indexing app content with the OS Universal links across Android, iOS, and the web What else?
@Baconbrix
Evan Bacon 🥓
2 years
💡 Adding a "copy link" button anywhere in your app is something you'll be able to do automatically with @Expo 's File System-based router.
1
1
54
1
8
50
@JI
James Ide
5 years
@mikeindustries One question is whether the read receipts (timestamp, location, computer type) are considered the recipient's data and are subject to the GDPR. Does Superhuman need opt-in consent from each recipient to store their data? And give them a way to delete it?
4
1
47
@JI
James Ide
8 months
A lot of people contributed to @Expo SDK 50 This SDK cycle was an especially long one. I counted 187 names in the list
Tweet media one
@expo
Expo
8 months
🥳 Today we're announcing the release of 𝝠 Expo SDK 50! We tackled some really difficult technical challenges in this release with a focus on solving important problems that we know you care about. The goal of SDK 50 is to make it easier for you to build more powerful
Tweet media one
34
227
1K
2
4
49
@JI
James Ide
4 years
W3C standard Crypto.getRandomValues is now available in Expo. expo-standard-web-crypto gives you a standards-compliant polyfill that works with typed arrays and generates random bytes synchronously.
Tweet media one
1
5
48
@JI
James Ide
8 years
Jest 15 is looking to be the best JS testing API that's actually good. It's got standard defaults and pro features.
@cpojer
Christoph Nakazawa
8 years
Jest 15 will feature new defaults but will retain all old features (we use them at FB). This is good for beginners.
3
33
52
2
15
44
@JI
James Ide
7 years
Expo SDK 19 is here with lots of features including modern JS on Android with the @webkit team's latest great work 🙏
Tweet media one
0
12
46
@JI
James Ide
8 years
Node got first-class support for V8's debugger: → we can replace React Native's Chrome debugger w/Node's debugger!
2
20
48
@JI
James Ide
3 years
If you're working at a YC company (any batch!) that needs a mobile app and are thinking about using @Expo + EAS, ask the founder(s) to take a look at our YC deal to help you go even further when you outgrow the EAS Free plan.
2
4
47
@JI
James Ide
9 years
One of our projects made for @exponentjs outperforms UIKit. Not a toy demo. Running on a year-old Android. Faster than iPhone 6s. #inspiring
5
9
46
@JI
James Ide
3 years
Major new service joins Expo Application Services (EAS) in preview. We’re calling it EAS Update. It’s the evolution of “expo publish” like how EAS Build evolved from “expo build”. EAS Build your app binaries EAS Submit your app to stores EAS Update your app nearly instantly
@expo
Expo
3 years
Exciting news: EAS Update is now in preview! 🎉 🚀 Deploy continuously ⚡️ The fastest way to ship a fix 🐛 Debug and rollback Read more:
14
45
308
2
4
44
@JI
James Ide
9 years
React Native has first-class support for async functions on iOS & Android. Shout out to @satya164 for writing docs:
1
15
43
@JI
James Ide
7 years
Expo pro tip: the iOS camera can directly scan Expo QR codes. Try it out next time you use Expo on iOS 11 (featured project: Delaunay triangle brush)
9
6
39
@JI
James Ide
5 years
I want to give a shout out to @cedricvanputten for being such a thoughtful, knowledgeable, and positive contributor to @expo . Check out some of his work on the GitHub action () and React hooks ().
1
6
41
@JI
James Ide
7 years
JavaScriptCore benchmarks itself against @babeljs 's Babylon parser. Babel on the client is going to be fast :D
2
13
42
@JI
James Ide
8 years
What are you using for navigation in React Native?
Navigator (built-in)
282
NavigationExperimental
129
ExNavigation
61
React Native Router Flux
183
12
22
42
@JI
James Ide
7 years
"It’s better to leave a line of code untested than to give the illusion that it is well tested." Applies to a lot of things beyond tests too
@KentBeck
Kent Beck 🌻
7 years
Good examples are hard to find. Tautology Tests are Tautology Tests.
11
192
321
0
17
40
@JI
James Ide
9 years
Less than three weeks! http://t.co/0zIAap4liO
1
30
39
@JI
James Ide
7 years
Can a café in Paris still be considered a brasserie if we had Italian? Questions from the @ReactEurope workshop dinner 🤔
Tweet media one
2
5
40
@JI
James Ide
2 years
The @Expo repo guidance @notbrent added gives really great advice that will help you become a better engineer. Isolate your bug. Suss out the causes under the symptoms. Make it easy for people to help you when you need help. The best engineers I know excel at getting unstuck
Tweet media one
1
6
40
@JI
James Ide
7 years
Some cool & fundamental React Native work coming from Expo and friends the next few weeks starting w/masks by @skevy
1
10
37
@JI
James Ide
3 years
This is a mod to add USB-C-to-C charging to devices without it. Very impressed by @oshpark 's flex PCB service. The PCB needs to be dead accurate to solder to the USB connector pins (0.3mm wide) and the installed mod works perfectly. Open source here:
Tweet media one
Tweet media two
Tweet media three
4
8
38
@JI
James Ide
1 year
Today @Expo is introducing Magic GitHub Labels to EAS. Link your GitHub repo to EAS and add a label called "eas-build-<platform>:<build profile>" to your PR - Platform can be android, ios, all - Build profile can be any profile name in eas.json - Monorepos supported - It's magic
@expo
Expo
1 year
A preview of the EAS Build GitHub integration is now available for EAS subscribers! Try it out: - Link your GitHub repository to your Expo project. - Use the "Build from GitHub" button on the builds page. - Or add the `eas-build` label to a GitHub PR to trigger a new build!
Tweet media one
7
32
210
1
3
37
@JI
James Ide
1 year
tsc on @Expo 's API server: 25 seconds with Node 7 seconds with Bun As Chief IDE, all editors shall now use Bun to run JavaScript tools Nice work @bunjavascript and @jarredsumner
2
1
36