{"id":6314,"date":"2025-09-20T23:45:31","date_gmt":"2025-09-20T23:45:31","guid":{"rendered":"https:\/\/pokecon.jp\/job\/?p=6314"},"modified":"2025-09-20T23:45:31","modified_gmt":"2025-09-20T23:45:31","slug":"first-time-experience-at-droidkaigi-2025-by-david-santos-pairs-engineering-sep-2025","status":"publish","type":"post","link":"https:\/\/pokecon.jp\/job\/6314\/","title":{"rendered":"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025"},"content":{"rendered":"\n<\/p>\n<div>\n<div>\n<div>\n<div class=\"speechify-ignore ac cw\">\n<div class=\"speechify-ignore bi m\">\n<div class=\"ac jy jz ka kb kc kd ke kf kg kh ki\">\n<div class=\"ac r ki\">\n<div class=\"ac kj\">\n<div>\n<div class=\"bn\" aria-hidden=\"false\" role=\"tooltip\">\n<div tabindex=\"-1\" class=\"bf\"><a target=\"_blank\" rel=\"noopener follow\" href=\"https:\/\/medium.com\/@dsantosp?source=post_page---byline--89f7cb1a357a---------------------------------------\" data-discover=\"true\"><\/p>\n<div class=\"m kk kl by km kn\">\n<div class=\"m fr\"><img decoding=\"async\" alt=\"David Santos\" class=\"m fk by bz ca de\" src=\"https:\/\/miro.medium.com\/v2\/da:true\/resize:fill:64:64\/0*5oNbNRxQl2V7-Yfg\" width=\"32\" height=\"32\" loading=\"lazy\" data-testid=\"authorPhoto\"\/><\/div>\n<\/div>\n<p><\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><span class=\"bg b bh ab bl\"\/><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p id=\"7b25\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Assisting for the first time to an Android conference<\/p>\n<h2 id=\"6166\" class=\"oy oz ix bg pa pb pc pd gs pe pf pg gu ph pi pj pk pl pm pn po pp pq pr ps pt bl\">Introduction<\/h2>\n<p id=\"fd58\" class=\"pw-post-body-paragraph od oe ix of b og pu oi oj ok pv om on gv pw op oq gy px os ot hb py ov ow ox hv bl\">I want to start by saying that this was my first time attending an Android conference in person. I had always followed them online, watching the recorded sessions. So, for this article, I would like to focus more on my personal experience and impressions, rather than diving deep into the technical details.<\/p>\n<p id=\"ec93\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">I would like to highlight the variety of events available over the two days. These activities made the conference feel more dynamic and fun, offering plenty of opportunities to interact with others. Some of these included stamp collecting, a nail art session, a Japanese festival (Matsuri), an after-party featuring a \u30de\u30b0\u30ed\u89e3\u4f53\u30b7\u30e7\u30fc (tuna carving show), and various themed chat spots for mingling.<\/p>\n<figure class=\"qc qd qe qf qg is pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qh qi fr qj bi qk\"><span class=\"gb ql qm ao qn ge qo gg qp speechify-ignore\">Press enter or click to view image in full size<\/span><\/p>\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*Q2JDQ39W4LoSQwQjb1hplA.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bi gd iu c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div><figcaption class=\"qq fm qr pz qa qs qt bg b bh ab eb\">nail art session<\/figcaption><\/figure>\n<p id=\"b8a9\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Listing and briefly explaining every presentation I attended would make this article too long. Instead, I\u2019ve decided to pick up the ones I found most interesting, offering my impressions and highlighting any technical aspects that could be applied to our work at Eureka.<\/p>\n<h2 id=\"05e9\" class=\"oy oz ix bg pa pb pc pd gs pe pf pg gu ph pi pj pk pl pm pn po pp pq pr ps pt bl\">09\/11<\/h2>\n<h3 id=\"199d\" class=\"qu oz ix bg pa gr qv ef gs gt qw eh gu gv qx gw gx gy qy gz ha hb qz hc hd ra bl\"><a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/www.youtube.com\/watch?v=pNyNUnLfNzA\" rel=\"noopener ugc nofollow\" target=\"_blank\">Learning Large-Screen Support from the Ground Up \u2014 Development Insights from a \u201cLarge screen differentiated\u201d-Certified App-<\/a><\/h3>\n<figure class=\"qc qd qe qf qg is pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qh qi fr qj bi qk\"><span class=\"gb ql qm ao qn ge qo gg qp speechify-ignore\">Press enter or click to view image in full size<\/span><\/p>\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*1JrfTxHg04ZxL5dPWoqygg.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bi gd iu c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"d183\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">As seen in the recent behavior change for apps targeting Android 16 or higher, displays with a width of 600dp or more will ignore orientation, resizability, and aspect ratio restrictions. This clearly shows Google is pushing developers to support large screens, turning what was once a \u2018nice-to-have\u2019 into a \u2018must-have\u2019 feature.<\/p>\n<blockquote class=\"rc rd re\">\n<p id=\"538d\" class=\"od oe rf of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">With Android apps now running on a variety of devices (such as phones, tablets, foldables, desktops, cars, and TVs) and windowing modes on large screens (such as split screen and desktop windowing), developers should build Android apps that adapt to any screen and window size, regardless of device orientation. Paradigms like restricting orientation and resizability are too restrictive in today\u2019s multidevice world.<\/p>\n<p id=\"6117\" class=\"od oe rf of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\"><a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/developer.android.com\/about\/versions\/16\/behavior-changes-16#adaptive-layouts\" rel=\"noopener ugc nofollow\" target=\"_blank\">https:\/\/developer.android.com\/about\/versions\/16\/behavior-changes-16#adaptive-layouts<\/a><\/p>\n<\/blockquote>\n<p id=\"48d5\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">It\u2019s important to note that Google doesn\u2019t require a premium large-screen experience from the start. Instead, they offer <a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/developer.android.com\/docs\/quality-guidelines\/large-screen-app-quality\" rel=\"noopener ugc nofollow\" target=\"_blank\">three tiers of support<\/a> allowing us to choose the level that best fits our use cases, development schedule, and business goals:<\/p>\n<ul class=\"\">\n<li id=\"9061\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">Tier 3 (basic) \u2014 large screen ready<\/li>\n<\/ul>\n<blockquote class=\"rc rd re\">\n<p id=\"81fb\" class=\"od oe rf of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Users can complete critical task flows but with a less than optimal user experience. Your app runs full screen (or full window in multi-window mode), but app layout might not be ideal. The app is not letterboxed; it does not run in compatibility mode. The app provides basic support for external input devices, including keyboard, mouse, trackpad, and stylus.<\/p>\n<\/blockquote>\n<ul class=\"\">\n<li id=\"d4d6\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">Tier 2 (better) \u2014 large screen optimized<\/li>\n<\/ul>\n<blockquote class=\"rc rd re\">\n<p id=\"bf3b\" class=\"od oe rf of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Your app implements layout optimizations for all screen sizes and device configurations along with enhanced support for external input devices.<\/p>\n<\/blockquote>\n<ul class=\"\">\n<li id=\"3966\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">Tier 1 (best) \u2014 large screen differentiated<\/li>\n<\/ul>\n<blockquote class=\"rc rd re\">\n<p id=\"49b8\" class=\"od oe rf of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Your app provides a user experience designed for tablets, foldables, and ChromeOS devices. Where applicable, the app supports multitasking, foldable postures, drag and drop, and stylus input.<\/p>\n<\/blockquote>\n<p id=\"38ab\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">The presentation also mentioned that reaching Tier 2 or 1 means the app is nearly ready for Android XR, qualifying as an \u201cAndroid XR compatible large screen app\u201d.<\/p>\n<p id=\"79ae\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">The speaker recommended that if an app is still primarily View-based, or only partially uses Compose, migrating fully to Compose is the best path forward. This is because Compose simplifies the logic for adapting layouts based on screen and window size. Jetpack Compose Navigation 3 also facilitates the implementation of large-screen layouts.<\/p>\n<p id=\"b6a8\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Below is the recommended phased approach by the speaker:<\/p>\n<p id=\"fe27\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\"><strong class=\"of iy\">Step 1:<\/strong> TIER 3 support \u2014 possible with View base<\/p>\n<ul class=\"\">\n<li id=\"ac26\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">run app in full screen<\/li>\n<li id=\"c583\" class=\"od oe ix of b og rj oi oj ok rk om on gv rl op oq gy rm os ot hb rn ov ow ox rg rh ri bl\">handle configuration changes properly<\/li>\n<li id=\"755f\" class=\"od oe ix of b og rj oi oj ok rk om on gv rl op oq gy rm os ot hb rn ov ow ox rg rh ri bl\">add scroll support and max width constraints<\/li>\n<\/ul>\n<p id=\"23a7\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\"><strong class=\"of iy\">Step 2:<\/strong> optimize for large screens targeting TIER 2+<\/p>\n<ul class=\"\">\n<li id=\"908d\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">flexible layout support<\/li>\n<li id=\"3434\" class=\"od oe ix of b og rj oi oj ok rk om on gv rl op oq gy rm os ot hb rn ov ow ox rg rh ri bl\">keyboard and mouse support<\/li>\n<\/ul>\n<p id=\"f74a\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">At Eureka, we haven\u2019t officially committed to first experience large-screen support, though we\u2019ve always aimed to provide an experience close to what would be considered Tier 1. I believe now is an excellent time to discuss our current strategy with the Android team and, if necessary, rethink our direction for the near future.<\/p>\n<h3 id=\"ac1c\" class=\"qu oz ix bg pa gr qv ef gs gt qw eh gu gv qx gw gx gy qy gz ha hb qz hc hd ra bl\"><a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/www.youtube.com\/watch?v=c-OO-8diTpk\" rel=\"noopener ugc nofollow\" target=\"_blank\">Beyond Exceptions: Building Resilient Android Apps with Safety-Critical Principles<\/a><\/h3>\n<figure class=\"qc qd qe qf qg is pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qh qi fr qj bi qk\"><span class=\"gb ql qm ao qn ge qo gg qp speechify-ignore\">Press enter or click to view image in full size<\/span><\/p>\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*FVM4TMOYcQ7I7g4p4SE85g.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bi gd iu c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"3673\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">The session\u2019s main argument is to avoid using exceptions to represent errors in domain logic. Relying on exceptions for this purpose is problematic because it requires developers to understand the internal implementation details to handle all possible cases exhaustively.<\/p>\n<p id=\"c7ba\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">The presentation also critiqued the use of Kotlin\u2019s built-in <code class=\"de ro rp rq rr b\">Result<\/code> type, pointing out several drawbacks:<\/p>\n<ul class=\"\">\n<li id=\"4187\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">It leads to the unnecessary creation of exception classes.<\/li>\n<li id=\"f2fc\" class=\"od oe ix of b og rj oi oj ok rk om on gv rl op oq gy rm os ot hb rn ov ow ox rg rh ri bl\">It does not allow for exhaustive, compile-time checking of all possible error outcomes.<\/li>\n<li id=\"2e9e\" class=\"od oe ix of b og rj oi oj ok rk om on gv rl op oq gy rm os ot hb rn ov ow ox rg rh ri bl\">The <code class=\"de ro rp rq rr b\">Result.runCatching<\/code> function inadvertently catches <code class=\"de ro rp rq rr b\">CancellationException<\/code>, which can interfere with the intended behavior of Kotlin Coroutines.<\/li>\n<\/ul>\n<p id=\"65ab\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">It was noted that even the official Kotlin team advises against using the <code class=\"de ro rp rq rr b\">Result<\/code> type for handling domain-specific errors, as stated in their <a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/github.com\/Kotlin\/KEEP\/blob\/main\/proposals\/stdlib\/KEEP-0127-result.md#error-handling-style-and-exceptions\" rel=\"noopener ugc nofollow\" target=\"_blank\">KEEP proposal<\/a>.<\/p>\n<p id=\"abd0\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">For more appropriate error representation, the speaker recommended two primary approaches:<\/p>\n<ul class=\"\">\n<li id=\"699f\" class=\"od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox rg rh ri bl\">Using <code class=\"de ro rp rq rr b\">null<\/code> for simple, lightweight error cases.<\/li>\n<li id=\"c7f8\" class=\"od oe ix of b og rj oi oj ok rk om on gv rl op oq gy rm os ot hb rn ov ow ox rg rh ri bl\">Defining custom classes with a <code class=\"de ro rp rq rr b\">sealed interface<\/code> for more detailed and robust error modeling.<\/li>\n<\/ul>\n<p id=\"70f6\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Looking to the future, the talk mentioned a potential new language feature called \u201c<a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/www.youtube.com\/watch?v=IUrA3mDSWZQ\" rel=\"noopener ugc nofollow\" target=\"_blank\">Rich Errors<\/a>\u201d planned for Kotlin 2.4.<\/p>\n<p id=\"7648\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">As a personal experience, I have been struggling with this topic in our application for some time. Recently, I have been digging into this and came up with a similar conclusion about avoiding exceptions and instead defining custom classes with a <code class=\"de ro rp rq rr b\">sealed interface<\/code> for errors representing domain logic. However, as mentioned in the presentation, you need to write some extra code, so I am quite happy that the <strong class=\"of iy\">Rich Errors<\/strong> feature will be released.<\/p>\n<h3 id=\"1c7b\" class=\"qu oz ix bg pa gr qv ef gs gt qw eh gu gv qx gw gx gy qy gz ha hb qz hc hd ra bl\">After Party<\/h3>\n<p id=\"1647\" class=\"pw-post-body-paragraph od oe ix of b og pu oi oj ok pv om on gv pw op oq gy px os ot hb py ov ow ox hv bl\">After the day\u2019s presentations, there was an after-party featuring a \u201cMaguro Kaitai Show\u201d (a live tuna carving demonstration). The room was set up with standing tables for 7\u20138 people, creating a dynamic and casual atmosphere for eating, drinking, and talking. <br \/>Since it was my first time at the conference and I didn\u2019t know anyone, it was a bit challenging to join a group at first. However, I eventually introduced myself to a table of strangers and started socializing. <br \/>Overall, it was a great experience where I got to meet different people and share our experiences as Android engineers.<\/p>\n<figure class=\"qc qd qe qf qg is pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qh qi fr qj bi qk\"><span class=\"gb ql qm ao qn ge qo gg qp speechify-ignore\">Press enter or click to view image in full size<\/span><\/p>\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*EjSUCJ0FyXN9slnkJ8JpTw.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bi gd iu c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div><figcaption class=\"qq fm qr pz qa qs qt bg b bh ab eb\">Maguro Kaitai Show<\/figcaption><\/figure>\n<h2 id=\"4a55\" class=\"oy oz ix bg pa pb pc pd gs pe pf pg gu ph pi pj pk pl pm pn po pp pq pr ps pt bl\">09\/12<\/h2>\n<h3 id=\"eef6\" class=\"qu oz ix bg pa gr qv ef gs gt qw eh gu gv qx gw gx gy qy gz ha hb qz hc hd ra bl\"><a target=\"_blank\" class=\"ah rb\" href=\"https:\/\/www.youtube.com\/watch?v=wIR-zMqJdKk\" rel=\"noopener ugc nofollow\" target=\"_blank\">The Complete Guide to Android Value Passing: Control Your Architecture, Control Your \u201cPassing\u201d!<\/a><\/h3>\n<figure class=\"qc qd qe qf qg is pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qh qi fr qj bi qk\"><span class=\"gb ql qm ao qn ge qo gg qp speechify-ignore\">Press enter or click to view image in full size<\/span><\/p>\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*qTwGBrQN3WakFw-r_k9aUQ.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bi gd iu c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"7795\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">I will not go into detail about the content of this session, but I wanted to mention it because it was one of the best I attended during the conference. The clarity of the explanations, the use of examples, the presentation flow, and the overall dynamic were outstanding. I recommend watching this presentation not just for its technical content, but also as a great example of how to deliver an effective talk.<\/p>\n<h3 id=\"7c38\" class=\"qu oz ix bg pa gr qv ef gs gt qw eh gu gv qx gw gx gy qy gz ha hb qz hc hd ra bl\"><a target=\"_blank\" class=\"ah rb\" href=\"http:\/\/youtube.com\/watch?v=bcmK90SRN-0\" rel=\"noopener ugc nofollow\" target=\"_blank\">Cache Me If You Can<\/a><\/h3>\n<figure class=\"qc qd qe qf qg is pz qa paragraph-image\">\n<div role=\"button\" tabindex=\"0\" class=\"qh qi fr qj bi qk\"><span class=\"gb ql qm ao qn ge qo gg qp speechify-ignore\">Press enter or click to view image in full size<\/span><\/p>\n<div class=\"pz qa qb\"><picture><source srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/format:webp\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\" type=\"image\/webp\"\/><source data-testid=\"og\" srcset=\"https:\/\/miro.medium.com\/v2\/resize:fit:640\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 640w, https:\/\/miro.medium.com\/v2\/resize:fit:720\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 720w, https:\/\/miro.medium.com\/v2\/resize:fit:750\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 750w, https:\/\/miro.medium.com\/v2\/resize:fit:786\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 786w, https:\/\/miro.medium.com\/v2\/resize:fit:828\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 828w, https:\/\/miro.medium.com\/v2\/resize:fit:1100\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 1100w, https:\/\/miro.medium.com\/v2\/resize:fit:1400\/1*vwgtUyJ5yt6CWo049qccSw.jpeg 1400w\" sizes=\"(min-resolution: 4dppx) and (max-width: 700px) 50vw, (-webkit-min-device-pixel-ratio: 4) and (max-width: 700px) 50vw, (min-resolution: 3dppx) and (max-width: 700px) 67vw, (-webkit-min-device-pixel-ratio: 3) and (max-width: 700px) 65vw, (min-resolution: 2.5dppx) and (max-width: 700px) 80vw, (-webkit-min-device-pixel-ratio: 2.5) and (max-width: 700px) 80vw, (min-resolution: 2dppx) and (max-width: 700px) 100vw, (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px) 100vw, 700px\"\/><img alt=\"\" class=\"bi gd iu c\" width=\"700\" height=\"525\" loading=\"lazy\" role=\"presentation\"\/><\/picture><\/div>\n<\/div>\n<\/figure>\n<p id=\"1ced\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">This presentation is great for anyone like me who wants to dig deeper into Gradle and understand how it works behind the scenes.<\/p>\n<p id=\"2e28\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">It provides a grasp of the Gradle and AGP lifecycles, explaining what happens in each phase and how to use their APIs and extensions. It also explains the typical bottlenecks in each phase and offers API usage strategies that respect the lifecycle.<\/p>\n<p id=\"9b4a\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">Furthermore, the presentation gives us mechanisms and best practices to speed up builds with different kinds of caching systems, like the Gradle Build Cache and Configuration Cache. It also presents common anti-patterns that disable these caches and how to avoid them.<\/p>\n<p id=\"030a\" class=\"pw-post-body-paragraph od oe ix of b og oh oi oj ok ol om on gv oo op oq gy or os ot hb ou ov ow ox hv bl\">I think the timing was perfect for me to attend this presentation, since I am currently working on our application\u2019s Gradle configuration and also trying to enable the configuration cache. Its contents will be very helpful for my current work.<\/p>\n<h3 id=\"fac8\" class=\"qu oz ix bg pa gr qv ef gs gt qw eh gu gv qx gw gx gy qy gz ha hb qz hc hd ra bl\">Themed Meetups<\/h3>\n<p id=\"7a08\" class=\"pw-post-body-paragraph od oe ix of b og pu oi oj ok pv om on gv pw op oq gy px os ot hb py ov ow ox hv bl\">During lunch on the second day, I joined a themed meetup called <strong class=\"of iy\">Parenting and Work<\/strong>. <br \/>It was a very enriching experience, hearing firsthand how families with children balance their careers with parenting. Most attendees worked fully remotely or relied on grandparents for help during work hours. <br \/>We also discussed topics like the pros and cons of different housing types, such as apartments (mansion) versus detached houses.<\/p>\n<h2 id=\"9631\" class=\"oy oz ix bg pa pb pc pd gs pe pf pg gu ph pi pj pk pl pm pn po pp pq pr ps pt bl\">Final Impressions<\/h2>\n<p id=\"e0a4\" class=\"pw-post-body-paragraph od oe ix of b og pu oi oj ok pv om on gv pw op oq gy px os ot hb py ov ow ox hv bl\">Attending my first in-person Android conference was a completely different experience from watching recorded sessions online. The biggest takeaway for me wasn\u2019t just the technical knowledge, but the strong sense of community. The themed meetups, casual conversations at the after-party, and the dynamic social events created an environment where it was easy to connect with other developers, share challenges, and learn from their experiences. This personal interaction is something you simply can\u2019t get from a recorded video. <br \/>I\u2019m returning to work not only with new technical insights to discuss with the team at Eureka but also with a renewed sense of motivation and a broader perspective on the global Android community. <br \/>It was a valuable experience that I would highly recommend.<\/p>\n<\/div>\n\n<br \/><a href=\"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a\">\u5143\u306e\u8a18\u4e8b\u3092\u78ba\u8a8d\u3059\u308b <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"Assisting for the first time to an Android conference Introduction I want to start by saying that this was my  [&hellip;]","protected":false},"author":1,"featured_media":6315,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[4],"tags":[],"class_list":["post-6314","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-company-tec"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025 - \u30dd\u30b1\u30b3\u30f3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025 - \u30dd\u30b1\u30b3\u30f3\" \/>\n<meta property=\"og:description\" content=\"Assisting for the first time to an Android conference Introduction I want to start by saying that this was my [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a\" \/>\n<meta property=\"og:site_name\" content=\"\u30dd\u30b1\u30b3\u30f3\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-20T23:45:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/pokecon.jp\/job\/wp-content\/uploads\/2025\/09\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"900\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"info@pokecon.jp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"info@pokecon.jp\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"7\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/6314\\\/\"},\"author\":{\"name\":\"info@pokecon.jp\",\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/#\\\/schema\\\/person\\\/16c9f07b1ba984d165d9aee259bda997\"},\"headline\":\"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025\",\"datePublished\":\"2025-09-20T23:45:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/6314\\\/\"},\"wordCount\":1496,\"image\":{\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg\",\"articleSection\":[\"\u4f01\u696d\u30c6\u30c3\u30af\"],\"inLanguage\":\"ja\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/6314\\\/\",\"url\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a\",\"name\":\"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025 - \u30dd\u30b1\u30b3\u30f3\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg\",\"datePublished\":\"2025-09-20T23:45:31+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/#\\\/schema\\\/person\\\/16c9f07b1ba984d165d9aee259bda997\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage\",\"url\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg\",\"contentUrl\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/wp-content\\\/uploads\\\/2025\\\/09\\\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg\",\"width\":1200,\"height\":900},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/medium.com\\\/eureka-engineering\\\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u30db\u30fc\u30e0\",\"item\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/#website\",\"url\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/\",\"name\":\"\u30dd\u30b1\u30b3\u30f3\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/#\\\/schema\\\/person\\\/16c9f07b1ba984d165d9aee259bda997\",\"name\":\"info@pokecon.jp\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2b0549cd9f7907c092ca5fbb283baf72337f235726e4b46fa39ec0b701ac2fe2?s=96&d=wavatar&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2b0549cd9f7907c092ca5fbb283baf72337f235726e4b46fa39ec0b701ac2fe2?s=96&d=wavatar&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2b0549cd9f7907c092ca5fbb283baf72337f235726e4b46fa39ec0b701ac2fe2?s=96&d=wavatar&r=g\",\"caption\":\"info@pokecon.jp\"},\"url\":\"https:\\\/\\\/pokecon.jp\\\/job\\\/author\\\/infopokecon-jp\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025 - \u30dd\u30b1\u30b3\u30f3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a","og_locale":"ja_JP","og_type":"article","og_title":"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025 - \u30dd\u30b1\u30b3\u30f3","og_description":"Assisting for the first time to an Android conference Introduction I want to start by saying that this was my [&hellip;]","og_url":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a","og_site_name":"\u30dd\u30b1\u30b3\u30f3","article_published_time":"2025-09-20T23:45:31+00:00","og_image":[{"width":1200,"height":900,"url":"https:\/\/pokecon.jp\/job\/wp-content\/uploads\/2025\/09\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg","type":"image\/jpeg"}],"author":"info@pokecon.jp","twitter_card":"summary_large_image","twitter_misc":{"\u57f7\u7b46\u8005":"info@pokecon.jp","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"7\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#article","isPartOf":{"@id":"https:\/\/pokecon.jp\/job\/6314\/"},"author":{"name":"info@pokecon.jp","@id":"https:\/\/pokecon.jp\/job\/#\/schema\/person\/16c9f07b1ba984d165d9aee259bda997"},"headline":"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025","datePublished":"2025-09-20T23:45:31+00:00","mainEntityOfPage":{"@id":"https:\/\/pokecon.jp\/job\/6314\/"},"wordCount":1496,"image":{"@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage"},"thumbnailUrl":"https:\/\/pokecon.jp\/job\/wp-content\/uploads\/2025\/09\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg","articleSection":["\u4f01\u696d\u30c6\u30c3\u30af"],"inLanguage":"ja"},{"@type":"WebPage","@id":"https:\/\/pokecon.jp\/job\/6314\/","url":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a","name":"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025 - \u30dd\u30b1\u30b3\u30f3","isPartOf":{"@id":"https:\/\/pokecon.jp\/job\/#website"},"primaryImageOfPage":{"@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage"},"image":{"@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage"},"thumbnailUrl":"https:\/\/pokecon.jp\/job\/wp-content\/uploads\/2025\/09\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg","datePublished":"2025-09-20T23:45:31+00:00","author":{"@id":"https:\/\/pokecon.jp\/job\/#\/schema\/person\/16c9f07b1ba984d165d9aee259bda997"},"breadcrumb":{"@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a"]}]},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#primaryimage","url":"https:\/\/pokecon.jp\/job\/wp-content\/uploads\/2025\/09\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg","contentUrl":"https:\/\/pokecon.jp\/job\/wp-content\/uploads\/2025\/09\/17XMVZIJFzoAZmq2EpRz7Aw.jpeg","width":1200,"height":900},{"@type":"BreadcrumbList","@id":"https:\/\/medium.com\/eureka-engineering\/first-time-experience-at-droidkaigi-2025-89f7cb1a357a#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u30db\u30fc\u30e0","item":"https:\/\/pokecon.jp\/job\/"},{"@type":"ListItem","position":2,"name":"First time experience at DroidKaigi 2025 | by David Santos | Pairs Engineering | Sep, 2025"}]},{"@type":"WebSite","@id":"https:\/\/pokecon.jp\/job\/#website","url":"https:\/\/pokecon.jp\/job\/","name":"\u30dd\u30b1\u30b3\u30f3","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/pokecon.jp\/job\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Person","@id":"https:\/\/pokecon.jp\/job\/#\/schema\/person\/16c9f07b1ba984d165d9aee259bda997","name":"info@pokecon.jp","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/secure.gravatar.com\/avatar\/2b0549cd9f7907c092ca5fbb283baf72337f235726e4b46fa39ec0b701ac2fe2?s=96&d=wavatar&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/2b0549cd9f7907c092ca5fbb283baf72337f235726e4b46fa39ec0b701ac2fe2?s=96&d=wavatar&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2b0549cd9f7907c092ca5fbb283baf72337f235726e4b46fa39ec0b701ac2fe2?s=96&d=wavatar&r=g","caption":"info@pokecon.jp"},"url":"https:\/\/pokecon.jp\/job\/author\/infopokecon-jp\/"}]}},"_links":{"self":[{"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/posts\/6314","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/comments?post=6314"}],"version-history":[{"count":1,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/posts\/6314\/revisions"}],"predecessor-version":[{"id":6316,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/posts\/6314\/revisions\/6316"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/media\/6315"}],"wp:attachment":[{"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/media?parent=6314"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/categories?post=6314"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pokecon.jp\/job\/wp-json\/wp\/v2\/tags?post=6314"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}