1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4 <meta charset="utf-8" /> 5 <title>Community | Obum (Obumuneme Nwabude)</title> 6 <base href="/" /> 7 <meta name="viewport" content="width=device-width, initial-scale=1" /> 8 <link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png" /> 9 <meta name="msapplication-TileColor" content="#ffffff" /> 10 <meta name="theme-color" content="#ffffff" /> 11 <link rel="manifest" href="/assets/manifest.json" /> 12 <link rel="icon" type="image/x-icon" href="/assets/favicon.ico" /> 13 <meta name="description" content="Community contributions, speaking engagements, and workshops delivered by Google Developer Expert Obumuneme Nwabude across Cloud AI & Dart-Flutter." /> 14 <link rel="canonical" href="https://obumnwabude.com/community" /> 15 <link rel="preload" as="image" href="/assets/obum.webp" fetchpriority="high" /> 16 <!-- JSON-LD markup for schema.org --> 17
17<script type="application/ld+json"> 18 { 19 "@context": "https://schema.org", 20 "@type": "Person", 21 "name": "Obumuneme Nwabude", 22 "alternateName": ["Obum", "Obum Nwabude"], 23 "jobTitle": "Full-Stack AI, Blockchain, Cloud, Mobile, & Web Developer", 24 "description": "Full-Stack AI, Blockchain, Cloud, Mobile, & Web Developer. Google Developer Expert (GDE) in Cloud AI & Dart-Flutter.", 25 "image": "https://obumnwabude.com/assets/obum.jpg", 26 "url": "https://obumnwabude.com", 27 "sameAs": [ 28 "https://github.com/obumnwabude", 29 "https://x.com/obumnwabude", 30 "https://linkedin.com/in/obumnwabude", 31 "https://g.dev/obumnwabude", 32 "https://www.freecodecamp.org/news/author/obumnwabude", 33 "https://stories.obumnwabude.com", 34 "https://dev.to/obumnwabude", 35 "https://css-tricks.com/author/obumnwabude" 36 ], 37 "knowsAbout": [ 38 "Artificial Intelligence", 39 "Cloud Computing", 40 "Flutter", 41 "Dart", 42 "Solana", 43 "Rust", 44 "Solidity", 45 "Ethereum", 46 "Web3", 47 "Vue.js", 48 "TypeScript", 49 "Firebase", 50 "Google Cloud" 51 ], 52 "nationality": { 53 "@type": "Country", 54 "name": "Nigeria" 55 }, 56 "award": ["Google Developer Expert (Cloud AI)", "Google Developer Expert (Dart-Flutter)"], 57 "hasCredential": [ 58 { 59 "@type": "EducationalOccupationalCredential", 60 "credentialCategory": "Google Developer Expert", 61 "recognizedBy": { 62 "@type": "Organization", 63 "name": "Google" 64 }, 65 "about": { 66 "@type": "Thing", 67 "name": "Cloud AI" 68 } 69 }, 70 { 71 "@type": "EducationalOccupationalCredential", 72 "credentialCategory": "Google Developer Expert", 73 "recognizedBy": { 74 "@type": "Organization", 75 "name": "Google" 76 }, 77 "about": { 78 "@type": "Thing", 79 "name": "Dart-Flutter" 80 } 81 } 82 ], 83 "worksFor": { 84 "@type": "Organization", 85 "name": "Google" 86 } 87 } 88 </script>
88 89
89<script type="application/ld+json"> 90 { 91 "@context": "https://schema.org", 92 "@type": "WebSite", 93 "url": "https://obumnwabude.com", 94 "name": "Obum (Obumuneme Nwabude)" 95 } 96 </script>
96 97 <!-- Open Graph --> 98 <meta property="og:title" content="Community | Obum (Obumuneme Nwabude)" /> 99 <meta property="og:type" content="website" /> 100 <meta property="og:url" content="https://obumnwabude.com/community" /> 101 <meta property="og:image" content="https://obumnwabude.com/assets/obum.jpg" /> 102 <meta property="og:site_name" content="Obumuneme Nwabude" /> 103 <meta property="og:description" content="Community contributions, speaking engagements, and workshops delivered by Google Developer Expert Obumuneme Nwabude across Cloud AI & Dart-Flutter." /> 104 <!-- Twitter Card --> 105 <meta name="twitter:card" content="summary_large_image" /> 106 <meta name="twitter:site" content="@obumnwabude" /> 107 <meta name="twitter:creator" content="@obumnwabude" /> 108 <meta name="twitter:title" content="Community | Obum (Obumuneme Nwabude)" /> 109 <meta name="twitter:description" content="Community contributions, speaking engagements, and workshops delivered by Google Developer Expert Obumuneme Nwabude across Cloud AI & Dart-Flutter." /> 110 <meta name="twitter:image" content="https://obumnwabude.com/assets/obum.jpg" /> 111 <meta name="twitter:image:alt" content="Obumuneme Nwabude" /> 112 <!-- proof of ownership for Pinterest --> 113 <meta name="p:domain_verify" content="7f09cea486a65030775c3c99d8d4e6f4" /> 114
114<script type="application/ld+json"> 115{"@context":"https://schema.org","@type":"ItemList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"Event","name":"Deploy your AI with Agent Studio in Google Cloud","startDate":"2026-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Bauchi, Nigeria"}}},{"@type":"ListItem","position":2,"item":{"@type":"Event","name":"Create your AI with RAG in Google Cloud","startDate":"2026-04-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Abakaliki, Nigeria"}}},{"@type":"ListItem","position":3,"item":{"@type":"Event","name":"Deploy AIs from Vertex AI Studio","startDate":"2026-04-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Ibadan, Nigeria"}}},{"@type":"ListItem","position":4,"item":{"@type":"Event","name":"Soft Skills for Career Development","startDate":"2026-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Abakaliki, Nigeria"}}},{"@type":"ListItem","position":5,"item":{"@type":"Event","name":"Building Your First AI Agent with Kotlin","startDate":"2026-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Abakaliki, Nigeria"}}},{"@type":"ListItem","position":6,"item":{"@type":"Event","name":"Technology, AI, & Education","startDate":"2026-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"AE-FUNAI, Ebonyi State"}}},{"@type":"ListItem","position":7,"item":{"@type":"Event","name":"Ethics and AI For Talents","startDate":"2025-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Enugu, Nigeria"}}},{"@type":"ListItem","position":8,"item":{"@type":"Event","name":"DevFest Nsukka 2025","startDate":"2025-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Nsukka, Nigeria"}}},{"@type":"ListItem","position":9,"item":{"@type":"Event","name":"DevFest Abuja 2025","startDate":"2025-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Abuja, Nigeria"}}},{"@type":"ListItem","position":10,"item":{"@type":"Event","name":"DevFest Owerri 2025","startDate":"2025-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Owerri, Nigeria"}}},{"@type":"ListItem","position":11,"item":{"@type":"Event","name":"DevFest Kaduna 2025","startDate":"2025-10-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Kaduna, Nigeria"}}},{"@type":"ListItem","position":12,"item":{"@type":"Event","name":"DevFest Onitsha 2025","startDate":"2025-10-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"},"location":{"@type":"Place","name":"Onitsha, Nigeria"}}},{"@type":"ListItem","position":13,"item":{"@type":"Event","name":"#BuildwithAI Spella Hub Abakaliki 2025","startDate":"2025-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":14,"item":{"@type":"Event","name":"#BuildwithAI Port Harcourt 2025","startDate":"2025-06-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":15,"item":{"@type":"Event","name":"#BuildwithAI Ogbomoso 2025","startDate":"2025-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":16,"item":{"@type":"Event","name":"#BuildwithAI Onitsha 2025","startDate":"2025-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":17,"item":{"@type":"Event","name":"#BuildwithAI Abakaliki 2025","startDate":"2025-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":18,"item":{"@type":"Event","name":"#BuildwithAI Calabar 2025","startDate":"2025-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":19,"item":{"@type":"Event","name":"DevFest Guinée 2024","startDate":"2024-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":20,"item":{"@type":"Event","name":"Learn About Azure Serverless Functions","startDate":"2024-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":21,"item":{"@type":"Event","name":"DevFest Enugu 2024","startDate":"2024-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":22,"item":{"@type":"Event","name":"DevFest Calabar 2024","startDate":"2024-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":23,"item":{"@type":"Event","name":"DevFest Ogbomoso 2024","startDate":"2024-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":24,"item":{"@type":"Event","name":"DevFest Kaduna 2024","startDate":"2024-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":25,"item":{"@type":"Event","name":"DevFest Lagos 2024","startDate":"2024-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":26,"item":{"@type":"Event","name":"GDEs Panel - DevFest Lagos 2024","startDate":"2024-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":27,"item":{"@type":"Event","name":"DevFest Abakaliki 2024","startDate":"2024-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":28,"item":{"@type":"Event","name":"FlutterBytes Conference 2024","startDate":"2024-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":29,"item":{"@type":"Event","name":"GDEs Panel - FlutterBytesConf","startDate":"2024-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":30,"item":{"@type":"Event","name":"DevFest Afrique Francophone 2024","startDate":"2024-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":31,"item":{"@type":"Event","name":"Google I/O Extended Asaba 2024","startDate":"2024-0
1157-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":32,"item":{"@type":"Event","name":"Google I/O Extended Enugu 2024","startDate":"2024-07-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":33,"item":{"@type":"Event","name":"Build your Portfolio with GitHub Codespaces","startDate":"2024-06-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":34,"item":{"@type":"Event","name":"#BuildwithAI Abakaliki 2024","startDate":"2024-04-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":35,"item":{"@type":"Event","name":"DevFest Asaba 2023","startDate":"2023-12-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":36,"item":{"@type":"Event","name":"DevFest Enugu 2023","startDate":"2023-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":37,"item":{"@type":"Event","name":"DevFest Luwero 2023","startDate":"2023-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":38,"item":{"@type":"Event","name":"GSDC AE-FUNAI Info Session 2023","startDate":"2023-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":39,"item":{"@type":"Event","name":"GDSC NAU Info Session 2023","startDate":"2023-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":40,"item":{"@type":"Event","name":"Google I/O Extended Owerri 2023","startDate":"2023-08-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":41,"item":{"@type":"Event","name":"Google I/O Extended Enugu 2023","startDate":"2023-08-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":42,"item":{"@type":"Event","name":"Google I/O Extended Onitsha 2023","startDate":"2023-07-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":43,"item":{"@type":"Event","name":"Google I/O Extended Abakaliki 2023","startDate":"2023-07-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":44,"item":{"@type":"Event","name":"Google I/O Extended AE-FUNAI 2023","startDate":"2023-06-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":45,"item":{"@type":"Event","name":"Flutter Forward Enugu 2023","startDate":"2023-04-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":46,"item":{"@type":"Event","name":"Flutter Forward Abakaliki 2023","startDate":"2023-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":47,"item":{"@type":"Event","name":"DevFest Yaounde 2022","startDate":"2022-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":48,"item":{"@type":"Event","name":"Why you should use Flutter","startDate":"2022-06-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":49,"item":{"@type":"Event","name":"FlutterFest Enugu 2022","startDate":"2022-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":50,"item":{"@type":"Event","name":"Understanding Technical Writing","startDate":"2022-04-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":51,"item":{"@type":"Event","name":"Careers In Tech","startDate":"2022-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":52,"item":{"@type":"Event","name":"Info Session","startDate":"2022-03-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":53,"item":{"@type":"Event","name":"Your GitHub Profile's README","startDate":"2022-02-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":54,"item":{"@type":"Event","name":"Introduction to Flutter (Todo App)","startDate":"2021-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":55,"item":{"@type":"Event","name":"Collaborating with GitHub","startDate":"2021-08-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":56,"item":{"@type":"Event","name":"Flutter Study Jam","startDate":"2021-08-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":57,"item":{"@type":"Event","name":"Google I/O 2021","startDate":"2021-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":58,"item":{"@type":"Event","name":"2021 DES & DEV Bootcamp","startDate":"2021-05-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":59,"item":{"@type":"Event","name":"2021 Solution Challenge","startDate":"2021-02-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":60,"item":{"@type":"Event","name":"Git and GitHub","startDate":"2020-11-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":61,"item":{"@type":"Event","name":"Learning Opportunities","startDate":"2020-10-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":62,"item":{"@type":"Event","name":"Firebase Series","startDate":"2020-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}},{"@type":"ListItem","position":63,"item":{"@type":"Event","name":"Onboarding GDSC","
115startDate":"2020-09-01","organizer":{"@type":"Person","name":"Obumuneme Nwabude"}}}]} 116</script>
116 117
117<script type="module" crossorigin src="/assets/index-c01d9d41.js"></script>
117 118 <link rel="stylesheet" href="/assets/index-f209ad01.css"> 119 </head> 120 121 <body> 122 <div id="app"><!--[--><div class="ambient-backdrop" aria-hidden="true" data-v-d52a9546 data-v-87143857><div class="ambient-wash-1" data-v-87143857></div><div class="ambient-wash-2" data-v-87143857></div><div class="ambient-orb orb-primary" data-v-87143857></div><div class="ambient-orb orb-secondary" data-v-87143857></div><div class="ambient-orb orb-cyan" data-v-87143857></div><div class="glass-bubble bubble-1" data-v-87143857></div><div class="glass-bubble bubble-2" data-v-87143857></div><div class="glass-bubble bubble-3" data-v-87143857></div><svg class="ambient-noise" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" data-v-87143857><filter id="ambient-grain" data-v-87143857><feTurbulence type="fractalNoise" baseFrequency="0.8" numOctaves="3" stitchTiles="stitch" data-v-87143857></feTurbulence><feColorMatrix type="saturate" values="0" data-v-87143857></feColorMatrix></filter><rect width="100%" height="100%" filter="url
122(#ambient-grain)" data-v-87143857></rect></svg></div><svg aria-hidden="true" width="0" height="0" style="position:absolute;width:0;height:0;overflow:hidden;pointer-events:none;" data-v-d52a9546><defs><filter id="glass-displace" x="-10%" y="-10%" width="120%" height="120%"><feTurbulence type="fractalNoise" baseFrequency="0.008 0.012" numOctaves="2" seed="7" result="noise"></feTurbulence><feGaussianBlur in="noise" stdDeviation="1.5" result="softNoise"></feGaussianBlur><feDisplacementMap in="SourceGraphic" in2="softNoise" scale="22" xChannelSelector="R" yChannelSelector="G"></feDisplacementMap></filter></defs></svg><!--[--><div class="mouse-follower" aria-hidden="true" data-v-c352b2b1><div class="follower-ambient" data-v-c352b2b1></div><div class="follower-core" data-v-c352b2b1></div></div><div class="custom-cursor-layer" aria-hidden="true" data-v-c352b2b1><div class="custom-cursor-dot" data-v-c352b2b1></div><div class="custom-cursor-ring" data-v-c352b2b1><div class="cursor-sheen-ring" data-v-c352b2b1></div><span class="cursor-flower-glyph" data-v-c352b2b1><svg width="16" height="16" viewbox="0 0 36 36" fill="none" class="flower-6p-svg is-spinning" style="color:var(--primary);" data-v-c352b2b1 data-v-e0fc1e43><g transform="translate(0.24, 2.24)" data-v-e0fc1e43><path d="M13.3918 31.1533C10.4177 29.0224 9.42766 27.1332 10.1278 24.6672C10.5262 23.2641 11.4479 21.8717 12.82 20.5613C14.2529 19.2222 15.2361 18.1689 15.8185 17.4153C14.8948 17.8882 13.7162 18.7022 12.3437 19.8287C9.53787 22.1105 6.91102 22.8349 4.42692 22.1296C3.0631 21.7424 1.7101 20.761 0.28256 19.1151L0.595588 17.6419C1.77863 13.4751 5.8663 12.9816 10.2009 14.0285C12.3682 14.5519 13.963 14.8669 14.9855 14.9734C14.0962 14.5831 12.5372 13.9567 10.3695 13.2493C5.98534 11.8208 2.98582 9.22321 4.14472 5.14145L4.65258 3.72348C6.78071 3.08717 8.55707 2.94827 9.87218 3.32166C12.0153 3.93015 14.1618 6.00985 15.3621 9.38306C15.9745 11.1191 16.5128 12.3746 16.9529 13.2347C16.8779 12.3864 16.534 11.0023 16.0794 9.08131C15.6127 7.20285 15.5481 5.57642 15.9465 4.17331C16.6104 1.8348 18.3722 0.635012 22.1318 0.370019C25.1671 2.65613 26.0597 4.51766 25.3958 6.85617C24.9974 8.25928 24.0878 9.60913 22.7157 10.9196C21.2828 12.2587 20.2995 13.3119 19.7171 14.0655C20.5314 13.6075 21.6492 12.8221 23.1312 11.6808C26.0344 9.42669 28.8195 8.70121 31.0113 9.32352C32.3752 9.71074 33.7648 10.7485 35.2411 12.4082L34.928 13.8815C33.7208 18.1333 29.5112 18.5003 25.3227 17.4949C23.2529 16.9991 21.6093 16.6703 20.4894 16.5361C21.4153 16.9828 22.7429 17.4975 24.3869 18.0102C27.7236 19.0495 30.1607 20.4766 31.2119 22.521C31.7498 23.5926 31.8135 24.8512 31.3789 26.3819L30.871 27.7999C28.8403 28.4638 27.1247 28.574 25.7609 28.1868C23.3255 27.4954 21.4471 25.5837 20.2589 22.1679C19.6465 20.4319 19.0716 19.12 18.5095 18.1334C18.5483 19.1093 18.8801 20.5359 19.3834 22.4707C19.8989 24.363 19.9634 25.9894 19.5771 27.35C18.9011 29.7311 17.1027 30.8745 13.3918 31.1533ZM17.7222 14.418L18.1119 14.5286L21.8542 1.34794C18.9829 1.63544 17.5854 2.47919 17.018 4.47756C16.68 5.66807 16.7933 7.30833 17.2604 9.37069C17.7276 11.433 17.8775 13.1297 17.7222 14.418ZM19.0998 15.4983L34.122 12.6418C32.9997 11.4043 31.9027 10.6333 30.8311 10.3291C28.8341 9.76211 26.5719 10.3144 23.4135 12.7258C21.7978 13.967 20.315 14.7406 18.9774 15.1879L19.0998 15.4983ZM16.4338 15.063L16.7131 14.8207L5.48187 4.51029L5.13137 5.55942C4.2139 8.79081 6.62809 10.8546 11.2075 12.5224C13.4971 13.3563 15.2635 14.1794 16.4338 15.063ZM30.0297 27.0556L30.2715 26.3891L30.3802 26.0064C31.3339 22.6475 28.7123 20.387 24.1821 18.917C21.917 18.182 20.1993 17.3726 19.029 16.489L18.7618 16.6888L30.0297 27.0556ZM4.6925 21.1942C6.59211 21.7336 8.64738 21.1685 10.907 19.5127C13.1546 17.8995 15.0384 16.8263 16.4854 16.3641L16.363 16.0537L1.38951 18.924C2.47525 20.1053 3.57222 20.8762 4.6925 21.1942ZM13.6694 30.1754C16.5407 29.8879 17.9382 29.0441 18.5056 27.0458C18.8556 25.8128 18.7911 24.1863 18.3239 22.124C17.8568 20.0616 17.6461 18.3937 17.8135 17.0628L17.4238 16.9522L13.6694 30.1754Z" fill="var(--primary)" data-v-e0fc1e43></path></g></svg></span></div></div><!--]--><header class="glass-header" data-v-d52a9546 data-v-497aa7de><div class="header-inner" data-v-497aa7de><div class="header-left" data-v-497aa7de><h1 data-v-497aa7de><a href="/" class="logo-link" obum data-v-497aa7de><span class="logo-text" data-v-497aa7de>Obum</span><span class="logo-dot" data-v-497aa7de></span></a></h1><nav class="desktop-nav" data-v-497aa7de><ul data-v-497aa7de><!--[--><li data-v-497aa7de><a href="/" class="nav-link" data-v-497aa7de><svg width="14" height="14" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="nav-link-icon" data-v-497aa7de><path d="m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg><span data-v-497aa7de>Home</span></a></li><li data-v-497aa7de><a href="/projects" class="nav-link" data-v-497aa7de><svg width="14" height="14" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="nav-link-icon" data-v-497aa7de><path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z"></path><path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6.05 11a22.35 22.35 0 0 1-3.95 2z"></path><path d="M9 12H4s.55-3.03 2-4.5c1.62-1.63 5-2.5 5-2.5"></path><path d="M12 15v5s3.03-.55 4.5-2c1.63-1.62 2.5-5 2.5-5"></path></svg><span data-v-497aa7de>Projects</span></a></li><li data-v-497aa7de><a href="/articles" class="nav-link" data-v-497aa7de><svg width="14" height="14" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="nav-link-icon" data-v-497aa7de><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg><span data-v-497aa7de>Articles</span></a></li><li data-v-497aa7de><a aria-current="page" href="/community" class="router-link-active router-link-exact-active nav-link" data-v-497aa7de><svg width="14" height="14" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="nav-link-icon" data-v-497aa7de><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg><span data-v-497aa7de>Community</span></a></li>
122<!--]--></ul></nav></div><div class="header-actions" data-v-497aa7de><div class="contact-me-wrap" contact-me data-v-497aa7de data-v-e509986f><button type="button" aria-haspopup="true" aria-controls="contact-menu-ya2z57" style="border-color:var(--primary);color:var(--primary);" outlined="true" class="contact-btn" data-v-e509986f><!----><span data-v-e509986f>Contact Me</span></button><!----></div><button type="button" search aria-label="Open command palette" title="Search (âK)" data-v-497aa7de><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" data-v-497aa7de><circle cx="11" cy="11" r="8" data-v-497aa7de></circle><line x1="21" y1="21" x2="16.65" y2="16.65" data-v-497aa7de></line></svg></button><div theme data-v-497aa7de><!--[--><button main aria-haspopup="true" aria-controls="theme-menu" class="glass-theme-btn" data-v-845e51aa><svg height="24px" viewbox="0 0 24 24" width="24px" fill="currentColor" stroke="none" data-v-845e51aa><path d="M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36c-0.98,1.37-2.58,2.26-4.4,2.26 c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path><rect fill="none" height="24" width="24"></rect></svg><span data-v-845e51aa>Device Default</span></button><!----><!--]--></div><button menu aria-label="Open Navigation Menu" data-v-497aa7de><svg width="21" height="13" viewbox="0 0 21 13" fill="none" stroke="currentColor" xmlns="http://www.w3.org/2000/svg" data-v-497aa7de><line x1="0.5" y1="0.5" x2="20.5" y2="0.5"></line><line x1="0.5" y1="6.5" x2="20.5" y2="6.5"></line><line x1="0.5" y1="12.5" x2="20.5" y2="12.5"></line></svg></button></div></div><div class="progress-bar" style="transform:scaleX(0);" data-v-497aa7de></div></header><main data-v-d52a9546><!----><!--[--><h1 page-heading data-v-d0042546>CONTRIBUTING TO COMMUNITY</h1><p page-intro data-v-d0042546> I actively volunteer in tech communities in my locality. I am a <a href="https://developers.google.com/community/experts?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Google Developer Expert (GDE)</a> in <a href="https://g.dev/obumnwabude?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Cloud AI & Dart-Flutter</a>. At <a href="https://developers.google.com/community/gdg?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Google Developer Groups (GDG)</a> Abakaliki, I assist in event organization, mentor beginner members and help them in their tech journey. <br data-v-d0042546><br data-v-d0042546> At my school: <a href="https://funai.edu.ng" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Alex Ekwueme Federal University (AE-FUNAI)</a>, I had served as the pioneer <a href="https://developers.google.com/community/gdsc?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Google Developer Student Clubs (GDSC, 2020/21)</a> lead. I was also the pioneer <a href="https://genesystechhub.com" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Genesys</a> Campus Club Ambassador (same year) and a <a href="https://mvp.microsoft.com/studentambassadors?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Microsoft Learn Student Ambassador (MLSA, much later)</a> . While holding these positions, I organized events for my local student community. <br data-v-d0042546><br data-v-d0042546> I also speak at tech events. I've spoken on <a href="https://flutter.dev?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Flutter</a> on several occasions. Sometimes, I'm a panelist. I also was once a Trainer on the <a href="https://blog.google/around-the-globe/google-africa/digitalskillsforafrica-over-500000-people-africa-trained?utm_campaign=deveco_gdemembers&utm_source=deveco" rel="noopener noreferrer" target="_blank" underline data-v-d0042546>Google Digital Skills for Africa</a> program. Across these sessions, I have acquired great public speaking experience and have addressed multiple audiences. <br data-v-d0042546><br data-v-d0042546> In recent years the work has landed at the #BuildwithAI workshop series across Nigerian cities and on the 2024 and 2025 DevFest circuit (Nsukka, Abuja, Owerri, Kaduna, Onitsha, and beyond), alongside keynotes for Women Techmakers and university outreach sessions on AI, ethics, and career. <br data-v-d0042546><br data-v-d0042546> Following are community engagements that I kept track of. </p><div aria-hidden="true" style="height:0;overflow:hidden;" data-v-d0042546></div><div class="content-filter-wrapper is-sticky" aria-label="Filter community events" role="group" data-v-d0042546 data-v-3ed15717><div class="content-filter-scroller" data-v-3ed15717><!----><div class="content-filter-row" data-v-3ed15717><button type="button" class="is-active filter-pill filter-pill-all" aria-pressed="true" data-v-3ed15717><span data-v-3ed15717>All</span><span class="pill-count" data-v-3ed15717>63</span></button><!--[--><button type="button" class="filter-pill" aria-pressed="false" data-v-3ed15717><span class="pill-check" aria-hidden="true" data-v-3ed15717><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" data-v-3ed15717><polyline points="20 6 9 17 4 12" data-v-3ed15717></polyline></svg></span><span data-v-3ed15717>Workshop</span><span class="pill-count" data-v-3ed15717>25</span></button><button type="button" class="filter-pill" aria-pressed="false" data-v-3ed15717><span class="pill-check" aria-hidden="true" data-v-3ed15717><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" data-v-3ed15717><polyline points="20 6 9 17 4 12" data-v-3ed15717></polyline></svg></span><span data-v-3ed15717>Talk</span><span class="pill-count" data-v-3ed15717>28</span></button><button type="button" class="filter-pill" aria-pressed="false" data-v-3ed15717><span class="pill-check" aria-hidden="true" data-v-3ed15717><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" data-v-3ed15717><polyline points="20 6 9 17 4 12" data-v-3ed15717></polyline></svg></span><span data-v-3ed15717>Keynote</span><span class="pill-count" data-v-3ed15717>7</span></button><button type="button" class="filter-pill" aria-pressed="false" data-v-3ed15717><span class="pill-check" aria-hidden="true" data-v-3ed15717><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" data-v-3ed15717><polyline points="20 6 9 17 4 12" data-v-3ed15717></polyline></svg></span><span data-v-3ed15717>Panel</span><span class="pill-count" data-v-3ed15717>3</span></button><button type="button" class="filter-pill" aria-pressed="false" data-v-3ed15717><span class="pill-check" aria-hidden="true" data-v-3ed15717><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" data-v-3ed15717><polyline points="20 6 9 17 4 12" data-v-3ed15717></polyline></svg></span><span data-v-3ed15717>#BuildwithAI</span><span class="pill-count" data-v-3ed15717>10</span></button><button type="button" class="filter-pill" aria-pressed="false" data-v-3ed15717><span class="pill-check" aria-hidden="true" data-v-3ed15717><svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" data-v-3ed15717><polyline points="20 6 9 17 4 12" data-v-3ed15717></polyline></svg></span><span data-v-3ed15717>#DevFest</span><span class="pill-count" data-v-3ed15717>19</span></button><!--]--></div><!----></div></div><div page-content data-v-d0042546><div name="filter-list"><div id="timeline-item-0" class="timeline-item" data-v-d0042546><div id="content-deploy-your-ai-with-agent-studio-in-google-cloud" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-bauchi-26.jpg" alt="Obum at Event" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><span class="project-tag" data-v-9bd856df>Google Cloud</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2026</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Bauchi, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Deploy your AI with Agent Studio in Google Cloud</h3><p class="project-description" data-v-9bd856df>@ #BuildwithAI Bauchi. We explored the new Agent Studio in Google Cloud and deployed an AI Chatbot with Cloud Run.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.skills.google/paths/1282/course_templates/1120/labs/532046" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Google Skills Lab</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df>
122<path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path><path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Agent Studio</span><span class="community-tag-chip" data-v-9bd856df>Cloud Run</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on Google Developer Groups workshop delivered for #BuildwithAI Bauchi. Focused on orchestrating autonomous generative AI agents using Google Cloud Agent Studio. Guided participants through configuring reasoning engines, wiring custom API tools to
122LLMs, managing system prompts, and packaging the resulting conversational agent in Docker for serverless deployment on Google Cloud Run.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Configuring Google Cloud Agent Studio and reasoning engines</span><span class="bento-curriculum-pill" data-v-9bd856df>Prompt engineering with structured JSON schema responses</span><span class="bento-curriculum-pill" data-v-9bd856df>Wiring custom OpenAPI and database tool declarations to Gemini</span><span class="bento-curriculum-pill" data-v-9bd856df>Containerizing conversational agents and deploying to Cloud Run</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>How to build deterministic tool calling flows on top of non-deterministic LLMs.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Containerizing agent runtime microservices for scalable serverless scaling on Google Cloud Run.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Securing production AI deployments using Google Cloud IAM and service accounts.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Agent Studio</span><span class="community-tag-chip" data-v-9bd856df>Cloud Run</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on Google Developer Groups workshop delivered for #BuildwithAI Bauchi. Focused on orchestrating autonomous generative AI agents using Google Cloud Agent Studio. Guided participants through configuring reasoning engines, wiring custom API tools to
122LLMs, managing system prompts, and packaging the resulting conversational agent in Docker for serverless deployment on Google Cloud Run.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-1" class="timeline-item" data-v-d0042546><div id="content-create-your-ai-with-rag-in-google-cloud" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-abk-26.jpg" alt="Workshop Session" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><span class="project-tag" data-v-9bd856df>Google Cloud</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>April 2026</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Abakaliki, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Create your AI with RAG in Google Cloud</h3><p class="project-description" data-v-9bd856df>@ #BuildwithAI Abakaliki. We explored grounding techniques in AI applications.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://colab.research.google.com/github/GoogleCloudPlatform/generative-ai/blob/main/gemini/grounding/intro-grounding-gemini.ipynb" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Google Colab</span><svg width="15" height="15" viewbox="0 0 24 24" fill="currentColor" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path d="M16.941 4.976a7.03 7.03 0 0 0-4.93 2.064a7.033 7.033 0 0 0-.124 9.807l2.395-2.395a3.646 3.646 0 0 1 5.15-5.148l2.397-2.399a7.03 7.03 0 0 0-4.888-1.93m-9.871.01a7.03 7.03 0 0 0-4.888 1.931l2.391 2.391a3.643 3.643 0 0 1 5.023.127l1.734-2.973l-.1-.08a7.03 7.03 0 0 0-4.16-1.396m15.01 2.172l-2.39 2.39a3.646 3.646 0 0 1-5.15 5.15l-2.406 2.407a7.036 7.036 0 0 0 9.945-9.947m-20.148.01a7.033 7.033 0 0 0-.002 9.681l2.397-2.397a3.643 3.643 0 0 1-.004-4.892zm7.664 7.423a3.635 3.635 0 0 1-5.017.113L2.182 17.1a7.03 7.03 0 0 0 9.007.546l.137-.112z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>RAG</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical workshop for GDG Abakaliki exploring practical Retrieval-Augmented Generation (RAG) architectures with Google Cloud and the Gemini API. Demonstrated how to overcome LLM hallucinations by grounding generative models with private domain documents, vector embeddings, and Google Cloud Vertex AI Search.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Fundamentals of LLM hallucinations and vector search grounding</span><span class="bento-curriculum-pill" data-v-9bd856df>Generating vector embeddings with Vertex AI text-embedding models</span><span class="bento-curriculum-pill" data-v-9bd856df>Configuring Vertex AI Search indexes and datastores</span><span class="bento-curriculum-pill" data-v-9bd856df>Executing grounded generation queries with Google Colab notebooks</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Grounded responses significantly reduce hallucination rates in enterprise AI workflows.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Understanding semantic chunking strategies for document indexing.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Interpreting grounding attribution metadata returned by the Gemini API.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>RAG</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical workshop for GDG Abakaliki exploring practical Retrieval-Augmented Generation (RAG) architectures with Google Cloud and the Gemini API. Demonstrated how to overcome LLM hallucinations by grounding generative models with private domain documents, vector embeddings, and Google Cloud Vertex AI Search.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-2" class="timeline-item" data-v-d0042546><div id="content-deploy-ais-from-vertex-ai-studio" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-ib-26.jpg" alt="Workshop Session" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><span class="project-tag" data-v-9bd856df>Google Cloud</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>April 2026</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Ibadan, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Deploy AIs from Vertex AI Studio</h3><p class="project-description" data-v-9bd856df>@ #BuildwithAI Ibadan. Explored prompt engineering, system instructions, and deployed AI apps using Vertex AI and Cloud Run.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.skills.google/course_templates/552" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Course Lab</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path>
122<path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Vertex AI</span><span class="community-tag-chip" data-v-9bd856df>Cloud Run</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An interactive masterclass at GDG Ibadan on operationalizing machine learning models from Vertex AI Studio. Covered multi-modal prompt tuning, system instruction boundaries, parameter tuning (temperature, Top-P, Top-K), and exporting production endpoints to Cloud Run microservices.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Multi-modal prompt engineering and few-shot calibration in Vertex AI Studio</span><span class="bento-curriculum-pill" data-v-9bd856df>Structuring system instructions for reliable downstream parsing</span><span class="bento-curriculum-pill" data-v-9bd856df>Configuring Cloud Run autoscaling, memory thresholds, and concurrency</span><span class="bento-curriculum-pill" data-v-9bd856df>Monitoring API latency and token utilization metrics</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Parameter tuning directly influences model determinism and creative boundaries.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Cloud Run provides an ideal zero-to-scale compute runtime for lightweight AI wrappers.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Vertex AI</span><span class="community-tag-chip" data-v-9bd856df>Cloud Run</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An interactive masterclass at GDG Ibadan on operationalizing machine learning models from Vertex AI Studio. Covered multi-modal prompt tuning, system instruction boundaries, parameter tuning (temperature, Top-P, Top-K), and exporting production endpoints to Cloud Run microservices.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-3" class="timeline-item" data-v-d0042546><div id="content-soft-skills-for-career-development" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-iwd-wtm-abk-26.jpg" alt="Event Session" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>IWD</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2026</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Abakaliki, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Soft Skills for Career Development</h3><p class="project-description" data-v-9bd856df>Spoke at an International Women's Day Abakaliki event on communication, leadership, teamwork, emotional intelligence, and self-management.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1WOp8lvjQ0i4HLCMoh6dnJUiR_rIv72a8LSPK_jpEY8g/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>IWD</span><span class="community-tag-chip" data-v-9bd856df>Women Techmakers</span><span class="community-tag-chip" data-v-9bd856df>Career</span><span class="community-tag-chip" data-v-9bd856df>Leadership</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A keynote address presented at the International Womenâs Day (IWD) & Women Techmakers celebration in Abakaliki. Shared practical frameworks for engineers to cultivate emotional intelligence, communicate technical concepts with clarity to business stakeholders, manage imposter syndrome, and take ownership of career trajectories.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><span class="bento-meta-pill" data-v-9bd856df>Women Techmakers</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Technical communication vs. business stakeholder storytelling</span><span class="bento-curriculum-pill" data-v-9bd856df>Emotional intelligence and constructive code review etiquette</span><span class="bento-curriculum-pill" data-v-9bd856df>Managing energy, avoiding burnout, and establishing clear career milestones</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Engineering brilliance is amplified exponentially through clear communication.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Cultivating self-management and empathy creates resilient, high-trust engineering teams.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
122Speaker</span><span class="community-tag-chip" data-v-9bd856df>IWD</span><span class="community-tag-chip" data-v-9bd856df>Women Techmakers</span><span class="community-tag-chip" data-v-9bd856df>Career</span><span class="community-tag-chip" data-v-9bd856df>Leadership</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A keynote address presented at the International Womenâs Day (IWD) & Women Techmakers celebration in Abakaliki. Shared practical frameworks for engineers to cultivate emotional intelligence, communicate technical concepts with clarity to business stakeholders, manage imposter syndrome, and take ownership of career trajectories.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-4" class="timeline-item" data-v-d0042546><div id="content-building-your-first-ai-agent-with-kotlin" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-kotlin-ai-abk-26.jpg" alt="Workshop Session" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><span class="project-tag" data-v-9bd856df>Android</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2026</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Abakaliki, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Building Your First AI Agent with Kotlin</h3><p class="project-description" data-v-9bd856df>Hands-on session in Abakaliki on building an AI agent in Kotlin, covering planning, reasoning, and tool usage with LLMs.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.jetbrains.com/koog/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Checkout Koog</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon-external action-icon action-external-icon" data-v-9bd856df data-v-95c85263><line x1="7" y1="17" x2="17" y2="7" data-v-95c85263></line><polyline points="7 7 17 7 17 17" data-v-95c85263></polyline></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Android</span><span class="community-tag-chip" data-v-9bd856df>Kotlin</span><span class="community-tag-chip" data-v-9bd856df>Koog</span><span class="community-tag-chip" data-v-9bd856df>JetBrains</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A deep-dive live coding workshop hosted by the Abakaliki Tech Community exploring autonomous agent creation in Kotlin. Utilizing the JetBrains Koog framework, participants constructed goal-directed autonomous agents that create execution plans, invoke external tools, and loop until objective completion.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>Abakaliki Tech Community</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Agentic reasoning loops: Plan, Execute, Verify, Reflect</span><span class="bento-curriculum-pill" data-v-9bd856df>Integrating JetBrains Koog with LLM endpoints on the JVM</span><span class="bento-curriculum-pill" data-v-9bd856df>Tool definitions and type-safe schema mapping in Kotlin</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Kotlinâs type safety and coroutines offer powerful concurrency for orchestrating multi-step AI agents.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Agent planning loops require guardrails and maximum iteration boundaries to ensure reliability.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Android</span><span class="community-tag-chip" data-v-9bd856df>Kotlin</span><span class="community-tag-chip" data-v-9bd856df>Koog</span><span class="community-tag-chip" data-v-9bd856df>JetBrains</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A deep-dive live coding workshop hosted by the Abakaliki Tech Community exploring autonomous agent creation in Kotlin. Utilizing the JetBrains Koog framework, participants constructed goal-directed autonomous agents that create execution plans, invoke external tools, and loop until objective completion.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-5" class="timeline-item" data-v-d0042546><div id="content-technology-ai-education" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-sparklive-aefunai-26.jpg" alt="Speaking Event" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2026</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>AE-FUNAI, Ebonyi State</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Technology, AI, & Education</h3><p class="project-description" data-v-9bd856df>Delivered a session in AE-FUNAI inspiring students to #BuildwithAI with Google tools and improve their learning approach.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1hVyANVPSPRUXy73JOug896Sl_GZ5x8hfT2ZfZBX3oaQ/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Education</span><span class="community-tag-chip" data-v-9bd856df>AE-FUNAI</span><span class="community-tag-chip" data-v-9bd856df>Community</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An inspiring student community session at Alex Ekwueme Federal University Ndufu-Alike (AE-FUNAI) exploring how artificial intelligence is reshaping higher education and developer skill acquisition. Highlighted Google student developer programs, practical prompt design, and personalized learning loops.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>University Outreach</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Harnessing generative AI as a personalized study partner and code tutor</span><span class="bento-curriculum-pill" data-v-9bd856df>Navigating Google Developer Student Clubs and career pipelines</span><span class="bento-curriculum-pill" data-v-9bd856df>Critical thinking and validation when leveraging LLMs for coursework</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AI tools enhance learning velocity when used as collaborative reasoning sounding boards.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Practical building and portfolio demonstration trump passive consumption.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Education</span><span class="community-tag-chip" data-v-9bd856df>AE-FUNAI</span><span class="community-tag-chip" data-v-9bd856df>Community</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An inspiring student community session at Alex Ekwueme Federal University Ndufu-Alike (AE-FUNAI) exploring how artificial intelligence is reshaping higher education and developer skill acquisition. Highlighted Google student developer programs, practical prompt design, and personalized learning loops.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-6" class="timeline-item" data-v-d0042546><div id="content-ethics-and-ai-for-talents" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df-enugu-25.jpg" alt="Event Slide" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>DevFest</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2025</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Enugu, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>Ethics and AI For Talents</h3><p class="project-description" data-v-9bd856df>Spoke at DevFest Enugu 2025 on responsible AI and ethical considerations for developers.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1BFZ0Pz7SVgCpyA27yZmrAtvkdIa4udmJ2OE-LKaEQhU/edit" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Ethics</span><span class="community-tag-chip" data-v-9bd856df>Responsible AI</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A featured talk delivered at DevFest Enugu 2025 examining the critical responsibilities software engineers bear when integrating machine learning models into public software. Covered algorithmic bias, intellectual property considerations, user privacy, and actionable safety guardrails.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Detecting and mitigating training data bias in generative models</span><span class="bento-curriculum-pill" data-v-9bd856df>Data privacy principles when transmitting user inputs to external LLM APIs</span><span class="bento-curriculum-pill" data-v-9bd856df>Implementing safety filters and content moderation layers</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Ethical AI is an engineering practice, not just a philosophical concept.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Transparency and user consent are foundational to trustworthy AI software.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Ethics</span><span class="community-tag-chip" data-v-9bd856df>Responsible AI</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A featured talk delivered at DevFest Enugu 2025 examining the critical responsibilities software engineers bear when integrating machine learning models into public software. Covered algorithmic bias, intellectual property considerations, user privacy, and actionable safety guardrails.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-7" class="timeline-item" data-v-d0042546><div id="content-devfest-nsukka-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df-nsk-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2025</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Nsukka, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Nsukka 2025</h3><p class="project-description" data-v-9bd856df>Anchored an interactive session on "Firebase, Flutter, and Gemini" to the student community with a Codelab on building a crossword puzzle.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://goo.gle/solution-crossword" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Codelab</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path><path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An interactive codelab workshop delivered at DevFest Nsukka 2025 demonstrating full-stack app development by uniting Flutter on the frontend, Firebase on the backend, and Google's Gemini API for dynamic AI crossword puzzle generation.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Generating dynamic puzzle clues and grids via the Gemini API</span><span class="bento-curriculum-pill" data-v-9bd856df>Real-time multi-player crossword state synchronization with Firebase</span><span class="bento-curriculum-pill" data-v-9bd856df>Building adaptive Flutter puzzle UI with smooth tile animations</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>
122Combining Flutter and Firebase enables rapid end-to-end prototyping of AI-powered consumer apps.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Prompting Gemini for structured JSON produces reliable game assets in real time.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An interactive codelab workshop delivered at DevFest Nsukka 2025 demonstrating full-stack app development by uniting Flutter on the frontend, Firebase on the backend, and Google's Gemini API for dynamic AI crossword puzzle generation.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-8" class="timeline-item" data-v-d0042546><div id="content-devfest-abuja-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df-abj-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2025</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Abuja, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Abuja 2025</h3><p class="project-description" data-v-9bd856df>Spoke on "Leveraging BigQuery for Business Data in Google Cloud" to a wide tech-savvy audience.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.cloudskillsboost.google/course_templates/552" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Codelab</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path>
122<path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>BigQuery</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Data</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical presentation delivered to enterprise developers and data professionals at DevFest Abuja 2025. Unpacked how organizations can transform raw transactional records into business intelligence using serverless Google Cloud BigQuery, scheduled analytical queries, and BigQuery ML.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Architecting partitioned and clustered BigQuery datasets for cost optimization</span><span class="bento-curriculum-pill" data-v-9bd856df>Writing high-performance SQL analytical queries across petabyte-scale data</span><span class="bento-curriculum-pill" data-v-9bd856df>Training predictive machine learning models directly inside BigQuery using SQL</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Data partitioning and clustering drastically reduce BigQuery query scan costs.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>BigQuery ML eliminates data migration overhead by keeping training inside the data warehouse.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>BigQuery</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Data</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical presentation delivered to enterprise developers and data professionals at DevFest Abuja 2025. Unpacked how organizations can transform raw transactional records into business intelligence using serverless Google Cloud BigQuery, scheduled analytical queries, and BigQuery ML.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-9" class="timeline-item" data-v-d0042546><div id="content-devfest-owerri-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df-owerri-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2025</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Owerri, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Owerri 2025</h3><p class="project-description" data-v-9bd856df>Anchored a workshop session on "Building with Web3 in Flutter", exploring Authentication and Smart Contract backends.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://github.com/keepdeploying/web3-in-flutter" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Workshop</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df>
122<path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path><path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Web3</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Smart Contracts</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on developer workshop at DevFest Owerri 2025 walking mobile engineers through the complete pipeline of integrating decentralized Web3 protocols into native Flutter mobile applications. Covered wallet connection protocols, signature requests, and reading/writing smart contract state.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Deep linking and mobile wallet connect standards (WalletConnect v2)</span><span class="bento-curriculum-pill" data-v-9bd856df>Interacting with smart contracts using web3dart and Solana Dart SDKs</span><span class="bento-curriculum-pill" data-v-9bd856df>Managing gas estimation and transaction state reactively in Flutter widgets</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Building mobile-first Web3 user experiences with seamless biometric wallet signing.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Handling blockchain latency gracefully with optimistic UI updates.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Web3</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Smart Contracts</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on developer workshop at DevFest Owerri 2025 walking mobile engineers through the complete pipeline of integrating decentralized Web3 protocols into native Flutter mobile applications. Covered wallet connection protocols, signature requests, and reading/writing smart contract state.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-10" class="timeline-item" data-v-d0042546><div id="content-devfest-kaduna-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df-kd-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>October 2025</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Kaduna, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Kaduna 2025</h3><p class="project-description" data-v-9bd856df>Anchored a workshop on "Create your AI with RAG in Google Cloud", explaining and showcasing grounding.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://github.com/GoogleCloudPlatform/generative-ai/tree/main/rag-grounding" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Google Colab</span><svg width="15" height="15" viewbox="0 0 24 24" fill="currentColor" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path d="M16.941 4.976a7.03 7.03 0 0 0-4.93 2.064a7.033 7.033 0 0 0-.124 9.807l2.395-2.395a3.646 3.646 0 0 1 5.15-5.148l2.397-2.399a7.03 7.03 0 0 0-4.888-1.93m-9.871.01a7.03 7.03 0 0 0-4.888 1.931l2.391 2.391a3.643 3.643 0 0 1 5.023.127l1.734-2.973l-.1-.08a7.03 7.03 0 0 0-4.16-1.396m15.01 2.172l-2.39 2.39a3.646 3.646 0 0 1-5.15 5.15l-2.406 2.407a7.036 7.036 0 0 0 9.945-9.947m-20.148.01a7.033 7.033 0 0 0-.002 9.681l2.397-2.397a3.643 3.643 0 0 1-.004-4.892zm7.664 7.423a3.635 3.635 0 0 1-5.017.113L2.182 17.1a7.03 7.03 0 0 0 9.007.546l.137-.112z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>RAG</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical workshop at DevFest Kaduna 2025 focusing on grounding Gemini models with private enterprise knowledge bases. Attendees practiced configuring vector stores, generating text embeddings, and executing semantic searches.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Vector databases and semantic similarity search mechanisms</span><span class="bento-curriculum-pill" data-v-9bd856df>Google Cloud Vertex AI Search integration with Gemini</span><span class="bento-curriculum-pill" data-v-9bd856df>Evaluating retrieval accuracy and response relevance</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>How to ground generative AI responses on proprietary documentation.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Evaluating token economy and cost trade-offs in RAG pipelines.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>RAG</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical workshop at DevFest Kaduna 2025 focusing on grounding Gemini models with private enterprise knowledge bases. Attendees practiced configuring vector stores, generating text embeddings, and executing semantic searches.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-11" class="timeline-item" data-v-d0042546><div id="content-devfest-onitsha-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df-onitsha-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>October 2025</span><span class="location-dot" data-v-9bd856df>â¢</span><span class="location-text" data-v-9bd856df>Onitsha, Nigeria</span></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Onitsha 2025</h3><p class="project-description" data-v-9bd856df>Anchored a Workshop on "Flutter UIs: Adaptive, Responsive, and Pixel-Perfect." stressing on how and why we should build good UIs.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://github.com/keepdeploying/flutter_ui_workshop" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Workshop</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df>
122<path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path><path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>UI Design</span><span class="community-tag-chip" data-v-9bd856df>Responsive</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical workshop delivered at DevFest Onitsha 2025 emphasizing responsive and adaptive mobile UI architecture in Flutter. Taught developers how to structure layouts that scale effortlessly across phones, foldable devices, tablets, and web browsers using LayoutBuilder, MediaQuery, and adaptive widgets.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Responsive design principles with LayoutBuilder and MediaQuery</span><span class="bento-curriculum-pill" data-v-9bd856df>Adaptive controls switching automatically between Cupertino and Material widgets</span><span class="bento-curriculum-pill" data-v-9bd856df>Micro-animations and pixel-perfect design system enforcement</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Building truly adaptive layouts that leverage screen real estate on tablets and desktops.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Achieving 60/120fps fluid performance through optimized widget rebuild scopes.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>UI Design</span><span class="community-tag-chip" data-v-9bd856df>Responsive</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical workshop delivered at DevFest Onitsha 2025 emphasizing responsive and adaptive mobile UI architecture in Flutter. Taught developers how to structure layouts that scale effortlessly across phones, foldable devices, tablets, and web browsers using LayoutBuilder, MediaQuery, and adaptive widgets.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-12" class="timeline-item" data-v-d0042546><div id="content-buildwithai-spella-hub-abakaliki-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-spella-hub-abk-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2025</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Spella Hub Abakaliki 2025</h3><p class="project-description" data-v-9bd856df>Trained the Developer Students of Spella Hub on using Gemini, Firebase Studio, and other AI tools to improve their development flow.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1KDWc1Cbo868UPq0j7rgPifkEB5Vv8ovvCr320Q9Swmo/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Developer Tools</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A developer skills workshop conducted at Spella Hub focusing on integrating AI-powered tools into modern development workflows. Students learned practical techniques for leveraging Gemini API capabilities, Firebase Studio for rapid backend setup, and complementary AI tools to accelerate project development.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Getting started with Gemini API and prompt engineering basics</span><span class="bento-curriculum-pill" data-v-9bd856df>Setting up Firebase Studio for rapid prototyping</span><span class="bento-curriculum-pill" data-v-9bd856df>Integrating multiple AI tools into development pipelines</span><span class="bento-curriculum-pill" data-v-9bd856df>Practical exercises building AI-enhanced applications</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AI tools significantly reduce development iteration time when integrated early in the workflow.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Combining Firebase and Gemini enables rapid full-stack AI application development.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Developer Tools</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A developer skills workshop conducted at Spella Hub focusing on integrating AI-powered tools into modern development workflows. Students learned practical techniques for leveraging Gemini API capabilities, Firebase Studio for rapid backend setup, and complementary AI tools to accelerate project development.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-13" class="timeline-item" data-v-d0042546><div id="content-buildwithai-port-harcourt-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-ph-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>June 2025</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Port Harcourt 2025</h3><p class="project-description" data-v-9bd856df>Anchored a Workshop session on "Build Multi-Agent Gen AI Systems with Google Cloud." using a codelab.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://goo.gle/Multi-Agent-Systems" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Codelab</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df>
122<path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path><path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Multi-Agent Systems</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Orchestration</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop exploring the design and implementation of multi-agent AI systems using Google Cloud infrastructure. Participants learned how to orchestrate multiple specialized agents to solve complex problems through coordinated reasoning and delegation patterns.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Agent architecture patterns and communication flows</span><span class="bento-curriculum-pill" data-v-9bd856df>Orchestrating multi-agent workflows on Google Cloud</span><span class="bento-curriculum-pill" data-v-9bd856df>Delegation strategies and task decomposition</span><span class="bento-curriculum-pill" data-v-9bd856df>Implementing robust agent monitoring and error handling</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Multi-agent systems decompose complex problems into specialized, composable units.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Google Cloud provides serverless primitives ideal for scaling independent agent workloads.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Multi-Agent Systems</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Orchestration</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop exploring the design and implementation of multi-agent AI systems using Google Cloud infrastructure. Participants learned how to orchestrate multiple specialized agents to solve complex problems through coordinated reasoning and delegation patterns.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-14" class="timeline-item" data-v-d0042546><div id="content-buildwithai-ogbomoso-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-ogbomoso-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2025</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Ogbomoso 2025</h3><p class="project-description" data-v-9bd856df>Trained the audience on generating Audio with multimodal Gemini using a Colab Notebook. Walked through model selection, prompt shaping, and playback in-notebook.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://colab.research.google.com/github/GoogleCloudPlatform/generative-ai/blob/main/audio/speech/use-cases/storytelling/storytelling.ipynb" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Google Colab</span><svg width="15" height="15" viewbox="0 0 24 24" fill="currentColor" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path d="M16.941 4.976a7.03 7.03 0 0 0-4.93 2.064a7.033 7.033 0 0 0-.124 9.807l2.395-2.395a3.646 3.646 0 0 1 5.15-5.148l2.397-2.399a7.03 7.03 0 0 0-4.888-1.93m-9.871.01a7.03 7.03 0 0 0-4.888 1.931l2.391 2.391a3.643 3.643 0 0 1 5.023.127l1.734-2.973l-.1-.08a7.03 7.03 0 0 0-4.16-1.396m15.01 2.172l-2.39 2.39a3.646 3.646 0 0 1-5.15 5.15l-2.406 2.407a7.036 7.036 0 0 0 9.945-9.947m-20.148.01a7.033 7.033 0 0 0-.002 9.681l2.397-2.397a3.643 3.643 0 0 1-.004-4.892zm7.664 7.423a3.635 3.635 0 0 1-5.017.113L2.182 17.1a7.03 7.03 0 0 0 9.007.546l.137-.112z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><span class="community-tag-chip" data-v-9bd856df>Audio Generation</span><span class="community-tag-chip" data-v-9bd856df>Multimodal</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop demonstrating audio generation capabilities using Google AI Gemini in a multimodal context. Participants worked through Colab notebooks learning how to generate, process, and integrate synthetic audio into applications.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Multimodal capabilities in Gemini for audio generation</span><span class="bento-curriculum-pill" data-v-9bd856df>Audio processing and synthesis techniques</span><span class="bento-curriculum-pill" data-v-9bd856df>Building audio-based user experiences</span><span class="bento-curriculum-pill" data-v-9bd856df>Practical exercises with Google Colab notebooks</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Gemini supports both text and audio generation for rich multimodal applications.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Colab notebooks enable rapid experimentation with AI capabilities without local setup.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemini</span><span class="community-tag-chip" data-v-9bd856df>Audio Generation</span><span class="community-tag-chip" data-v-9bd856df>Multimodal</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop demonstrating audio generation capabilities using Google AI Gemini in a multimodal context. Participants worked through Colab notebooks learning how to generate, process, and integrate synthetic audio into applications.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-15" class="timeline-item" data-v-d0042546><div id="content-buildwithai-onitsha-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-onitsha-25.jpg" alt="Event Photo" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2025</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Onitsha 2025</h3><p class="project-description" data-v-9bd856df>Training Session where participants explored Firebase Studio and then used CloudSkillsBoost for Intro to Vertex AI.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.cloudskillsboost.google/course_sessions/24650253/labs/604755" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Codelab</span><svg width="17" height="8" viewbox="0 0 256 125" fill="none" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df>
122<path fill="currentColor" d="M184.315 67.704c13.469-7.736 26.902-15.535 40.417-23.19c12.828-7.269 27.92-.566 30.829 13.578c1.683 8.182-1.97 17.021-9.357 21.326c-24.218 14.113-48.471 28.17-72.845 42.012c-7.544 4.284-15.315 3.496-22.19-1.754c-6.984-5.33-9.185-12.682-7.547-21.239c1.87-6.514 6.15-10.869 11.987-14.127c9.65-5.386 19.145-11.056 28.706-16.606"></path><path fill="currentColor" d="M194.203 62.079c-13.435-7.796-26.904-15.531-40.292-23.406c-12.709-7.476-14.449-23.898-3.655-33.49c6.244-5.547 15.725-6.804 23.147-2.559c24.332 13.917 48.632 27.893 72.806 42.08c7.482 4.391 10.684 11.516 9.577 20.095c-1.125 8.712-6.39 14.294-14.62 17.155c-6.577 1.638-12.488.108-18.228-3.318c-9.49-5.665-19.148-11.053-28.735-16.557"></path><path fill="currentColor" d="M71.752 56.563c-8.621 4.898-17.247 9.787-25.86 14.7c-5.037 2.874-10.02 5.846-15.083 8.672c-10.203 5.695-22.325 2.357-28.11-7.674c-5.521-9.572-2.348-21.982 7.478-27.718C34.202 30.52 58.289 16.599 82.463 2.833c7.414-4.221 15.106-3.69 21.962 1.357c7.236 5.327 9.605 12.823 7.98 21.61c-1.008 2.127-1.61 4.62-3.12 6.295c-2.454 2.725-5.244 5.334-8.35 7.25c-9.612 5.927-19.44 11.505-29.183 17.218"></path><path fill="currentColor" d="M61.867 62.057c8.553 5.016 17.1 10.043 25.661 15.045c5.007 2.926 10.072 5.755 15.051 8.726c10.034 5.99 13.205 18.156 7.41 28.181c-5.53 9.568-17.863 13.026-27.744 7.383c-24.157-13.795-48.256-27.693-72.264-41.746C2.618 75.336-.768 68.409.175 59.948c.995-8.931 6.302-14.73 14.725-17.717c2.345-.189 4.805-.915 7.011-.445c3.587.764 7.242 1.875 10.454 3.607c9.939 5.36 19.683 11.082 29.502 16.664"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Vertex AI</span><span class="community-tag-chip" data-v-9bd856df>Machine Learning</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A structured learning experience combining Firebase Studio for real-time backend development with Google Cloud Vertex AI for machine learning model deployment. Developers gained hands-on experience configuring managed ML pipelines and serving predictions at scale.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Firebase Studio for rapid backend prototyping</span><span class="bento-curriculum-pill" data-v-9bd856df>Vertex AI model training and evaluation workflows</span><span class="bento-curriculum-pill" data-v-9bd856df>Deploying ML models as scalable endpoints</span><span class="bento-curriculum-pill" data-v-9bd856df>Monitoring model performance and inference costs</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Firebase and Vertex AI integrate seamlessly for full-stack AI applications.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>
122Managed ML services eliminate infrastructure complexity, letting developers focus on data and models.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Vertex AI</span><span class="community-tag-chip" data-v-9bd856df>Machine Learning</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A structured learning experience combining Firebase Studio for real-time backend development with Google Cloud Vertex AI for machine learning model deployment. Developers gained hands-on experience configuring managed ML pipelines and serving predictions at scale.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-16" class="timeline-item" data-v-d0042546><div id="content-buildwithai-abakaliki-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-abk-25.jpg" alt="Obum Assisting" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2025</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Abakaliki 2025</h3><p class="project-description" data-v-9bd856df>Training Session where participants explored Firebase Studio and then used Google Colab for Intro to Gemma 2.0 Flash</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://colab.research.google.com/github/GoogleCloudPlatform/generative-ai/blob/main/gemini/getting-started/intro_gemini_2_0_flash.ipynb" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Google Colab</span><svg width="15" height="15" viewbox="0 0 24 24" fill="currentColor" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path d="M16.941 4.976a7.03 7.03 0 0 0-4.93 2.064a7.033 7.033 0 0 0-.124 9.807l2.395-2.395a3.646 3.646 0 0 1 5.15-5.148l2.397-2.399a7.03 7.03 0 0 0-4.888-1.93m-9.871.01a7.03 7.03 0 0 0-4.888 1.931l2.391 2.391a3.643 3.643 0 0 1 5.023.127l1.734-2.973l-.1-.08a7.03 7.03 0 0 0-4.16-1.396m15.01 2.172l-2.39 2.39a3.646 3.646 0 0 1-5.15 5.15l-2.406 2.407a7.036 7.036 0 0 0 9.945-9.947m-20.148.01a7.033 7.033 0 0 0-.002 9.681l2.397-2.397a3.643 3.643 0 0 1-.004-4.892zm7.664 7.423a3.635 3.635 0 0 1-5.017.113L2.182 17.1a7.03 7.03 0 0 0 9.007.546l.137-.112z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemma</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Language Models</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on training session combining Firebase Studio backend development with an introduction to Gemma 2.0 Flash, Google latest lightweight language model. Attendees learned to build full-stack applications with fast, efficient AI inference.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Firebase Studio setup and real-time data synchronization</span><span class="bento-curriculum-pill" data-v-9bd856df>Gemma 2.0 Flash model architecture and capabilities</span><span class="bento-curriculum-pill" data-v-9bd856df>Running Gemma models locally in Google Colab</span><span class="bento-curriculum-pill" data-v-9bd856df>Building cost-effective AI applications with lightweight models</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Gemma 2.0 Flash delivers excellent quality-to-latency trade-offs for edge and mobile deployment.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Combining lightweight models with Firebase enables efficient real-time AI features.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemma</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Language Models</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on training session combining Firebase Studio backend development with an introduction to Gemma 2.0 Flash, Google latest lightweight language model. Attendees learned to build full-stack applications with fast, efficient AI inference.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-17" class="timeline-item" data-v-d0042546><div id="content-buildwithai-calabar-2025" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-bwai-cal-25.jpg" alt="Obum on Stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Workshop</span><span class="project-tag" data-v-9bd856df>AI</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2025</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Calabar 2025</h3><p class="project-description" data-v-9bd856df>Training Session on multiple Google Colab Notebooks with Intro to Gemma being the first.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://goo.gle/gemini-flash-intro" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Google Colab</span><svg width="15" height="15" viewbox="0 0 24 24" fill="currentColor" style="display:inline-block;vertical-align:middle;" class="action-icon" data-v-9bd856df><path d="M16.941 4.976a7.03 7.03 0 0 0-4.93 2.064a7.033 7.033 0 0 0-.124 9.807l2.395-2.395a3.646 3.646 0 0 1 5.15-5.148l2.397-2.399a7.03 7.03 0 0 0-4.888-1.93m-9.871.01a7.03 7.03 0 0 0-4.888 1.931l2.391 2.391a3.643 3.643 0 0 1 5.023.127l1.734-2.973l-.1-.08a7.03 7.03 0 0 0-4.16-1.396m15.01 2.172l-2.39 2.39a3.646 3.646 0 0 1-5.15 5.15l-2.406 2.407a7.036 7.036 0 0 0 9.945-9.947m-20.148.01a7.033 7.033 0 0 0-.002 9.681l2.397-2.397a3.643 3.643 0 0 1-.004-4.892zm7.664 7.423a3.635 3.635 0 0 1-5.017.113L2.182 17.1a7.03 7.03 0 0 0 9.007.546l.137-.112z"></path></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemma</span><span class="community-tag-chip" data-v-9bd856df>Colab</span><span class="community-tag-chip" data-v-9bd856df>Introduction</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comprehensive training session introducing participants to Google AI models through interactive Colab notebooks. Starting with Gemma fundamentals, attendees progressed through practical examples demonstrating model capabilities and integration techniques.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Introduction to Gemma model family and capabilities</span><span class="bento-curriculum-pill" data-v-9bd856df>Running models in Google Colab notebooks</span><span class="bento-curriculum-pill" data-v-9bd856df>Prompt engineering and model configuration</span><span class="bento-curriculum-pill" data-v-9bd856df>Building practical AI applications with Google models</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Google Colab provides free compute and seamless model access for learning and experimentation.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Gemma models offer accessible entry points into modern generative AI.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Workshop</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Gemma</span><span class="community-tag-chip" data-v-9bd856df>Colab</span><span class="community-tag-chip" data-v-9bd856df>Introduction</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comprehensive training session introducing participants to Google AI models through interactive Colab notebooks. Starting with Gemma fundamentals, attendees progressed through practical examples demonstrating model capabilities and integration techniques.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-18" class="timeline-item" data-v-d0042546><div id="content-devfest-guinee-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-guinee.jpg" alt="First Slide" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Guinée 2024</h3><p class="project-description" data-v-9bd856df>Spoke in French about the various ways by which AI improves user experience in mobile applications. Covered on-device personalization, intelligent defaults, and contextual UI moments.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/rAt9UMLk0bs" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><a href="https://gdg.community.dev/e/mr5n7u/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile UX</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A conference talk presented in French exploring the intersection of artificial intelligence and mobile user experience design. Discussed how AI transforms app interactions, from personalization to predictive interfaces.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>AI-driven personalization in mobile apps</span><span class="bento-curriculum-pill" data-v-9bd856df>Predictive and adaptive user interfaces</span><span class="bento-curriculum-pill" data-v-9bd856df>On-device vs. cloud AI trade-offs</span><span class="bento-curriculum-pill" data-v-9bd856df>User experience best practices for AI features</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AI enables mobile apps to anticipate user needs and adapt interactions dynamically.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Thoughtful AI integration improves rather than complicates user experience.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
122Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile UX</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A conference talk presented in French exploring the intersection of artificial intelligence and mobile user experience design. Discussed how AI transforms app interactions, from personalization to predictive interfaces.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-19" class="timeline-item" data-v-d0042546><div id="content-learn-about-azure-serverless-functions" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/learn-azure-functions.jpg" alt="Recording Screenshot" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>MLSA</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Learn About Azure Serverless Functions</h3><p class="project-description" data-v-9bd856df>Explained when and how you can set up serverless compute with Azure. Covered Azure Functions triggers, deployment options, and where serverless makes sense vs where it does not.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/qYfQhgpWuKA" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>Azure</span><span class="community-tag-chip" data-v-9bd856df>Serverless</span><span class="community-tag-chip" data-v-9bd856df>Cloud Computing</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An educational session on Azure Functions demonstrating serverless compute patterns and when to apply them. Covered deployment strategies, scaling behavior, and cost optimization for event-driven workloads.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Serverless computing fundamentals and use cases</span><span class="bento-curriculum-pill" data-v-9bd856df>Azure Functions runtime and triggers</span><span class="bento-curriculum-pill" data-v-9bd856df>Deploying and managing Azure Functions</span><span class="bento-curriculum-pill" data-v-9bd856df>Pricing models and cost optimization strategies</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Serverless functions reduce operational overhead and scale automatically with demand.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Selecting the right trigger type aligns compute cost with actual usage patterns.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>Azure</span><span class="community-tag-chip" data-v-9bd856df>Serverless</span><span class="community-tag-chip" data-v-9bd856df>Cloud Computing</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An educational session on Azure Functions demonstrating serverless compute patterns and when to apply them. Covered deployment strategies, scaling behavior, and cost optimization for event-driven workloads.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-20" class="timeline-item" data-v-d0042546><div id="content-devfest-enugu-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-enugu.jpg" alt="Obum and SauceCode on Stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Enugu 2024</h3><p class="project-description" data-v-9bd856df>Handled the Community Event Opening Note on Culture and Technology. Framed how local culture shapes how communities adopt and shape technology.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/3HG1kEwbn9Y" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Culture</span><span class="community-tag-chip" data-v-9bd856df>Technology</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A keynote opening remarks delivered at DevFest Enugu 2024 reflecting on the intersection of technology and cultural values in engineering communities. Set the tone for the conference by exploring shared responsibility in technology advancement.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Technology as a cultural force in modern society</span><span class="bento-curriculum-pill" data-v-9bd856df>Building inclusive and sustainable engineering communities</span><span class="bento-curriculum-pill" data-v-9bd856df>Bridging technical innovation with human values</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>
122Engineering decisions carry cultural and social implications beyond technical metrics.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Communities thrive when technology is developed with intention and cultural awareness.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Culture</span><span class="community-tag-chip" data-v-9bd856df>Technology</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A keynote opening remarks delivered at DevFest Enugu 2024 reflecting on the intersection of technology and cultural values in engineering communities. Set the tone for the conference by exploring shared responsibility in technology advancement.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-21" class="timeline-item" data-v-d0042546><div id="content-devfest-calabar-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-calabar.jpg" alt="First Slide" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Calabar 2024</h3><p class="project-description" data-v-9bd856df>Spoke on "Expert Tips for Flutter UI Performance". Covered frame rate targets, rebuild scope, and profiling to hit smooth 60/120fps.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/TYoEo6ghwJ0" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><a href="https://gdg.community.dev/e/m88tfc/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
122Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Performance</span><span class="community-tag-chip" data-v-9bd856df>UI Optimization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical presentation exploring advanced optimization techniques for Flutter UI rendering. Covered frame rate optimization, widget rebuild efficiency, and memory profiling to achieve smooth 60/120 fps performance.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter rendering pipeline and frame rate targets</span><span class="bento-curriculum-pill" data-v-9bd856df>Identifying and fixing widget rebuild bottlenecks</span><span class="bento-curriculum-pill" data-v-9bd856df>Memory profiling and leak detection</span><span class="bento-curriculum-pill" data-v-9bd856df>Animation performance and Skia optimization</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Minimizing widget rebuild scope is the single highest-impact optimization for UI performance.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>DevTools profiling uncovers non-obvious performance bottlenecks in complex UIs.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Performance</span><span class="community-tag-chip" data-v-9bd856df>UI Optimization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical presentation exploring advanced optimization techniques for Flutter UI rendering. Covered frame rate optimization, widget rebuild efficiency, and memory profiling to achieve smooth 60/120 fps performance.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-22" class="timeline-item" data-v-d0042546><div id="content-devfest-ogbomoso-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-ogbomoso.jpg" alt="Obum on Stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Ogbomoso 2024</h3><p class="project-description" data-v-9bd856df>Spoke on "How to use Google AI for A/B Testing". Explored using generative AI to accelerate hypothesis generation, variant creation, and result analysis.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1x7IqC66YSjiwJi-aHmJzcu6GqVhKgfo
122HggPf3FQHlXE/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/mjteas/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>A/B Testing</span><span class="community-tag-chip" data-v-9bd856df>Product Development</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A Talk on leveraging Google AI tools to design, analyze, and optimize A/B testing experiments. Explored how generative AI can accelerate hypothesis generation, variant creation, and statistical analysis workflows.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>A/B testing fundamentals and statistical rigor</span><span class="bento-curriculum-pill" data-v-9bd856df>Generating test variants with Google AI</span><span class="bento-curriculum-pill" data-v-9bd856df>Analyzing results with AI-powered insights</span><span class="bento-curriculum-pill" data-v-9bd856df>Ethical considerations in experimentation</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AI accelerates the hypothesis-to-insight cycle in experimentation workflows.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Maintaining statistical validity is critical even when using automated testing tools.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>A/B Testing</span><span class="community-tag-chip" data-v-9bd856df>Product Development</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A Talk on leveraging Google AI tools to design, analyze, and optimize A/B testing experiments. Explored how generative AI can accelerate hypothesis generation, variant creation, and statistical analysis workflows.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-23" class="timeline-item" data-v-d0042546><div id="content-devfest-kaduna-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-kaduna.jpg" alt="Obum on Stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Kaduna 2024</h3><p class="project-description" data-v-9bd856df>Spoke on "How AI Improves User Experience on Mobile". Covered personalization, contextual recommendations, on-device AI trade-offs, and privacy-first patterns.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1vl9LLHz4Pl0P4IDnPgOzcmve5X20kBat7gXu10K5CmM/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/m4k5p5/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile</span><span class="community-tag-chip" data-v-9bd856df>User Experience</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An exploration of how artificial intelligence transforms mobile app user experiences through personalization, contextual recommendations, and intelligent automation. Discussed on-device AI trade-offs and privacy-first approaches.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>On-device vs. cloud AI architectures for mobile</span><span class="bento-curriculum-pill" data-v-9bd856df>Personalization algorithms and recommendation systems</span><span class="bento-curriculum-pill" data-v-9bd856df>Privacy-preserving AI inference on mobile</span><span class="bento-curriculum-pill" data-v-9bd856df>User experience patterns for AI-powered features</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Mobile AI delivers personalized experiences while respecting user privacy through on-device processing.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Well-designed AI features feel natural and enhance rather than complicate user flows.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile</span><span class="community-tag-chip" data-v-9bd856df>User Experience</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An exploration of how artificial intelligence transforms mobile app user experiences through personalization, contextual recommendations, and intelligent automation. Discussed on-device AI trade-offs and privacy-first approaches.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-24" class="timeline-item" data-v-d0042546><div id="content-devfest-lagos-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-lagos.jpg" alt="Obum on Stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Lagos 2024</h3><p class="project-description" data-v-9bd856df>Carried out a workshop on "How to Build Android Bubbles in Flutter". Walked through the conversation_bubbles plugin, notification metadata, and shortcut wiring.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://github.com/keepdeploying/bubbles_in_flutter_workshop" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Workshop Repo</span><svg width="15" height="15" viewbox="0, 0, 400,400" fill="currentColor" class="action-icon" data-v-9bd856df><path stroke="none" fill-rule="evenodd" d="M146.905 8.637 C -27.040 55.399,-53.547 304.256,107.076 382.570 C 145.210 401.163,153.333 397.846,153.333 363.681 L 153.333 344.575 134.167 345.824 C 109.587 347.426,95.422 340.028,84.387 319.823 C 79.935 311.670,71.876 300.896,66.479 295.880 C 54.889 285.109,54.444 283.333,63.333 283.333 C 67.234 283.333,70.000 285.556,70.000 288.690 C 70.000 291.998,71.847 293.338,74.830 292.193 C 78.059 290.954,79.046 291.941,77.807 295.170 C 76.514 298.539,78.330 300.015,83.810 300.051 C 89.581 300.089,90.447 300.875,87.073 303.012 C 81.551 306.509,85.528 314.484,91.627 312.143 C 94.572 311.013,95.347 312.659,94.106 317.407 C 92.525 323.452,93.394 324.041,101.061 322.117 C 107.797 320.426,109.405 321.005,108.017 324.622 C 105.116 332.183,113.822 335.067,118.839 328.205 C 122.859 322.708,123.333 322.654,123.333 327.696 C 123.333 331.207,125.983 333.333,130.357 333.333 C 135.230 333.333,136.793 331.803,135.461 328.333 C 134.406 325.583,134.995 323.333,136.771 323.333 C 138.547 323.333,140.000 325.583,140.000 328.333 C 140.000 331.083,142.250 333.333,145.000 333.333 C 147.750 333.333,150.000 330.588,150.000 327.232 C 150.000 323.876,153.472 314.272,157.716 305.889 L 165.431 290.649 145.602 286.441 C 86.844 273.971,55.010 205.872,84.454 155.631 C 92.111 142.565,93.452 137.234,91.696 126.840 C 89.477 113.709,94.819 86.667,99.631 86.667 C 105.649 86.667,125.723 94.901,137.201 102.077 C 147.383 108.443,151.241 109.179,160.512 106.520 C 174.862 102.404,225.138 102.404,239.488 106.520 C 248.759 109.179,252.617 108.443,262.799 102.077 C 274.277 94.901,294.351 86.667,300.369 86.667 C 305.181 86.667,310.523 113.709,308.304 126.840 C 306.548 137.234,307.889 142.565,315.546 155.631 C 344.777 205.509,315.495 270.311,256.905 285.404 L 234.194 291.255 240.418 301.461 C 245.465 3
12209.737,246.644 318.392,246.654 347.227 C 246.669 390.043,247.677 393.333,260.781 393.333 C 292.592 393.333,357.991 339.836,379.092 296.552 C 456.168 138.448,315.033 -36.562,146.905 8.637 "></path></svg></a><a href="https://docs.google.com/presentation/d/18xiImzG4FS3r9rlFCjtFuDSWCajgQO9t3s7NDr-jqoI/edit?usp=sharing" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Android</span><span class="community-tag-chip" data-v-9bd856df>Bubbles</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop demonstrating Android Bubbles implementation in Flutter. Covered Material Design bubble patterns, thread management, and creating rich chat experiences with floating conversation bubbles.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Android Bubbles API and Material Design standards</span><span class="bento-curriculum-pill" data-v-9bd856df>Building thread-aware chat interfaces in Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>Implementing floating bubble UI patterns</span><span class="bento-curriculum-pill" data-v-9bd856df>Handling user interactions in bubble context</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Bubbles enable users to continue conversations without leaving their current app context.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Material Design bubbles maintain visual consistency across Android versions.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Android</span><span class="community-tag-chip" data-v-9bd856df>Bubbles</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop demonstrating Android Bubbles implementation in Flutter. Covered Material Design bubble patterns, thread management, and creating rich chat experiences with floating conversation bubbles.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-25" class="timeline-item" data-v-d0042546><div id="content-gdes-panel-devfest-lagos-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/df24-lagos-gdes-panel.jpg" alt="Photo of Panelists" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Panelist</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>GDEs Panel - DevFest Lagos 2024</h3><p class="project-description" data-v-9bd856df>Was in the Panel of Dart & Flutter GDEs in Day 1 of DevFest Lagos 2024 where we discussed about Flutter.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://devfestlagos.com/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Panelist</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>GDE</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A panel discussion featuring Google Developer Experts in Dart and Flutter, addressing community questions about language evolution, best practices, and the future of cross-platform mobile development.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Panel</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Current state of Dart language and runtime</span><span class="bento-curriculum-pill" data-v-9bd856df>Flutter ecosystem growth and framework evolution</span><span class="bento-curriculum-pill" data-v-9bd856df>Community-sourced questions and expert insights</span><span class="bento-curriculum-pill" data-v-9bd856df>Industry trends in mobile development</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Google Developer Experts directly shape language and framework direction based on community feedback.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter and Dart communities are thriving with continuous innovation and learning opportunities.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Panelist</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>GDE</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A panel discussion featuring Google Developer Experts in Dart and Flutter, addressing community questions about language evolution, best practices, and the future of cross-platform mobile development.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-26" class="timeline-item" data-v-d0042546><div id="content-devfest-abakaliki-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-ai.jpg" alt="First Slide" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Abakaliki 2024</h3><p class="project-description" data-v-9bd856df>Spoke on "Expert Tips for Flutter UI Performance". Walked through profiling tools, rendering pipeline optimization, and real-world case studies.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/TYoEo6ghwJ0" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><a href="https://docs.google.com/presentation/d/1xNjmAMNRf0O-AJseLGwNgHcGOzAJLpoyFXKuaWazpcQ/edit?usp=sharing" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
122Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Performance</span><span class="community-tag-chip" data-v-9bd856df>Optimization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A deep Talk exploring optimization techniques for Flutter UI rendering and performance. Covered profiling tools, rendering pipeline optimization, and real-world case studies achieving smooth 60/120 fps.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter rendering pipeline architecture and frame budgets</span><span class="bento-curriculum-pill" data-v-9bd856df>Profiling and identifying performance bottlenecks with DevTools</span><span class="bento-curriculum-pill" data-v-9bd856df>Optimizing widget rebuild cycles and paint operations</span><span class="bento-curriculum-pill" data-v-9bd856df>Memory management and garbage collection tuning</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Most Flutter performance issues are solved by reducing widget rebuild scope and paint area.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>DevTools profiling transforms guesswork into data-driven optimization.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Performance</span><span class="community-tag-chip" data-v-9bd856df>Optimization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A deep Talk exploring optimization techniques for Flutter UI rendering and performance. Covered profiling tools, rendering pipeline optimization, and real-world case studies achieving smooth 60/120 fps.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-27" class="timeline-item" data-v-d0042546><div id="content-flutterbytes-conference-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-fbc24-community.jpg" alt="Attending Community" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>FlutterBytesConf</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>FlutterBytes Conference 2024</h3><p class="project-description" data-v-9bd856df>Spoke on "Bringing Blockchain & Web3 into Flutter". Covered wallet integration, signing flows, and reading and writing smart contract state from a mobile app.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.youtube.com/live/dXrvd3nKKFE?t=2955s" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df>
122<polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><a href="https://docs.google.com/presentation/d/1RbcS7hPJ69MtpvtVfYj55p0m3F7-ulDXH2apsBqWik0/edit?usp=sharing" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>FlutterBytesConf</span><span class="community-tag-chip" data-v-9bd856df>Web3</span><span class="community-tag-chip" data-v-9bd856df>Blockchain</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical presentation exploring the integration of blockchain and Web3 technologies into Flutter applications. Covered wallet integration, smart contract interaction, and building decentralized user experiences.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Blockchain fundamentals for mobile developers</span><span class="bento-curriculum-pill" data-v-9bd856df>Wallet connection and key management in Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>Interacting with smart contracts from Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>Building trust and security in decentralized apps</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Web3 integration brings new possibilities for ownership and user autonomy in mobile apps.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter platform provides excellent primitives for building blockchain-based experiences.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>FlutterBytesConf</span><span class="community-tag-chip" data-v-9bd856df>Web3</span><span class="community-tag-chip" data-v-9bd856df>Blockchain</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical presentation exploring the integration of blockchain and Web3 technologies into Flutter applications. Covered wallet integration, smart contract interaction, and building decentralized user experiences.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-28" class="timeline-item" data-v-d0042546><div id="content-gdes-panel-flutterbytesconf" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/fbc24-gdes-panel.jpg" alt="Photo of Stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Panelist</span><span class="project-tag" data-v-9bd856df>FlutterBytesConf</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>GDEs Panel - FlutterBytesConf</h3><p class="project-description" data-v-9bd856df>Was in the Panel of Dart & Flutter GDEs in Day 1 of FlutterBytesConf where we answered Flutter questions and had cool conversations.
122</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://www.flutterbytesconf.com/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Panelist</span><span class="community-tag-chip" data-v-9bd856df>FlutterBytesConf</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>GDE</span><span class="community-tag-chip" data-v-9bd856df>Panel</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A panel session bringing together Google Developer Experts specializing in Dart and Flutter to discuss current challenges, emerging patterns, and future directions in cross-platform mobile development.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Panel</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>State of Flutter ecosystem and latest framework features</span><span class="bento-curriculum-pill" data-v-9bd856df>Dart language evolution and upcoming capabilities</span><span class="bento-curriculum-pill" data-v-9bd856df>Community questions and expert perspectives</span><span class="bento-curriculum-pill" data-v-9bd856df>Career paths and opportunities in cross-platform development</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter community members drive innovation through active feedback and collaboration.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Expert guidance accelerates learning and helps avoid common pitfalls.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Panelist</span><span class="community-tag-chip" data-v-9bd856df>FlutterBytesConf</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>GDE</span><span class="community-tag-chip" data-v-9bd856df>Panel</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A panel session bringing together Google Developer Experts specializing in Dart and Flutter to discuss current challenges, emerging patterns, and future directions in cross-platform mobile development.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-29" class="timeline-item" data-v-d0042546><div id="content-devfest-afrique-francophone-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df24-af-fr.jpg" alt="First Slide" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Afrique Francophone 2024</h3><p class="project-description" data-v-9bd856df>Spoke in French about the various ways by which AI improves user experience in mobile applications. Covered on-device inference, contextual recommendations, and intelligent defaults.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/rAt9UMLk0bs" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><a href="https://docs.google.com/presentation/d/15wIJbZQ2QzQE0-4y_pZwIPMBTc4hFa9cHFLwP9XCinM/edit?usp=sharing" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile UX</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Francophone</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A conference presentation in French exploring AI's transformative impact on mobile user experience. Covered personalization, intelligent features, and design patterns for AI-enhanced applications.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>AI-driven personalization and recommendation engines</span><span class="bento-curriculum-pill" data-v-9bd856df>Predictive interfaces and adaptive user flows</span><span class="bento-curriculum-pill" data-v-9bd856df>Privacy-first AI on mobile devices</span><span class="bento-curriculum-pill" data-v-9bd856df>User experience design for AI features</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AI transforms mobile apps from reactive tools into anticipatory assistants.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Responsible AI design prioritizes user control and transparency.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile UX</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Francophone</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A conference presentation in French exploring AI's transformative impact on mobile user experience. Covered personalization, intelligent features, and design patterns for AI-enhanced applications.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-30" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-asaba-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io-asaba-24.jpg" alt="Obum speaking on stage" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>July 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended Asaba 2024</h3><p class="project-description" data-v-9bd856df>Spoke on the updates in Dart & Flutter announced during 2024's Google I/O under the heading "Dart Macros & A Better Flutter". Focused on macros as a metaprogramming capability and framework improvements landing in the SDK.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://gdg.community.dev/e/mgcbfp/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://x.com/GdgAsaba/status/1813937612245405801" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Tweet</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A presentation on the latest features announced at Google I/O 2024 for Dart and Flutter. Focused on Dart macros as a metaprogramming capability and framework improvements enhancing developer experience.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Dart macros and compile-time code generation</span><span class="bento-curriculum-pill" data-v-9bd856df>Flutter framework improvements and new features</span><span class="bento-curriculum-pill" data-v-9bd856df>Performance enhancements and tooling updates</span><span class="bento-curriculum-pill" data-v-9bd856df>Migration guides for existing projects</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Dart macros enable powerful compile-time abstractions reducing boilerplate code.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter continues evolving with focus on performance and developer experience.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A presentation on the latest features announced at Google I/O 2024 for Dart and Flutter. Focused on Dart macros as a metaprogramming capability and framework improvements enhancing developer experience.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-31" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-enugu-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/mobile-ai-panel.jpg" alt="Panelists for "Mobile & AI"" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Panelist</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>July 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended Enugu 2024</h3><p class="project-description" data-v-9bd856df>Spoke on the panel of "The Future of Mobile Development with AI-Embedded Chipsets" with other seasoned software engineers. Covered on-device inference, hardware acceleration, and what shifts for app developers building on next-gen silicon.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/hqz-8LjA4-E" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df>
122<polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><a href="https://gdg.community.dev/e/m2ru49/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Panelist</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile</span><span class="community-tag-chip" data-v-9bd856df>Hardware</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A panel discussion exploring how AI-embedded chipsets reshape mobile development. Covered on-device AI, hardware acceleration, and practical implications for app developers building next-generation experiences.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Panel</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>AI capabilities in modern mobile processors</span><span class="bento-curriculum-pill" data-v-9bd856df>On-device vs. cloud tradeoffs for ML inference</span><span class="bento-curriculum-pill" data-v-9bd856df>Hardware acceleration and neural engines</span><span class="bento-curriculum-pill" data-v-9bd856df>Practical patterns for AI-first mobile apps</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AI-embedded chipsets enable powerful on-device experiences without cloud latency.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Mobile developers must evolve skills to leverage hardware AI capabilities.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Panelist</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Mobile</span><span class="community-tag-chip" data-v-9bd856df>Hardware</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A panel discussion exploring how AI-embedded chipsets reshape mobile development. Covered on-device AI, hardware acceleration, and practical implications for app developers building next-generation experiences.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-32" class="timeline-item" data-v-d0042546><div id="content-build-your-portfolio-with-github-codespaces" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/github-codespaces-portfolio.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>MLSA</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>June 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Build your Portfolio with GitHub Codespaces</h3><p class="project-description" data-v-9bd856df>Demonstrated how GitHub Codespaces enables coding in the cloud while building and deploying a template portfolio website.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/nrL9IAS3Uy8" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df>
122<polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Cloud Development</span><span class="community-tag-chip" data-v-9bd856df>Portfolio</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A live coding demonstration showing GitHub Codespaces as a complete development environment in the cloud. Built a portfolio website from scratch, deployed it, and showed how Codespaces eliminates setup friction.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Setting up development environments with GitHub Codespaces</span><span class="bento-curriculum-pill" data-v-9bd856df>Cloud-based coding workflows and collaboration</span><span class="bento-curriculum-pill" data-v-9bd856df>Deploying websites directly from Codespaces</span><span class="bento-curriculum-pill" data-v-9bd856df>Version control integration and best practices</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>GitHub Codespaces removes environment setup barriers, accelerating project starts.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Cloud development environments enable seamless collaboration across teams.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Cloud Development</span><span class="community-tag-chip" data-v-9bd856df>Portfolio</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A live coding demonstration showing GitHub Codespaces as a complete development environment in the cloud. Built a portfolio website from scratch, deployed it, and showed how Codespaces eliminates setup friction.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-33" class="timeline-item" data-v-d0042546><div id="content-buildwithai-abakaliki-2024" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-build-with-ai.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>April 2024</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>#BuildwithAI Abakaliki 2024</h3><p class="project-description" data-v-9bd856df>Carried out a workshop on "Adding AI to your Flutter Apps using Google AI Dart SDK".</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://gdg.community.dev/e/mm2fcy/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/GDGAbakaliki/status/1782719581015961831" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Tweet</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>Workshop</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop teaching developers how to integrate Google AI capabilities into Flutter applications. Covered the Google AI Dart SDK, prompt engineering, and building intelligent mobile features.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>#BuildwithAI</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Google AI Dart SDK setup and initialization</span><span class="bento-curriculum-pill" data-v-9bd856df>Prompt engineering and parameter tuning</span><span class="bento-curriculum-pill" data-v-9bd856df>Integrating AI responses into Flutter UI</span><span class="bento-curriculum-pill" data-v-9bd856df>Building practical AI-powered Flutter applications</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>The Google AI Dart SDK simplifies adding generative AI to Flutter apps with minimal overhead.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Effective prompt engineering is key to getting useful, consistent AI responses.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>AI</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Dart</span><span class="community-tag-chip" data-v-9bd856df>Workshop</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on workshop teaching developers how to integrate Google AI capabilities into Flutter applications. Covered the Google AI Dart SDK, prompt engineering, and building intelligent mobile features.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-34" class="timeline-item" data-v-d0042546><div id="content-devfest-asaba-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df23-asaba.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>December 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Asaba 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "Using Streams and Services for Flutter State".</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1gedT70WjEcUWtXzNqgIxGG58p_ZlMDDT0Q-ZMsRG3AU/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/mbcaf6/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/obumnwabude/status/1733410762603876691" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Thread</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>State Management</span><span class="community-tag-chip" data-v-9bd856df>Streams</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A Talk exploring state management patterns in Flutter using Streams and Services. Covered reactive programming principles, BLoC patterns, and building scalable state architectures.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Dart Streams and reactive programming fundamentals</span><span class="bento-curriculum-pill" data-v-9bd856df>Service layer architecture for state management</span><span class="bento-curriculum-pill" data-v-9bd856df>BLoC pattern implementation and best practices</span><span class="bento-curriculum-pill" data-v-9bd856df>Testing streams-based state management</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Streams provide a powerful abstraction for managing state changes over time.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Service-based architectures decouple UI from business logic, improving testability.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>State Management</span><span class="community-tag-chip" data-v-9bd856df>Streams</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A Talk exploring state management patterns in Flutter using Streams and Services. Covered reactive programming principles, BLoC patterns, and building scalable state architectures.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-35" class="timeline-item" data-v-d0042546><div id="content-devfest-enugu-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df23-enugu.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Enugu 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "Flutter CustomPaint vs SVG Image Spec". Weighed when procedural CustomPaint wins vs when to inline an SVG, with the performance trade-offs behind each.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/110Ft7-UnpFbrL-xJ6NbbG04FFnzCv7UT9LCqT8VbEx0/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/m24sqy/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://youtu.be/w9lD35D78N8" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Graphics</span><span class="community-tag-chip" data-v-9bd856df>CustomPaint</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comparative analysis of graphics rendering approaches in Flutter. Examined when to use CustomPaint for procedural graphics versus SVG image specifications, covering performance trade-offs and use cases.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>CustomPaint API and canvas drawing operations</span><span class="bento-curriculum-pill" data-v-9bd856df>SVG image format and rendering in Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>Performance characteristics of each approach</span><span class="bento-curriculum-pill" data-v-9bd856df>Choosing the right tool for graphics challenges</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>CustomPaint excels for dynamic, procedurally-generated graphics with low overhead.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>SVG is ideal for static vector graphics and complex illustrations.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Graphics</span><span class="community-tag-chip" data-v-9bd856df>CustomPaint</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comparative analysis of graphics rendering approaches in Flutter. Examined when to use CustomPaint for procedural graphics versus SVG image specifications, covering performance trade-offs and use cases.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-36" class="timeline-item" data-v-d0042546><div id="content-devfest-luwero-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-df23-luwero.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Luwero 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "How to Customize Flutter Packages". Covered forking, extending, and maintaining project-specific variants of pub.dev packages without losing upstream updates.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1MRQwxGqTXzjVy_IyNjJBIlsReKnFujwWZ2Aohj8q60g/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/m5qj29/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://youtu.be/UkWkXmFQAb8" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df>
122<svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Packages</span><span class="community-tag-chip" data-v-9bd856df>Customization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical session on extending and customizing existing Flutter packages for project-specific needs. Covered forking packages, modifying behavior, and maintaining custom variants.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Pub package structure and dependency management</span><span class="bento-curriculum-pill" data-v-9bd856df>Extending packages via inheritance and composition</span><span class="bento-curriculum-pill" data-v-9bd856df>Creating custom package forks and variants</span><span class="bento-curriculum-pill" data-v-9bd856df>Publishing and maintaining custom packages</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Extending packages through composition often beats forking for maintainability.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Understanding package internals allows powerful customizations without reinventing.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Packages</span><span class="community-tag-chip" data-v-9bd856df>Customization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A technical session on extending and customizing existing Flutter packages for project-specific needs. Covered forking packages, modifying behavior, and maintaining custom variants.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-37" class="timeline-item" data-v-d0042546><div id="content-gsdc-ae-funai-info-session-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/gdsc-aefunai-info-session-2023.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>GSDC AE-FUNAI Info Session 2023</h3><p class="project-description" data-v-9bd856df>Introduced Technical Writing to a student audience. Covered documentation principles, audience awareness, and the writing habits that separate useful docs from wall-of-text ones.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://x.com/gdscaefunai/status/1704569899404902860?s=20" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Technical Writing</span><span class="community-tag-chip" data-v-9bd856df>Documentation</span><span class="community-tag-chip" data-v-9bd856df>Education</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An introductory session on technical writing for computer science students. Covered documentation principles, audience awareness, and practical skills for writing clear technical content.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Technical writing fundamentals and best practices</span><span class="bento-curriculum-pill" data-v-9bd856df>Documentation structures and formats</span><span class="bento-curriculum-pill" data-v-9bd856df>Writing for diverse technical audiences</span><span class="bento-curriculum-pill" data-v-9bd856df>Tools and workflows for technical documentation</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Technical writing is a skill every engineer should develop for better communication.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Clear documentation multiplies the impact of code and projects.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Technical Writing</span><span class="community-tag-chip" data-v-9bd856df>Documentation</span><span class="community-tag-chip" data-v-9bd856df>Education</span><!--]--></div>
122<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An introductory session on technical writing for computer science students. Covered documentation principles, audience awareness, and practical skills for writing clear technical content.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-38" class="timeline-item" data-v-d0042546><div id="content-gdsc-nau-info-session-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/gdsc-nau-info-session-2023.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>GDSC NAU Info Session 2023</h3><p class="project-description" data-v-9bd856df>Introduced Flutter, Firebase, and Google Cloud to new GDSC members. Framed how the three fit together for shipping a full-stack app fast.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1W7dKEXD1DIH0MyVtSifLFOMG4SFq1gP78UGdhoMTRsc/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An information session introducing Google Developer Student Club members to the Flutter framework, Firebase backend services, and Google Cloud infrastructure. Provided pathways for learning full-stack app development.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter framework overview and cross-platform capabilities</span><span class="bento-curriculum-pill" data-v-9bd856df>Firebase services for backend and real-time data</span><span class="bento-curriculum-pill" data-v-9bd856df>Google Cloud fundamentals and app deployment</span><span class="bento-curriculum-pill" data-v-9bd856df>Career paths and learning resources</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter, Firebase, and Google Cloud form a powerful stack for rapid app development.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Student communities provide structured learning and mentorship opportunities.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An information session introducing Google Developer Student Club members to the Flutter framework, Firebase backend services, and Google Cloud infrastructure. Provided pathways for learning full-stack app development.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-39" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-owerri-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io-extended-owerri.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>August 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended Owerri 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "Understanding UI Rendering: How Flutter is platform-agnostic". Walked through the Skia and Impeller pipeline and how Flutter draws the same UI across Android, iOS, Web, and Desktop.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1yK2RuAcIGUJNeBDTusbKtALFuiCL4SOANMmYhRCESzc/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/mguey6/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/obumnwabude/status/1692863659666513924" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Thread</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Rendering</span><span class="community-tag-chip" data-v-9bd856df>Architecture</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A deep technical dive into Flutter rendering architecture. Explained the Skia graphics engine, the rendering pipeline, and how Flutter achieves platform-agnostic UI across Android, iOS, Web, and Desktop.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter architecture and rendering pipeline overview</span><span class="bento-curriculum-pill" data-v-9bd856df>Skia graphics engine and rasterization</span><span class="bento-curriculum-pill" data-v-9bd856df>Platform channels and native integration</span><span class="bento-curriculum-pill" data-v-9bd856df>Performance implications of platform-agnostic design</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter's rendering abstraction enables consistent visuals across platforms.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Understanding rendering mechanics helps developers optimize performance.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Rendering</span><span class="community-tag-chip" data-v-9bd856df>Architecture</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A deep technical dive into Flutter rendering architecture. Explained the Skia graphics engine, the rendering pipeline, and how Flutter achieves platform-agnostic UI across Android, iOS, Web, and Desktop.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-40" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-enugu-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io-extended-enugu.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>August 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended Enugu 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "How to improve Flutter forms", focusing on user experience in mobile apps. Covered validation, accessible error handling, and UI patterns that reduce user friction.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/11PJdEQLWK1sGoARW81c8CiegicDT79SLi7VaLx-69G0/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/m76sm3/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/GdgEnugu/status/1690326639924613120" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Tweet</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Forms</span><span class="community-tag-chip" data-v-9bd856df>UX</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical session on building high-quality form experiences in Flutter. Covered validation, accessibility, error handling, and UI patterns that reduce user friction and frustration.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Form validation and error messaging patterns</span><span class="bento-curriculum-pill" data-v-9bd856df>Accessibility in form design and input handling</span><span class="bento-curriculum-pill" data-v-9bd856df>Advanced text input customization in Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>Multi-step forms and complex workflows</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Good forms are invisible. Great forms guide users and handle edge cases gracefully.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Accessibility in forms benefits all users, not just those with disabilities.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Forms</span><span class="community-tag-chip" data-v-9bd856df>UX</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical session on building high-quality form experiences in Flutter. Covered validation, accessibility, error handling, and UI patterns that reduce user friction and frustration.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-41" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-onitsha-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io-extended-onitsha.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>July 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended Onitsha 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "Flutter for Web Developers", comparing developer concepts across both categories. Drew parallels between the DOM and Flutter widget trees so web developers could reuse familiar mental models.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1-i7U0ZVCyHbkqzsKR8_v4en9YlwX6_mYYP9pFXFCrw8/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/mpae52/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/obumnwabude/status/1682696894093443077" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Thread</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Web Development</span><span class="community-tag-chip" data-v-9bd856df>Bridge</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A bridge-building talk for web developers transitioning to Flutter. Drew parallels between web and mobile development paradigms, helping web developers apply familiar concepts to cross-platform mobile building.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Web development paradigms vs. mobile app architecture</span><span class="bento-curriculum-pill" data-v-9bd856df>DOM-like widget trees and reactive rendering</span><span class="bento-curriculum-pill" data-v-9bd856df>State management patterns across platforms</span><span class="bento-curriculum-pill" data-v-9bd856df>Responsive design in Flutter vs. CSS media queries</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter concepts like widgets and composition are familiar to web developers with components.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Cross-platform thinking accelerates learning and career growth.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Web Development</span><span class="community-tag-chip" data-v-9bd856df>Bridge</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A bridge-building talk for web developers transitioning to Flutter. Drew parallels between web and mobile development paradigms, helping web developers apply familiar concepts to cross-platform mobile building.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-42" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-abakaliki-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io-extended-abakaliki.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>July 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended Abakaliki 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "Admob in Flutter" and carried out the Flutter AdMob Codelab in front of the audience. Covered integration, placement strategies, and revenue considerations.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1tqMQHf0KGODvxEjrrECZSh-4hLXdF3yLFwDF7QDB_LU/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/myc9en/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/GDGAbakaliki/status/1675195522703826944" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Pictures</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon-external action-icon action-external-icon" data-v-9bd856df data-v-95c85263><line x1="7" y1="17" x2="17" y2="7" data-v-95c85263></line><polyline points="7 7 17 7 17 17" data-v-95c85263></polyline></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>AdMob</span><span class="community-tag-chip" data-v-9bd856df>Monetization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on session on monetizing Flutter apps with Google AdMob. Covered integration, best practices for ad placement, revenue optimization, and user experience considerations.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Google AdMob setup and SDK integration in Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>Ad unit types and placement strategies</span><span class="bento-curriculum-pill" data-v-9bd856df>Measuring ad performance and revenue</span><span class="bento-curriculum-pill" data-v-9bd856df>Balancing monetization with user experience</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Strategic ad placement balances revenue with user experience.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>AdMob analytics provide insights for optimizing ad performance.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>AdMob</span><span class="community-tag-chip" data-v-9bd856df>Monetization</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on session on monetizing Flutter apps with Google AdMob. Covered integration, best practices for ad placement, revenue optimization, and user experience considerations.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-43" class="timeline-item" data-v-d0042546><div id="content-google-i-o-extended-ae-funai-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io-extended-aefunai.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>June 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O Extended AE-FUNAI 2023</h3><p class="project-description" data-v-9bd856df>Introduced cloud computing fundamentals using Google Cloud, with hands-on Cloud Skills Boost essentials for the room to work through in real time.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1bl_4_qJ5P5a-8_s__suAx5tEIDMD9BY6lUs9mtqSIhM/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://twitter.com/amdanielbryte/status/1672960754406903809" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Thread</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Cloud Essentials</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An introductory session on cloud computing fundamentals using Google Cloud. Covered core services, deployment models, and guided students through Cloud Skills Boost essentials to start their cloud journey.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Cloud computing concepts and deployment models</span><span class="bento-curriculum-pill" data-v-9bd856df>Google Cloud services overview</span><span class="bento-curriculum-pill" data-v-9bd856df>Compute, storage, and networking basics</span><span class="bento-curriculum-pill" data-v-9bd856df>Getting started with Cloud Skills Boost learning path</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Cloud literacy is essential for modern software development.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Google Cloud Skills Boost provides structured, hands-on learning paths.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Google Cloud</span><span class="community-tag-chip" data-v-9bd856df>Cloud Essentials</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An introductory session on cloud computing fundamentals using Google Cloud. Covered core services, deployment models, and guided students through Cloud Skills Boost essentials to start their cloud journey.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-44" class="timeline-item" data-v-d0042546><div id="content-flutter-forward-enugu-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-flutter-forward-enugu.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>April 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Flutter Forward Enugu 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "How to animate in Flutter" and assisted in checking in participants during the event. Covered implicit and explicit animations, controllers, and composition patterns for polished motion.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1-bGtbikYCRMC6x4wv790mB3p1dUXh1DYQFEkj0kDA3s/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/mmdbgt/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://www.youtube.com/watch?v=vW4bjrtZbS8&list=PL6XlbQ29dTFNKszXJ6-afaQEpl7iULE8E&t=2049s" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Flutter Forward</span><span class="community-tag-chip" data-v-9bd856df>Animation</span><span class="community-tag-chip" data-v-9bd856df>UI Polish</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comprehensive talk on animation techniques in Flutter. Covered implicit animations, explicit animations, animation controllers, and advanced composition patterns for creating polished, responsive UIs.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Implicit vs. explicit animations in Flutter</span><span class="bento-curriculum-pill" data-v-9bd856df>AnimationController and Tween fundamentals</span><span class="bento-curriculum-pill" data-v-9bd856df>Custom painting and animation composition</span><span class="bento-curriculum-pill" data-v-9bd856df>Performance considerations for smooth 60fps animations</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Animations transform apps from static to alive, improving perceived performance.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Proper animation structure prevents jank and keeps frame rates smooth.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Flutter Forward</span><span class="community-tag-chip" data-v-9bd856df>Animation</span><span class="community-tag-chip" data-v-9bd856df>UI Polish</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comprehensive talk on animation techniques in Flutter. Covered implicit animations, explicit animations, animation controllers, and advanced composition patterns for creating polished, responsive UIs.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-45" class="timeline-item" data-v-d0042546><div id="content-flutter-forward-abakaliki-2023" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-flutter-forward-abakaliki.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2023</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Flutter Forward Abakaliki 2023</h3><p class="project-description" data-v-9bd856df>Spoke on "Securing Flutter Apps" during Flutter Forward Extended. Covered secure storage, encrypted API communication, and hardening common mobile attack vectors.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://gdg.community.dev/e/mz2m5j/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/obumnwabude/status/1632365534191710208" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Thread</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a>
122<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Flutter Forward</span><span class="community-tag-chip" data-v-9bd856df>Security</span><span class="community-tag-chip" data-v-9bd856df>Best Practices</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A security-focused talk on protecting Flutter applications from common vulnerabilities. Covered secure storage, API communication, dependency management, and platform-specific security concerns.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>HTTPS, certificates, and secure network communication</span><span class="bento-curriculum-pill" data-v-9bd856df>Secure local storage and sensitive data protection</span><span class="bento-curriculum-pill" data-v-9bd856df>Code obfuscation and reverse engineering prevention</span><span class="bento-curriculum-pill" data-v-9bd856df>Permission models and native security APIs</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Security must be designed in from the start, not bolted on later.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter developers must understand both Dart and native platform security.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>Flutter Forward</span><span class="community-tag-chip" data-v-9bd856df>Security</span><span class="community-tag-chip" data-v-9bd856df>Best Practices</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A security-focused talk on protecting Flutter applications from common vulnerabilities. Covered secure storage, API communication, dependency management, and platform-specific security concerns.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-46" class="timeline-item" data-v-d0042546><div id="content-devfest-yaounde-2022" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-devfest-yaounde.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
122Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>DevFest Yaounde 2022</h3><p class="project-description" data-v-9bd856df>Facilitated the Flutter track at DevFest Yaounde, guiding developers through hands-on Cloud Skills Boost quests and shipping small apps end to end.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://gdg.community.dev/e/mz4ac2/" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/obumnwabude/status/1588822831223435264" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Thread</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Mentorship</span><span class="community-tag-chip" data-v-9bd856df>Facilitation</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>Served as the primary Flutter track facilitator at DevFest Yaounde 2022. Guided developers through hands-on Cloud Skills Boost quests, answering questions and providing mentorship.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><span class="bento-meta-pill" data-v-9bd856df>DevFest</span></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter quest structure and learning paths</span><span class="bento-curriculum-pill" data-v-9bd856df>Building first Flutter apps step-by-step</span><span class="bento-curriculum-pill" data-v-9bd856df>Cloud Skills Boost platform features</span><span class="bento-curriculum-pill" data-v-9bd856df>Mentoring and hands-on problem solving</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Structured learning through quests makes skill acquisition tangible and motivating.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Mentors amplify learning by answering questions and clarifying concepts.</span></li>
122<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>DevFest</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Mentorship</span><span class="community-tag-chip" data-v-9bd856df>Facilitation</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>Served as the primary Flutter track facilitator at DevFest Yaounde 2022. Guided developers through hands-on Cloud Skills Boost quests, answering questions and providing mentorship.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-47" class="timeline-item" data-v-d0042546><div id="content-why-you-should-use-flutter" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/gdsc-why-flutter.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>June 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Why you should use Flutter</h3><p class="project-description" data-v-9bd856df>Explained the detailed benefits of using Flutter for our projects. Covered code reuse across iOS and Android, hot reload developer experience, and what the pub.dev ecosystem unlocks.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1EuXoQC0zO_tPq8deT6plxuwbzK988-789FxUsdTfJfM/edit?usp=sharing&resourcekey=0-V0dhDAuwoCJimDdxeyBItA" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://youtu.be/yiNGvba7bhs" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
122Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Cross-Platform</span><span class="community-tag-chip" data-v-9bd856df>Benefits</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A persuasive talk on the strategic advantages of choosing Flutter for cross-platform mobile development. Covered code reuse, time-to-market, developer experience, and community ecosystem.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Cross-platform development economics and time-to-market</span><span class="bento-curriculum-pill" data-v-9bd856df>Hot reload and developer experience advantages</span><span class="bento-curriculum-pill" data-v-9bd856df>Flutter ecosystem and package availability</span><span class="bento-curriculum-pill" data-v-9bd856df>Performance characteristics and native integration</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter enables teams to ship to multiple platforms with one codebase.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Strong developer experience and tooling make Flutter productive and enjoyable.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Cross-Platform</span><span class="community-tag-chip" data-v-9bd856df>Benefits</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A persuasive talk on the strategic advantages of choosing Flutter for cross-platform mobile development. Covered code reuse, time-to-market, developer experience, and community ecosystem.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-48" class="timeline-item" data-v-d0042546><div id="content-flutterfest-enugu-2022" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-flutterfest-enugu.jpg" alt="Speaker Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDG</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>FlutterFest Enugu 2022</h3><p class="project-description" data-v-9bd856df>Spoke on "How to Implement any Screen/UI in Flutter". Walked through breaking a mockup down top-to-bottom into layout primitives, then composing widgets to match.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1OtTeu7MgmGry4SdArVGNX6DHPZKggC7OZMm6oLBkFFo/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://gdg.community.dev/e/mbyat2/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span>
122<svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://facebook.com/story.php?story_fbid=pfbid02E9mkdSk9rvEkaeBqWQNysMk3J9eFA5bnWf1HAuLtbaZa8VMpC3fXzkgaZLRksfVxl&id=101671715841906" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Post</span><svg viewbox="0 0 512 512" width="32" height="32" fill="currentColor" size="15" class="action-icon" data-v-9bd856df><path d="M512,256C512,114.6,397.4,0,256,0S0,114.6,0,256c0,127.8,93.6,233.7,216,252.9V330.1h-64.9V256 123 H216v-56.4c0-64.1,38.2-99.6,96.6-99.6c28.1,0,57.4,5,57.4,5v63h-32.3c-31.8,0-41.7,19.8-41.7,40v48h71l-11.4,74.1h-59.6v178.8 124 C418.4,489.7,512,383.8,512,256z"></path><path fill-opacity="0" d="M355.6,330.1L367,256h-71v-48c0-20.2,10-40,41.7-40h32.3v-63c0,0-29.3-5-57.4-5 125 c-58.5,0-96.6,35.5-96.6,99.6V256h-64.9v74.1h64.9v178.8c13,2.1,26.4,3.1,40,3.1c13.6,0,26.9-1.1,40-3.1V330.1H355.6z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>FlutterFest</span><span class="community-tag-chip" data-v-9bd856df>UI Implementation</span><span class="community-tag-chip" data-v-9bd856df>Composition</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical masterclass on approaching UI design and implementation challenges in Flutter. Covered problem decomposition, widget composition, and techniques for translating any design into code.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>UI problem decomposition and widget hierarchy planning</span><span class="bento-curriculum-pill" data-v-9bd856df>Widget composition patterns and reusable components</span><span class="bento-curriculum-pill" data-v-9bd856df>Custom widgets and painter-based graphics</span><span class="bento-curriculum-pill" data-v-9bd856df>Responsive design and constraint-based layouts</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Breaking complex UIs into reusable widget components is the core Flutter skill.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Proper constraint understanding solves most Flutter layout challenges.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDG</span><span class="community-tag-chip" data-v-9bd856df>FlutterFest</span><span class="community-tag-chip" data-v-9bd856df>UI Implementation</span><span class="community-tag-chip" data-v-9bd856df>Composition</span><!--]--></div>
125<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical masterclass on approaching UI design and implementation challenges in Flutter. Covered problem decomposition, widget composition, and techniques for translating any design into code.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-49" class="timeline-item" data-v-d0042546><div id="content-understanding-technical-writing" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/understanding-technical-writing.jpg" alt="Slide from the event slides" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>Genesys</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>April 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Understanding Technical Writing</h3><p class="project-description" data-v-9bd856df>Community workshop introducing technical writing fundamentals with freeCodeCamp contributor Ihechikara. Covered documentation structure, audience analysis, and how to turn a rough idea into a published post.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1QrBqRMKlQ1QZms-LJjsSXa3OsFYx_pAm/edit?usp=drivesdk&ouid=114519401531947192354&rtpof=true&
125sd=true" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://youtu.be/7T0-712hs6Y" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>Genesys</span><span class="community-tag-chip" data-v-9bd856df>Technical Writing</span><span class="community-tag-chip" data-v-9bd856df>Documentation</span><span class="community-tag-chip" data-v-9bd856df>Community</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A community workshop introducing technical writing fundamentals with freeCodeCamp contributor Ihechikara. Covered documentation styles, audience analysis, and practical tips for getting started as a technical writer.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Technical writing fundamentals and best practices</span><span class="bento-curriculum-pill" data-v-9bd856df>Writing for different audiences and platforms</span><span class="bento-curriculum-pill" data-v-9bd856df>Structuring documentation and tutorials</span><span class="bento-curriculum-pill" data-v-9bd856df>Getting published and building a portfolio</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Technical writing is a valuable skill that amplifies the impact of developers.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>freeCodeCamp and similar platforms offer opportunities to practice and publish.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>Genesys</span><span class="community-tag-chip" data-v-9bd856df>Technical Writing</span><span class="community-tag-chip" data-v-9bd856df>Documentation</span><span class="community-tag-chip" data-v-9bd856df>Community</span><!--]--></div>
125<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A community workshop introducing technical writing fundamentals with freeCodeCamp contributor Ihechikara. Covered documentation styles, audience analysis, and practical tips for getting started as a technical writer.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-50" class="timeline-item" data-v-d0042546><div id="content-careers-in-tech" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/careers-in-tech.jpg" alt="About the speaker" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>Genesys</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Careers In Tech</h3><p class="project-description" data-v-9bd856df>Career guidance session with Onyebuchi Nwafor from VeendHQ, exploring different tech career paths and practical steps for breaking into the industry.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1K7OY6OmYM_4bO6trZo2o9FhO-wZ2FYME/edit#slide=id.p1" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://youtu.be/0AgBinwAPic" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>Genesys</span><span class="community-tag-chip" data-v-9bd856df>Career</span><span class="community-tag-chip" data-v-9bd856df>Tech Industry</span><span class="community-tag-chip" data-v-9bd856df>Guidance</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A career guidance session with Onyebuchi Nwafor from VeendHQ exploring why technology careers offer fulfilling opportunities and how to navigate entry points into the industry.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Tech industry landscape and career paths</span><span class="bento-curriculum-pill" data-v-9bd856df>Technical vs. non-technical roles in tech</span><span class="bento-curriculum-pill" data-v-9bd856df>Building skills and creating your first projects</span><span class="bento-curriculum-pill" data-v-9bd856df>Job hunting and interview preparation</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Technology offers diverse career paths beyond software engineering.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Starting with passion projects builds both skills and confidence.</span></li>
125<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>Genesys</span><span class="community-tag-chip" data-v-9bd856df>Career</span><span class="community-tag-chip" data-v-9bd856df>Tech Industry</span><span class="community-tag-chip" data-v-9bd856df>Guidance</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A career guidance session with Onyebuchi Nwafor from VeendHQ exploring why technology careers offer fulfilling opportunities and how to navigate entry points into the industry.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-51" class="timeline-item" data-v-d0042546><div id="content-info-session" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/genesys-info-session.jpg" alt="Genesys community session" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>Genesys</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>March 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Info Session</h3><p class="project-description" data-v-9bd856df>Ezra at Genesys explained about community and about Genesys to the attendees. Covered community values, current projects, and concrete ways to get involved.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1qkTbbUpkb-9ASFZUqOFI9O7_PKQDOk5OrNhWyNxbphM/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://youtu.be/fIdwA4zt6Sc" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>Genesys</span><span class="community-tag-chip" data-v-9bd856df>Community</span><span class="community-tag-chip" data-v-9bd856df>Introduction</span><span class="community-tag-chip" data-v-9bd856df>Collaboration</span><!--]--></div>
125<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An introductory session about the Genesys community and organization. Covered community values, mission, and how to get involved with projects and initiatives.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Community mission and core values</span><span class="bento-curriculum-pill" data-v-9bd856df>Current projects and initiatives</span><span class="bento-curriculum-pill" data-v-9bd856df>Getting involved and contributing</span><span class="bento-curriculum-pill" data-v-9bd856df>Networking and collaboration opportunities</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Communities amplify individual efforts through collaboration and mutual support.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Genesys provides structure and support for community-driven projects.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>Genesys</span><span class="community-tag-chip" data-v-9bd856df>Community</span><span class="community-tag-chip" data-v-9bd856df>Introduction</span><span class="community-tag-chip" data-v-9bd856df>Collaboration</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An introductory session about the Genesys community and organization. Covered community values, mission, and how to get involved with projects and initiatives.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-52" class="timeline-item" data-v-d0042546><div id="content-your-github-profile-s-readme" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/github-profile-readme.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>MLSA</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>February 2022</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Your GitHub Profile's README</h3><p class="project-description" data-v-9bd856df>Explained why and how to beautify the README of your GitHub profile and repositories. Covered markdown formatting, profile READMEs, and using READMEs as a portfolio surface.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://1drv.ms/p/s!AiER2Bfzp1AIgSwDQhEv4QmzEHI6?e=GKxYJZ" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Powerpoint</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://youtu.be/yTbhmbQTn1Y" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df>
125<polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Portfolio</span><span class="community-tag-chip" data-v-9bd856df>README</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A creative session on crafting compelling GitHub profiles through well-designed README files. Covered markdown formatting, GitHub features, and portfolio presentation strategies.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Markdown syntax and GitHub-flavored features</span><span class="bento-curriculum-pill" data-v-9bd856df>README best practices for profiles and repositories</span><span class="bento-curriculum-pill" data-v-9bd856df>Portfolio presentation through project documentation</span><span class="bento-curriculum-pill" data-v-9bd856df>Tools and templates for beautiful READMEs</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>A well-crafted GitHub profile makes a strong first impression on employers and collaborators.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Clear README files are the gateway to project adoption and contributions.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Portfolio</span><span class="community-tag-chip" data-v-9bd856df>README</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A creative session on crafting compelling GitHub profiles through well-designed README files. Covered markdown formatting, GitHub features, and portfolio presentation strategies.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-53" class="timeline-item" data-v-d0042546><div id="content-introduction-to-flutter-todo-app" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/gdsc-todo.jpg" alt="Screenshot of Building Todo App" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>
125Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2021</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Introduction to Flutter (Todo App)</h3><p class="project-description" data-v-9bd856df>Taught Flutter on screen while building a simple Todo App. Live-coded through layout, state, and persistence so beginners could follow along.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://youtu.be/S8qAld1rg8c" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Introduction</span><span class="community-tag-chip" data-v-9bd856df>Live Coding</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A beginner-friendly live coding session introducing Flutter through building a functional Todo application. Covered stateful widgets, lists, and user interaction fundamentals.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter project structure and setup</span><span class="bento-curriculum-pill" data-v-9bd856df>Widgets and the widget tree</span><span class="bento-curriculum-pill" data-v-9bd856df>Stateful vs. stateless widgets</span><span class="bento-curriculum-pill" data-v-9bd856df>Building a complete simple app from scratch</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Flutter enables rapid app development with live reload and hot reload.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Simple projects are excellent vehicles for learning core framework concepts.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Introduction</span><span class="community-tag-chip" data-v-9bd856df>Live Coding</span><!--]--></div>
125<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A beginner-friendly live coding session introducing Flutter through building a functional Todo application. Covered stateful widgets, lists, and user interaction fundamentals.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-54" class="timeline-item" data-v-d0042546><div id="content-collaborating-with-github" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/collaborating-with-github.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>MLSA</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>August 2021</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Collaborating with GitHub</h3><p class="project-description" data-v-9bd856df>Practical intro to collaborative development with GitHub. Covered basic workflows, pull requests, and code review as a team habit.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://1drv.ms/p/s!AiER2Bfzp1AIgS0wu4xK-p4keIx-?e=mHqzFk" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Powerpoint</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://youtu.be/-yC5CQsYP0k" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Collaboration</span><span class="community-tag-chip" data-v-9bd856df>Version Control</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical guide to collaborative development with GitHub. Covered version control workflows, pull requests, code review, and issue tracking for team projects.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>GitHub forks and cloning workflows</span><span class="bento-curriculum-pill" data-v-9bd856df>Creating and managing pull requests</span><span class="bento-curriculum-pill" data-v-9bd856df>Code review and discussion in GitHub</span><span class="bento-curriculum-pill" data-v-9bd856df>Issue tracking and project management</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>GitHub pull requests enable asynchronous collaboration and knowledge sharing.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Clear communication in issues and PRs prevents misunderstandings and rework.</span></li>
125<!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>MLSA</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Collaboration</span><span class="community-tag-chip" data-v-9bd856df>Version Control</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A practical guide to collaborative development with GitHub. Covered version control workflows, pull requests, code review, and issue tracking for team projects.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-55" class="timeline-item" data-v-d0042546><div id="content-flutter-study-jam" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-kabale21.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>August 2021</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Flutter Study Jam</h3><p class="project-description" data-v-9bd856df>Taught Flutter through the "Names Generator" codelab to GDSC Kabale Students. Live-coded the app end to end and answered questions in real time.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://twitter.com/obumnwabude/status/1426742707272228864" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Tweet</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
125Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Study Jam</span><span class="community-tag-chip" data-v-9bd856df>Codelab</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on Flutter Study Jam session with GDSC Kabale members. Guided students through the Names Generator codelab, covering basic stateless widgets and user interaction.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Flutter project setup and hello world</span><span class="bento-curriculum-pill" data-v-9bd856df>Stateless widgets and composition</span><span class="bento-curriculum-pill" data-v-9bd856df>Random name generation logic</span><span class="bento-curriculum-pill" data-v-9bd856df>Building a simple interactive app</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Codelabs provide structured, beginner-friendly paths into Flutter.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Study jams create community and shared learning experiences.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Flutter</span><span class="community-tag-chip" data-v-9bd856df>Study Jam</span><span class="community-tag-chip" data-v-9bd856df>Codelab</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A hands-on Flutter Study Jam session with GDSC Kabale members. Guided students through the Names Generator codelab, covering basic stateless widgets and user interaction.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-56" class="timeline-item" data-v-d0042546><div id="content-google-i-o-2021" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/obum-io21.jpg" alt="Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Speaker</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2021</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Google I/O 2021</h3><p class="project-description" data-v-9bd856df>Spoke on "You should be in a community" during the GDSC Meetups for Google I/O. Framed why community compounds a developer's career and how to find or start one.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://io.google/2021" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span>
125<svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://twitter.com/obumnwabude/status/1394577906932793345" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Tweet</span><svg width="32" height="32" viewbox="0 0 256 256" size="15" class="action-icon" data-v-9bd856df><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Community</span><span class="community-tag-chip" data-v-9bd856df>Keynote</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A keynote talk at Google I/O 2021 GDSC Meetups emphasizing the importance of community in a developer's journey. Shared personal experiences and practical advice on joining and contributing to tech communities.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Why communities matter for learning and growth</span><span class="bento-curriculum-pill" data-v-9bd856df>Building strong communities and culture</span><span class="bento-curriculum-pill" data-v-9bd856df>Overcoming imposter syndrome through community support</span><span class="bento-curriculum-pill" data-v-9bd856df>Contributing to and leading communities</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>No developer grows alone. Communities accelerate learning and provide support.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Strong communities create opportunities and amplify individual impact.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>
125Speaker</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Google I/O</span><span class="community-tag-chip" data-v-9bd856df>Community</span><span class="community-tag-chip" data-v-9bd856df>Keynote</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A keynote talk at Google I/O 2021 GDSC Meetups emphasizing the importance of community in a developer's journey. Shared personal experiences and practical advice on joining and contributing to tech communities.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-57" class="timeline-item" data-v-d0042546><div id="content-2021-des-dev-bootcamp" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/2021-desdev-bootcamp.jpg" alt="Picture of Community Members" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>May 2021</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>2021 DES & DEV Bootcamp</h3><p class="project-description" data-v-9bd856df>6-week bootcamp combining intensive technical learning with community-focused initiatives across UI/UX Design and Web Development tracks.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://medium.com/dscaefunai/8853deda34ef" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Story</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Bootcamp</span><span class="community-tag-chip" data-v-9bd856df>Design</span><span class="community-tag-chip" data-v-9bd856df>Web Development</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comprehensive 6-week bootcamp combining 4 weeks of intensive technical learning with 2 weeks of community-focused initiatives. Participants chose between UI/UX Design or Web Development tracks with mentorship and real-world projects.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Track-specific technical skills and fundamentals</span><span class="bento-curriculum-pill" data-v-9bd856df>Project-based learning and portfolio building</span><span class="bento-curriculum-pill" data-v-9bd856df>Mentorship and professional development</span><span class="bento-curriculum-pill" data-v-9bd856df>Community building and collaborative projects</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Bootcamps accelerate learning through structured curricula and peer support.</sp
125an></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Community engagement amplifies individual growth and creates lasting networks.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Bootcamp</span><span class="community-tag-chip" data-v-9bd856df>Design</span><span class="community-tag-chip" data-v-9bd856df>Web Development</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A comprehensive 6-week bootcamp combining 4 weeks of intensive technical learning with 2 weeks of community-focused initiatives. Participants chose between UI/UX Design or Web Development tracks with mentorship and real-world projects.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-58" class="timeline-item" data-v-d0042546><div id="content-2021-solution-challenge" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/2021-solution-challenge.jpg" alt="Picture of Community Members" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>February 2021</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>2021 Solution Challenge</h3><p class="project-description" data-v-9bd856df>Meetups and workshops we held to sensitise the community for the GDSC Solution Challenge. Walked through prior winning entries and what judges tend to reward.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://medium.com/dscaefunai/9bd29c242ed7" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Story</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg></a><a href="https://dsc.community.dev/e/m8tk74/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span><svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Solution Challenge</span><span class="community-tag-chip" data-v-9bd856df>Social Impact</span><span class="community-tag-chip" data-v-9bd856df>Workshop</span><!--]--></div>
125<div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A series of workshops and meetups organized to support GDSC members preparing for Google's Solution Challenge. Covered ideation, prototyping, and project development for social impact solutions.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Problem identification and solution design</span><span class="bento-curriculum-pill" data-v-9bd856df>Prototyping and MVP development</span><span class="bento-curriculum-pill" data-v-9bd856df>Social impact measurement</span><span class="bento-curriculum-pill" data-v-9bd856df>Pitching and presentation skills</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>The Solution Challenge inspires student developers to tackle real-world problems.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Community support and mentorship are critical for challenge success.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Solution Challenge</span><span class="community-tag-chip" data-v-9bd856df>Social Impact</span><span class="community-tag-chip" data-v-9bd856df>Workshop</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A series of workshops and meetups organized to support GDSC members preparing for Google's Solution Challenge. Covered ideation, prototyping, and project development for social impact solutions.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-59" class="timeline-item" data-v-d0042546><div id="content-git-and-github" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/git-and-github-event.jpg" alt="Section of Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>November 2020</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Git and GitHub</h3><p class="project-description" data-v-9bd856df>Multi-GDSC collaborative event on Git and GitHub with speaker Auwal MS. Covered version control fundamentals and the mental model behind branches and commits.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1__cTDHCp2r6rhQxDGlEWkJSZF0kOQCcDNaNG7qGSca0/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://medium.com/dscaefunai/c98ae719bedb" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Story</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg></a><a href="https://youtu.be/uf12u9keG10" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Recording</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df>
125<polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Git</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Version Control</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A multi-GDSC collaborative event introducing version control fundamentals using Git and GitHub. Featured speaker Auwal MS shared practical workflows for individual and team projects.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Git fundamentals and version control concepts</span><span class="bento-curriculum-pill" data-v-9bd856df>GitHub workflow for individuals and teams</span><span class="bento-curriculum-pill" data-v-9bd856df>Branching and merge strategies</span><span class="bento-curriculum-pill" data-v-9bd856df>Collaborative development best practices</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Version control is essential infrastructure for any software project.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Multi-GDSC collaborations strengthen community networks and knowledge sharing.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Git</span><span class="community-tag-chip" data-v-9bd856df>GitHub</span><span class="community-tag-chip" data-v-9bd856df>Version Control</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A multi-GDSC collaborative event introducing version control fundamentals using Git and GitHub. Featured speaker Auwal MS shared practical workflows for individual and team projects.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-60" class="timeline-item" data-v-d0042546><div id="content-learning-opportunities" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/learning-opportunities.jpg" alt="Section of Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>October 2020</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Learning Opportunities</h3><p class="project-description" data-v-9bd856df>Speaker session by Emeka Odibeli, aimed at inspiring community members to keep learning. Covered practical study habits and where to find good free resources.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://medium.com/dscaefunai/3430cfff6b2f" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Story</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg></a><a href="https://dsc.community.dev/e/mbzuvd/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span>
125<svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Learning</span><span class="community-tag-chip" data-v-9bd856df>Inspiration</span><span class="community-tag-chip" data-v-9bd856df>Growth</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An inspirational speaker session with Emeka Odibeli addressing students on the importance of continuous learning and practical strategies for accessing learning resources.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Talk</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Mindset and growth mentality in learning</span><span class="bento-curriculum-pill" data-v-9bd856df>Learning resources and communities</span><span class="bento-curriculum-pill" data-v-9bd856df>Building learning habits and consistency</span><span class="bento-curriculum-pill" data-v-9bd856df>Overcoming obstacles to learning</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Continuous learning is a discipline, not just inspiration.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Learning communities provide resources, accountability, and motivation.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Learning</span><span class="community-tag-chip" data-v-9bd856df>Inspiration</span><span class="community-tag-chip" data-v-9bd856df>Growth</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>An inspirational speaker session with Emeka Odibeli addressing students on the importance of continuous learning and practical strategies for accessing learning resources.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-61" class="timeline-item" data-v-d0042546><div id="content-firebase-series" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/firebase-series.jpg" alt="Section of Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2020</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Firebase Series</h3><p class="project-description" data-v-9bd856df>6-week virtual workshop series where we taught Firebase. Covered backend services, real-time databases, and hands-on codelabs end to end.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://medium.com/dscaefunai/617772e53a8c" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Story</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg></a>
125<!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Workshop Series</span><span class="community-tag-chip" data-v-9bd856df>Backend</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A 6-week virtual workshop series on Firebase covering backend services, real-time databases, and deployment. Participants completed hands-on codelabs and built projects.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Workshop</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>Firebase authentication and user management</span><span class="bento-curriculum-pill" data-v-9bd856df>Realtime database design and operations</span><span class="bento-curriculum-pill" data-v-9bd856df>Cloud Functions for serverless logic</span><span class="bento-curriculum-pill" data-v-9bd856df>Deployment and hosting on Firebase</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Firebase enables rapid backend development without managing infrastructure.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Real-time databases simplify building collaborative and reactive apps.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Firebase</span><span class="community-tag-chip" data-v-9bd856df>Workshop Series</span><span class="community-tag-chip" data-v-9bd856df>Backend</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>A 6-week virtual workshop series on Firebase covering backend services, real-time databases, and deployment. Participants completed hands-on codelabs and built projects.</p></div><!----><!----><!----></div><!----><!----></div></div><div id="timeline-item-62" class="timeline-item" data-v-d0042546><div id="content-onboarding-gdsc" class="project-wrapper" style="--overlay-push:0px;" data-v-d0042546 data-v-9bd856df><div class="glass-card glass-surface glass-frost glass-hover-lift has-spotlight project-card" style="" data-v-9bd856df data-v-6d92390e><span class="glass-sheen" aria-hidden="true" data-v-6d92390e></span><span class="glass-spotlight-glow" aria-hidden="true" data-v-6d92390e></span><div class="glass-content" data-v-6d92390e><!--[--><div class="project-inner" data-v-9bd856df><div class="project-image-container clickable-image" data-v-9bd856df><img src="/assets/gdsc-info-session.jpg" alt="Section of Event Flyer" loading="lazy" class="project-image" data-v-9bd856df></div><div class="project-details" data-v-9bd856df><div class="project-header-row" data-v-9bd856df><div class="project-tags" data-v-9bd856df><!--[--><span class="project-tag" data-v-9bd856df>Organizer</span><span class="project-tag" data-v-9bd856df>GDSC</span><!--]--></div></div><p class="project-date" data-v-9bd856df><span data-v-9bd856df>September 2020</span><!----><!----></p><h3 class="project-title clickable-title" data-v-9bd856df>Onboarding GDSC</h3><p class="project-description" data-v-9bd856df>The inaugural Google Developer Student Club info session at AE-FUNAI introducing the club mission and learning resources.</p><div class="project-actions" data-v-9bd856df><div class="project-action-cluster" data-v-9bd856df><!--[--><a href="https://docs.google.com/presentation/d/1WvraEIbd4_8b97X2wKAIrzADyxDQSttlinBITdG_3pg/edit?usp=sharing" target="_blank" rel="noopener noreferrer" filled="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Slides</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><rect x="2" y="3" width="20" height="14" rx="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line><path d="M7 8h10"></path><path d="M7 12h5"></path></svg></a><a href="https://dsc.community.dev/e/mm72hn/" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>About</span>
125<svg width="15" height="15" viewbox="0 -960 960 960" fill="currentColor" class="action-icon" data-v-9bd856df><path d="M480-200v-360H120v-80h440v440h-80Zm200-200v-360H320v-80h440v440h-80Z"></path></svg></a><a href="https://medium.com/dscaefunai/fd34bbf8520e" target="_blank" rel="noopener noreferrer" outlined="true" class="project-action-btn" data-v-9bd856df><span data-v-9bd856df>Story</span><svg width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="action-icon" data-v-9bd856df><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg></a><!--]--></div><div class="more-btn-hint-wrap" data-v-9bd856df><button type="button" class="project-more-btn" aria-expanded="false" title="More info" aria-label="More info" data-v-9bd856df><svg height="24" viewbox="0 -960 960 960" width="24" fill="currentColor" size="20" data-v-9bd856df><path d="M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z"></path></svg></button><!----><!----></div></div></div></div><!--]--></div></div><div style="display:none;" class="community-bento-panel glass-surface glass-frost" data-v-9bd856df><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Onboarding</span><span class="community-tag-chip" data-v-9bd856df>Student Club</span><span class="community-tag-chip" data-v-9bd856df>Community</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>The inaugural Google Developer Student Club info session at AE-FUNAI. Introduced the club mission, learning paths, and community values to establish the foundation for ongoing student developer community.</p></div><div class="bento-meta-row" data-v-9bd856df><span class="bento-meta-pill" data-v-9bd856df>Keynote</span><!----></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Topics & Curriculum</h4><div class="bento-curriculum-grid" data-v-9bd856df><!--[--><span class="bento-curriculum-pill" data-v-9bd856df>GDSC mission and global community</span><span class="bento-curriculum-pill" data-v-9bd856df>Learning paths and available resources</span><span class="bento-curriculum-pill" data-v-9bd856df>Events and activities planned for the year</span><span class="bento-curriculum-pill" data-v-9bd856df>Getting involved and leadership roles</span><!--]--></div></div><div class="bento-section" data-v-9bd856df><h4 class="bento-section-title" data-v-9bd856df>Key Takeaways</h4><ul class="bento-takeaways-list" data-v-9bd856df><!--[--><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Student clubs provide structured support for technical skill development.</span></li><li class="bento-takeaway-item" data-v-9bd856df><span class="takeaway-bullet" aria-hidden="true" data-v-9bd856df></span><span data-v-9bd856df>Communities thrive on participation from all members with diverse interests.</span></li><!--]--></ul></div></div><div style="display:none;" class="project-bento-panel community-bento-panel glass-surface glass-frost" data-v-9bd856df><!----><div class="community-expanded-tags" data-v-9bd856df><!--[--><span class="community-tag-chip" data-v-9bd856df>Organizer</span><span class="community-tag-chip" data-v-9bd856df>GDSC</span><span class="community-tag-chip" data-v-9bd856df>Onboarding</span><span class="community-tag-chip" data-v-9bd856df>Student Club</span><span class="community-tag-chip" data-v-9bd856df>Community</span><!--]--></div><div class="bento-prose-block" data-v-9bd856df><p class="bento-prose" data-v-9bd856df>The inaugural Google Developer Student Club info session at AE-FUNAI. Introduced the club mission, learning paths, and community values to establish the foundation for ongoing student developer community.</p></div><!----><!----><!----></div><!----><!----></div></div></div></div><aside class="timeline-scroller" aria-label="Timeline Navigation" data-v-d0042546 data-v-79c69ef2><div class="scrubber-track" data-v-79c69ef2><div class="rail-line" data-v-79c69ef2></div><!--[--><div class="year-tick" style="top:0%;" title="Jump to 2026" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2026</span></div><div class="year-tick" style="top:9.67741935483871%;" title="Jump to 2025" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2025</span></div><div class="year-tick" style="top:29.03225806451613%;" title="Jump to 2024" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2024</span></div><div class="year-tick" style="top:54.83870967741935%;" title="Jump to 2023" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2023</span></div><div class="year-tick" style="top:74.19354838709677%;" title="Jump to 2022" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2022</span></div><div class="year-tick" style="top:85.48387096774194%;" title="Jump to 2021" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2021</span></div><div class="year-tick" style="top:95.16129032258065%;" title="Jump to 2020" data-v-79c69ef2><span class="tick-mark" data-v-79c69ef2></span><span class="tick-label" data-v-79c69ef2>2020</span></div><!--]--><div class="scrubber-thumb" style="top:0%;" data-v-79c69ef2><!----><div class="thumb-handle" data-v-79c69ef2><span class="handle-grip" data-v-79c69ef2></span></div></div></div></aside><!--]--></main><button class="scroll-to-top-btn" aria-label="Scroll to top of page" title="Scroll to top" data-v-d52a9546 data-v-638c91af><div class="btn-glow-ring" data-v-638c91af></div><svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round" class="scroll-icon" data-v-638c91af><polyline points="18 15 12 9 6 15" data-v-638c91af></polyline></svg></button><footer data-v-d52a9546 data-v-ff89edaa><div top data-v-ff89edaa><div class="footer-left" data-v-ff89edaa><p data-v-ff89edaa><a href="/" class="footer-logo" obum data-v-ff89edaa><span class="logo-text" data-v-ff89edaa>Obum</span><span class="logo-dot" data-v-ff89edaa></span></a></p><nav data-v-ff89edaa><ul data-v-ff89edaa><!--[--><li data-v-ff89edaa><a href="/" class="footer-nav-link" data-v-ff89edaa><svg width="13" height="13" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="footer-nav-icon" data-v-ff89edaa><path d="m3 9 9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg><span data-v-ff89edaa>Home</span></a></li><li data-v-ff89edaa><a href="/projects" class="footer-nav-link" data-v-ff89edaa><svg width="13" height="13" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="footer-nav-icon" data-v-ff89edaa><path d="M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z"></path><path d="m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6.05 11a22.35 22.35 0 0 1-3.95 2z"></path><path d="M9 12H4s.55-3.03 2-4.5c1.62-1.63 5-2.5 5-2.5"></path><path d="M12 15v5s3.03-.55 4.5-2c1.63-1.62 2.5-5 2.5-5"></path></svg><span data-v-ff89edaa>Projects</span></a></li><li data-v-ff89edaa><a href="/articles" class="footer-nav-link" data-v-ff89edaa><svg width="13" height="13" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="footer-nav-icon" data-v-ff89edaa><path d="M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H20v20H6.5a2.5 2.5 0 0 1-2.5-2.5Z"></path><path d="M6 6h10"></path><path d="M6 10h10"></path><path d="M6 14h6"></path></svg><span data-v-ff89edaa>Articles</span></a></li><li data-v-ff89edaa><a aria-current="page" href="/community" class="router-link-active router-link-exact-active footer-nav-link" data-v-ff89edaa><svg width="13" height="13" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="footer-nav-icon" data-v-ff89edaa><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M22 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg><span data-v-ff89edaa>Community</span></a></li>
125<!--]--></ul></nav></div><div class="contact-me-wrap" data-v-ff89edaa data-v-e509986f><button type="button" aria-haspopup="true" aria-controls="contact-menu-f5rutf" style="border-color:var(--primary);color:var(--primary);" outlined="true" class="contact-btn" data-v-e509986f><!----><span data-v-e509986f>Contact Me</span></button><!----></div></div><div bottom data-v-ff89edaa><div icons class="" data-v-ff89edaa data-v-ea9ba494><!--[--><a href="https://linkedin.com/in/obumnwabude" target="_blank" rel="noopener noreferrer" title="LinkedIn" data-v-ea9ba494><svg viewbox="0 0 512 512" width="32" height="32" fill="currentColor" data-v-ea9ba494><g><path d="M256,0c71.1,0,131.6,24.9,181.3,74.7S512,184.9,512,256c0,70.4-24.9,130.7-74.7,180.8S327.1,512,256,512 126 c-70.4,0-130.7-25.1-180.8-75.2S0,326.4,0,256c0-71.1,25.1-131.6,75.2-181.3S185.6,0,256,0 M193.1,361.6V195.2h-51.2v166.4H193.1 127 M167.5,173.9c18.5,0,27.7-8.5,27.7-25.6s-9.2-25.6-27.7-25.6c-7.8,0-14.4,2.5-19.7,7.5c-5.3,5-8,11-8,18.1 128 C139.7,165.3,149,173.9,167.5,173.9 M382.9,361.6v-98.1c0-23.5-5.5-41.4-16.5-53.9c-11-12.4-25.4-18.7-43.2-18.7 129 c-23.5,0-40.5,8.9-51.2,26.7h-1.1l-3.2-22.4h-44.8c0.7,10,1.1,27.7,1.1,53.3v113.1h52.3v-96c0-6.4,0.7-10.7,2.1-12.8 130 c4.3-13.5,13.2-20.3,26.7-20.3c17.1,0,25.6,12.1,25.6,36.3v92.8H382.9"></path></g></svg></a><a href="https://github.com/obumnwabude" target="_blank" rel="noopener noreferrer" title="Github" data-v-ea9ba494><svg width="32" height="32" viewbox="0, 0, 400,400" fill="currentColor" data-v-ea9ba494><path stroke="none" fill-rule="evenodd" d="M146.905 8.637 C -27.040 55.399,-53.547 304.256,107.076 382.570 C 145.210 401.163,153.333 397.846,153.333 363.681 L 153.333 344.575 134.167 345.824 C 109.587 347.426,95.422 340.028,84.387 319.823 C 79.935 311.670,71.876 300.896,66.479 295.880 C 54.889 285.109,54.444 283.333,63.333 283.333 C 67.234 283.333,70.000 285.556,70.000 288.690 C 70.000 291.998,71.847 293.338,74.830 292.193 C 78.059 290.954,79.046 291.941,77.807 295.170 C 76.514 298.539,78.330 300.015,83.810 300.051 C 89.581 300.089,90.447 300.875,87.073 303.012 C 81.551 306.509,85.528 314.484,91.627 312.143 C 94.572 311.013,95.347 312.659,94.106 317.407 C 92.525 323.452,93.394 324.041,101.061 322.117 C 107.797 320.426,109.405 321.005,108.017 324.622 C 105.116 332.183,113.822 335.067,118.839 328.205 C 122.859 322.708,123.333 322.654,123.333 327.696 C 123.333 331.207,125.983 333.333,130.357 333.333 C 135.230 333.333,136.793 331.803,135.461 328.333 C 134.406 325.583,134.995 323.333,136.771 323.333 C 138.547 323.333,140.000 325.583,140.000 328.333 C 140.000 331.083,142.250 333.333,145.000 333.333 C 147.750 333.333,150.000 330.588,150.000 327.232 C 150.000 323.876,153.472 314.272,157.716 305.889 L 165.431 290.649 145.602 286.441 C 86.844 273.971,55.010 205.872,84.454 155.631 C 92.111 142.565,93.452 137.234,91.696 126.840 C 89.477 113.709,94.819 86.667,99.631 86.667 C 105.649 86.667,125.723 94.901,137.201 102.077 C 147.383 108.443,151.241 109.179,160.512 106.520 C 174.862 102.404,225.138 102.404,239.488 106.520 C 248.759 109.179,252.617 108.443,262.799 102.077 C 274.277 94.901,294.351 86.667,300.369 86.667 C 305.181 86.667,310.523 113.709,308.304 126.840 C 306.548 137.234,307.889 142.565,315.546 155.631 C 344.777 205.509,315.495 270.311,256.905 285.404 L 234.194 291.255 240.418 301.461 C 245.465 309.737,246.644 318.392,246.654 347.227 C 246.669 390.043,247.677 393.333,260.781 393.333 C 292.592 393.333,357.991 339.836,379.092 296.552 C 456.168 138.448,315.033 -36.562,146.905 8.637 "></path></svg></a><a href="https://stackoverflow.com/users/13644299" target="_blank" rel="noopener noreferrer" title="Stackoverflow" data-v-ea9ba494><svg width="32" height="32" viewbox="0, 0, 400,400" data-v-ea9ba494><path stroke="none" fill="currentColor" fill-rule="evenodd" d="M184.500 0.209 C 176.499 0.981,171.892 1.545,166.833 2.372 C 79.391 16.661,11.220 87.547,0.507 175.323 C -0.333 182.206,-0.225 218.559,0.656 225.404 C 13.477 325.060,98.823 399.997,199.500 399.997 C 323.359 399.997,417.802 288.431,397.161 166.500 C 382.266 78.512,312.160 12.117,222.353 0.946 C 217.123 0.295,189.230 -0.248,184.500 0.209 M243.667 90.840 C 246.692 94.956,249.490 98.738,249.886 99.245 C 250.281 99.752,253.766 104.442,257.629 109.667 C 261.492 114.892,264.787 119.327,264.950 119.523 C 265.113 119.719,266.386 121.444,267.777 123.356 C 269.169 125.269,270.466 127.018,270.660 127.243 C 270.854 127.468,275.585 133.843,281.174 141.409 C 286.763 148.976,291.456 155.317,291.602 155.500 C 293.164 157.457,298.667 164.943,298.667 165.110 C 298.667 165.231,296.829 166.674,294.583 168.317 C 292.337 169.961,290.349 171.433,290.164 171.590 C 289.980 171.747,288.330 172.974,286.498 174.318 C 284.666 175.662,282.995 176.895,282.786 177.058 C 282.526 177.261,281.094 175.587,278.257 171.761 C 274.335 166.471,270.290 161.021,247.060 129.732 C 241.710 122.526,237.333 116.553,237.333 116.458 C 237.333 116.363,237.126 116.079,236.873 115.825 C 235.888 114.840,221.681 95.481,221.713 95.167 C 221.731 94.983,224.241 92.994,227.290 90.746 C 232.970 86.557,233.418 86.222,236.000 84.239 C 237.939 82.749,237.343 82.237,243.667 90.840 M200.580 116.479 C 201.251 117.027,205.499 120.556,206.500 121.397 C 206.867 121.706,208.250 122.853,209.575 123.946 C 210.899 125.
130040,212.196 126.137,212.458 126.384 C 212.719 126.631,213.435 127.234,214.050 127.723 C 215.733 129.063,239.400 148.689,240.167 149.380 C 240.533 149.711,247.208 155.274,255.000 161.743 C 262.792 168.212,269.467 173.757,269.833 174.065 C 270.200 174.373,272.345 176.154,274.601 178.022 C 278.694 181.413,278.701 181.421,278.076 182.126 C 277.732 182.515,276.267 184.258,274.821 186.000 C 273.375 187.742,271.932 189.467,271.614 189.833 C 271.295 190.200,269.816 191.968,268.326 193.762 L 265.616 197.025 264.391 195.943 C 263.718 195.349,262.942 194.678,262.667 194.452 C 261.400 193.411,249.422 183.452,248.989 183.079 C 248.720 182.848,246.100 180.672,243.167 178.246 C 236.214 172.493,236.323 172.585,235.680 171.980 C 235.375 171.694,234.819 171.244,234.444 170.980 C 234.069 170.716,233.028 169.873,232.131 169.106 C 231.234 168.339,229.416 166.816,228.092 165.722 C 226.768 164.627,225.470 163.530,225.209 163.283 C 224.948 163.035,224.231 162.432,223.617 161.942 C 223.003 161.452,220.175 159.125,217.333 156.770 C 214.492 154.416,211.807 152.192,211.367 151.828 C 210.927 151.464,210.317 150.933,210.013 150.646 C 209.709 150.360,209.153 149.910,208.778 149.646 C 208.403 149.383,207.362 148.539,206.465 147.772 C 205.567 147.005,201.008 143.204,196.333 139.326 C 191.658 135.449,187.621 132.071,187.362 131.821 C 186.891 131.367,187.273 130.801,190.725 126.833 C 191.044 126.467,192.175 125.117,193.238 123.833 C 194.300 122.550,195.422 121.200,195.730 120.833 C 196.038 120.467,197.063 119.229,198.007 118.083 C 199.938 115.740,199.789 115.834,200.580 116.479 M183.167 164.655 C 187.567 166.719,191.317 168.522,191.500 168.663 C 191.683 168.803,192.197 169.030,192.641 169.167 C 193.085 169.303,195.560 170.423,198.141 171.656 C 200.722 172.889,208.533 176.567,215.500 179.830 C 222.467 183.093,229.517 186.399,231.167 187.178 C 232.817 187.956,237.317 190.051,241.167 191.833 C 245.017 193.614,248.992 195.486,250.000 195.991 C 251.008 196.497,254.196 198.008,257.083 199.349 C 259.971 200.690,262.333 201.874,262.333 201.980 C 262.333 202.778,253.976 220.157,253.614 220.114 C 253.368 220.084,247.842 217.562,241.333 214.507 C 234.825 211.453,228.375 208.429,227.000 207.788 C 225.625 207.148,223.450 206.128,222.167 205.523 C 220.883 204.918,216.983 203.110,213.500 201.506 C 210.017 199.901,206.492 198.259,205.667 197.856 C 204.842 197.454,202.967 196.564,201.500 195.879 C 200.033 195.193,198.083 194.278,197.167 193.844 C 196.250 193.411,191.675 191.302,187.000 189.159 C 182.325 187.015,177.975 184.990,177.333 184.658 C 176.692 184.327,173.017 182.607,169.167 180.837 C 165.317 179.068,161.965 177.423,161.718 177.183 C 161.299 176.775,163.639 170.850,165.936 166.500 C 166.226 165.950,166.493 165.350,166.530 165.167 C 166.566 164.983,167.277 163.373,168.110 161.589 L 169.623 158.344 172.395 159.624 C 173.919 160.327,178.767 162.592,183.167 164.655 M189.833 212.651 C 197.900 214.339,215.212 217.958,228.305 220.693 C 241.398 223.428,252.162 225.717,252.224 225.780 C 252.594 226.149,248.139 245.667,247.686 245.667 C 247.412 245.667,243.659 244.926,239.344 244.021 C 235.030 243.115,223.850 240.781,214.500 238.832 C 205.150 236.884,193.300 234.403,188.167 233.319 C 183.033 232.235,171.933 229.907,163.500 228.146 C 155.067 226.385,148.102 224.880,148.024 224.802 C 147.872 224.650,151.597 206.644,152.024 205.469 C 152.273 204.781,152.431 204.805,163.722 207.176 C 170.016 208.499,181.767 210.962,189.833 212.651 M125.252 261.583 L 125.337 292.333 197.168 292.333 L 269.000 292.333 269.000 261.495 L 269.000 230.657 279.083 230.745 L 289.167 230.833 289.251 271.750 L 289.336 312.667 197.001 312.667 L 104.667 312.667 104.667 271.662 L 104.667 230.657 114.917 230.745 L 125.167 230.833 125.252 261.583 M248.000 261.500 L 248.000 271.667 196.833 271.667 L 145.667 271.667 145.667 261.500 L 145.667 251.333 196.833 251.333 L 248.000 251.333 248.000 261.500 "></path></svg></a><a href="https://x.com/obumnwabude" target="_blank" rel="noopener noreferrer" title="X (Twitter)" data-v-ea9ba494><svg width="32" height="32" viewbox="0 0 256 256" data-v-ea9ba494><g style="stroke:none;stroke-width:0;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:none;fill-rule:nonzero;opacity:1;" transform="translate(1.4065934065934016 1.4065934065934016) scale(2.81 2.81)"><polygon points="24.89,23.01 57.79,66.99 65.24,66.99 32.34,23.01 " style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) "></polygon><path d="M 45 0 L 45 0 C 20.147 0 0 20.147 0 45 v 0 c 0 24.853 20.147 45 45 45 h 0 c 24.853 0 45 -20.147 45 -45 v 0 C 90 20.147 69.853 0 45 0 z M 56.032 70.504 L 41.054 50.477 L 22.516 70.504 h -4.765 L 38.925 47.63 L 17.884 19.496 h 16.217 L 47.895 37.94 l 17.072 -18.444 h 4.765 L 50.024 40.788 l 22.225 29.716 H 56.032 z" style="stroke:none;stroke-width:1;stroke-dasharray:none;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:10;fill:currentColor;fill-rule:nonzero;opacity:1;" transform=" matrix(1 0 0 1 0 0) " stroke-linecap="round"></path></g></svg></a><a href="https://facebook.com/obumnwabude" target="_blank" rel="noopener noreferrer" title="Facebook" data-v-ea9ba494><svg viewbox="0 0 512 512" width="32" height="32" fill="currentColor" data-v-ea9ba494><path d="M512,256C512,114.6,397.4,0,256,0S0,114.6,0,256c0,127.8,93.6,233.7,216,252.9V330.1h-64.9V256 131 H216v-56.4c0-64.1,38.2-99.6,96.6-99.6c28.1,0,57.4,5,57.4,5v63h-32.3c-31.8,0-41.7,19.8-41.7,40v48h71l-11.4,74.1h-59.6v178.8 132 C418.4,489.7,512,383.8,512,256z"></path><path fill-opacity="0" d="M355.6,330.1L367,256h-71v-48c0-20.2,10-40,41.7-40h32.3v-63c0,0-29.3-5-57.4-5 133 c-58.5,0-96.6,35.5-96.6,99.6V256h-64.9v74.1h64.9v178.8c13,2.1,26.4,3.1,40,3.1c13.6,0,26.9-1.1,40-3.1V330.1H355.6z"></path></svg></a><a href="https://instagram.com/obumnwabude" target="_blank" rel="noopener noreferrer" title="Instagram" data-v-ea9ba494><svg width="32" height="32" viewbox="0, 0, 400,400" data-v-ea9ba494><path stroke="none" fill="currentColor" fill-rule="evenodd" d="M182.571 0.571 C 182.377 0.886,180.626 1.165,178.681 1.191 C 176.735 1.218,173.729 1.463,172.000 1.736 C 165.167 2.816,158.968 3.952,155.429 4.774 C 153.386 5.248,150.429 5.921,148.857 6.270 C 147.286 6.618,145.582 7.132,145.070 7.413 C 144.559 7.693,143.145 8.102,141.927 8.321 C 140.710 8.541,139.457 8.921,139.143 9.166 C 138.829 9.411,137.604 9.793,136.422 10.014 C 135.240 10.235,134.132 10.643,133.960 10.922 C 133.788 11.201,133.076 11.429,132.379 11.429 C 131.682 11.429,130.604 11.776,129.984 12.200 C 129.364 12.625,128.094 13.158,127.161 13.385 C 125.660 13.751,123.840 14.503,117.429 17.409 C 112.119 19.815,109.980 20.903,109.810 21.286 C 109.705 21.521,109.315 21.714,108.944 21.714 C 108.253 21.714,105.844 22.923,102.286 25.054 C 101.186 25.713,99.514 26.612,98.571 27.051 C 97.629 27.491,95.481 28.784,93.800 29.925 C 92.118 31.066,90.620 32.000,90.471 32.000 C 90.321 32.000,88.695 33.157,86.857 34.571 C 85.019 35.986,83.381 37.143,83.217 37.143 C 81.674 37.143,67.138 49.566,58.066 58.637 C 48.994 67.709,36.571 82.245,36.571 83.788 C 36.571 83.952,35.464 85.546,34.111 87.329 C 31.471 90.808,27.168 97.524,26.254 99.593 C 25.946 100.288,24.935 102.143,24.006 103.714 C 22.522 106.226,19.178 112.896,16.844 118.000 C 14.157 123.878,13.180 126.226,12.811 127.695 C 12.582 128.606,12.051 130.012,11.630 130.819 C 11.209 131.626,10.863 132.721,10.861 133.252 C 10.859 133.783,10.629 134.359,10.350 134.531 C 10.072 134.704,9.663 135.812,9.442 136.994 C 9.221 138.176,8.840 139.400,8.595 139.714 C 8.350 140.029,7.969 141.282,7.750 142.499 C 7.530 143.716,7.
133121 145.130,6.841 145.642 C 6.561 146.153,6.045 147.857,5.695 149.429 C 4.021 156.933,3.613 158.634,3.295 159.429 C 3.107 159.900,2.952 160.671,2.951 161.143 C 2.948 162.022,2.279 166.364,1.057 173.429 C 0.133 178.771,0.102 221.075,1.018 226.286 C 1.377 228.329,2.051 232.314,2.514 235.143 C 3.555 241.492,4.735 246.956,5.230 247.714 C 5.435 248.029,5.789 249.571,6.016 251.143 C 6.244 252.714,6.632 254.257,6.878 254.571 C 7.125 254.886,7.511 256.171,7.738 257.429 C 7.964 258.686,8.350 259.971,8.595 260.286 C 8.840 260.600,9.221 261.824,9.442 263.006 C 9.663 264.188,10.072 265.296,10.350 265.469 C 10.629 265.641,10.857 266.178,10.857 266.662 C 10.857 267.552,11.959 270.371,13.464 273.332 C 13.916 274.222,14.286 275.211,14.286 275.531 C 14.286 276.681,22.421 293.464,26.008 299.714 C 27.090 301.600,28.405 303.914,28.931 304.857 C 29.792 306.402,32.790 310.634,34.277 312.404 C 34.596 312.784,34.857 313.237,34.857 313.410 C 34.857 313.852,38.742 319.419,40.254 321.143 C 40.942 321.929,41.905 323.214,42.392 324.000 C 42.880 324.786,44.984 327.267,47.068 329.514 C 49.152 331.760,50.859 333.818,50.862 334.085 C 50.881 336.163,83.609 364.571,85.984 364.571 C 86.177 364.571,87.745 365.636,89.468 366.937 C 92.710 369.384,94.855 370.721,98.286 372.432 C 99.386 372.980,100.564 373.689,100.905 374.007 C 101.933 374.967,122.771 385.143,123.710 385.143 C 123.931 385.143,125.052 385.550,126.199 386.048 C 127.347 386.545,129.096 387.300,130.085 387.725 C 131.075 388.150,132.814 388.672,133.949 388.885 C 135.084 389.098,136.144 389.486,136.305 389.746 C 136.466 390.007,137.752 390.393,139.163 390.604 C 140.574 390.816,141.864 391.209,142.031 391.478 C 142.197 391.747,143.614 392.137,145.179 392.344 C 146.745 392.552,148.153 392.927,148.308 393.178 C 148.463 393.429,150.003 393.811,151.731 394.027 C 153.459 394.243,155.001 394.628,155.159 394.884 C 155.317 395.139,156.921 395.512,158.723 395.712 C 160.525 395.912,162.514 396.309,163.143 396.593 C 164.184 397.065,169.533 397.804,178.571 398.726 C 183.291 399.207,215.497 399.217,219.714 398.738 C 229.327 397.647,242.116 395.583,243.714 394.864 C 244.343 394.582,246.014 394.178,247.429 393.968 C 248.843 393.757,250.257 393.386,250.571 393.143 C 250.886 392.900,252.300 392.514,253.714 392.286 C 255.129 392.058,256.543 391.676,256.857 391.438 C 257.171 391.201,258.382 390.834,259.547 390.625 C 260.713 390.415,262.384 389.868,263.262 389.411 C 264.139 388.953,265.286 388.577,265.811 388.575 C 266.335 388.573,267.493 388.201,268.382 387.749 C 271.117 386.359,274.138 385.143,274.855 385.143 C 275.231 385.143,276.220 384.782,277.055 384.341 C 277.889 383.899,282.814 381.445,288.000 378.887 C 298.890 373.516,302.988 371.292,305.533 369.372 C 306.534 368.617,307.518 368.000,307.720 368.000 C 307.922 368.000,309.591 366.843,311.429 365.429 C 313.267 364.014,315.016 362.857,315.315 362.857 C 315.615 362.857,316.209 362.436,316.636 361.922 C 317.063 361.408,318.336 360.404,319.465 359.691 C 321.516 358.397,324.621 355.921,329.985 351.303 C 333.291 348.457,347.359 334.445,350.286 331.083 C 354.859 325.830,359.429 320.085,359.429 319.588 C 359.429 319.296,360.071 318.452,360.857 317.714 C 361.643 316.976,362.286 316.140,362.286 315.857 C 362.286 315.574,363.443 313.838,364.857 312.000 C 366.271 310.162,367.429 308.493,367.429 308.291 C 367.429 308.089,368.037 307.105,368.781 306.105 C 370.722 303.493,373.013 299.280,378.317 288.571 C 380.886 283.386,383.344 278.460,383.779 277.626 C 384.215 276.792,384.571 275.814,384.571 275.452 C 384.571 274.792,386.416 270.294,387.449 268.436 C 387.752 267.891,388.000 267.029,388.000 266.523 C 388.000 266.016,388.377 264.791,388.837 263.801 C 389.297 262.810,389.925 260.971,390.231 259.714 C 391.668 253.819,392.111 252.222,392.540 251.407 C 392.794 250.923,393.176 249.380,393.390 247.978 C 393.604 246.576,394.010 244.914,394.293 244.286 C 395.089 242.516,396.935 230.760,398.286 218.857 C 398.926 213.226,398.802 185.273,398.110 179.143 C 397.897 177.257,397.450 173.271,397.116 170.286 C 396.781 167.300,396.280 164.343,396.000 163.714 C 395.721 163.086,395.321 161.157,395.111 159.429 C 394.901 157.700,394.533 156.029,394.294 155.714 C 394.054 155.400,393.673 153.857,393.447 152.286 C 393.221 150.714,392.835 149.171,392.590 148.857 C 392.345 148.543,391.968 147.070,391.753 145.585 C 391.538 144.099,391.154 142.755,390.899 142.597 C 390.644 142.440,390.269 141.266,390.064 139.988 C 389.860 138.710,389.461 137.226,389.178 136.689 C 388.895 136.153,388.106 134.043,387.426 132.000 C 386.745 129.957,385.824 127.603,385.380 126.769 C 384.935 125.935,384.571 124.954,384.571 124.590 C 384.571 123.463,374.557 102.677,373.436 101.476 C 373.117 101.136,372.408 99.957,371.860 98.857 C 370.150 95.427,368.813 93.281,366.365 90.039 C 365.064 88.316,364.000 86.748,364.000 86.555 C 364.000 84.180,335.592 51.452,333.514 51.433 C 333.246 51.431,331.189 49.723,328.942 47.638 C 326.695 45.553,323.953 43.274,322.849 42.573 C 321.744 41.872,320.491 40.878,320.065 40.363 C 319.638 39.849,318.934 39.429,318.501 39.429 C 3
13318.069 39.429,317.714 39.197,317.714 38.914 C 317.714 38.470,314.521 36.210,312.883 35.494 C 312.583 35.363,312.069 35.033,311.740 34.762 C 309.908 33.249,305.770 30.330,304.286 29.502 C 303.343 28.977,301.029 27.655,299.143 26.564 C 292.675 22.823,274.404 14.053,271.625 13.355 C 270.773 13.141,269.416 12.622,268.610 12.201 C 267.803 11.780,266.708 11.434,266.177 11.432 C 265.645 11.430,265.069 11.201,264.897 10.922 C 264.725 10.643,263.650 10.240,262.507 10.026 C 261.365 9.811,260.012 9.414,259.501 9.143 C 258.557 8.642,255.509 7.811,250.857 6.786 C 249.443 6.474,247.771 6.000,247.143 5.731 C 246.514 5.463,244.457 4.948,242.571 4.587 C 240.686 4.226,238.629 3.802,238.000 3.645 C 237.371 3.488,235.314 3.116,233.429 2.817 C 231.543 2.519,228.586 2.039,226.857 1.751 C 225.129 1.462,222.122 1.208,220.177 1.185 C 218.231 1.162,216.480 0.886,216.286 0.571 C 215.805 -0.207,183.053 -0.207,182.571 0.571 M271.143 69.603 C 303.389 77.537,325.580 101.567,330.610 134.000 C 331.799 141.661,331.780 257.682,330.590 266.000 C 325.830 299.245,300.483 325.157,267.147 330.857 C 258.479 332.338,142.839 332.631,133.429 331.195 C 99.554 326.026,74.090 301.010,68.298 267.211 C 66.955 259.375,67.001 140.415,68.350 132.529 C 73.983 99.594,98.997 74.467,131.714 68.881 C 140.638 67.357,264.624 67.999,271.143 69.603 M133.200 89.456 C 109.659 94.562,92.341 112.443,88.599 135.507 C 87.387 142.974,87.844 261.185,89.107 266.894 C 93.782 288.031,109.322 304.214,130.366 309.861 L 135.143 311.143 199.429 311.143 L 263.714 311.143 268.571 309.813 C 288.661 304.311,303.845 289.133,309.257 269.143 L 310.571 264.286 310.571 200.000 L 310.571 135.714 309.290 130.937 C 303.427 109.088,285.638 92.687,264.000 89.182 C 257.898 88.193,137.861 88.444,133.200 89.456 M280.889 109.528 C 290.736 112.883,293.963 126.225,286.806 133.990 C 277.217 144.392,260.424 137.858,260.397 123.714 C 260.376 112.948,270.453 105.972,280.889 109.528 M211.143 129.796 C 255.101 136.545,282.201 185.105,265.237 226.727 C 246.429 272.873,186.768 285.795,150.754 251.523 C 99.957 203.184,141.658 119.127,211.143 129.796 M192.353 149.756 C 162.012 153.928,142.157 184.885,150.885 214.411 C 162.832 254.824,217.522 263.355,241.193 228.498 C 265.648 192.486,235.467 143.828,192.353 149.756 "></path></svg></a><!--]--></div><p class="copyright-text" data-v-ff89edaa>All Rights Reserved © 2026 Obumuneme Nwabude</p></div></footer><!--teleport start--><!--teleport end--><!--]--></div> 134 135 </body> 136</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.